unicode-screensaver-0.5.1/0000755000175000017500000000000013306044133012457 500000000000000unicode-screensaver-0.5.1/Makefile.in0000644000175000017500000012511013306043307014446 00000000000000# Makefile.in generated by automake 1.15.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2017 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ am__is_gnu_make = { \ if test -z '$(MAKELEVEL)'; then \ false; \ elif test -n '$(MAKE_HOST)'; then \ true; \ elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ true; \ else \ false; \ fi; \ } am__make_running_with_option = \ case $${target_option-} in \ ?) ;; \ *) echo "am__make_running_with_option: internal error: invalid" \ "target option '$${target_option-}' specified" >&2; \ exit 1;; \ esac; \ has_opt=no; \ sane_makeflags=$$MAKEFLAGS; \ if $(am__is_gnu_make); then \ sane_makeflags=$$MFLAGS; \ else \ case $$MAKEFLAGS in \ *\\[\ \ ]*) \ bs=\\; \ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ esac; \ fi; \ skip_next=no; \ strip_trailopt () \ { \ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ }; \ for flg in $$sane_makeflags; do \ test $$skip_next = yes && { skip_next=no; continue; }; \ case $$flg in \ *=*|--*) continue;; \ -*I) strip_trailopt 'I'; skip_next=yes;; \ -*I?*) strip_trailopt 'I';; \ -*O) strip_trailopt 'O'; skip_next=yes;; \ -*O?*) strip_trailopt 'O';; \ -*l) strip_trailopt 'l'; skip_next=yes;; \ -*l?*) strip_trailopt 'l';; \ -[dEDm]) skip_next=yes;; \ -[JT]) skip_next=yes;; \ esac; \ case $$flg in \ *$$target_option*) has_opt=yes; break;; \ esac; \ done; \ test $$has_opt = yes am__make_dryrun = (target_option=n; $(am__make_running_with_option)) am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ hackexec_PROGRAMS = unicode$(EXEEXT) subdir = . ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \ $(am__configure_deps) $(dist_hackconf_DATA) $(am__DIST_COMMON) am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ configure.lineno config.status.lineno mkinstalldirs = $(install_sh) -d CONFIG_HEADER = config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = am__installdirs = "$(DESTDIR)$(hackexecdir)" "$(DESTDIR)$(man6dir)" \ "$(DESTDIR)$(hackconfdir)" "$(DESTDIR)$(desktopdir)" PROGRAMS = $(hackexec_PROGRAMS) am_unicode_OBJECTS = unicode.$(OBJEXT) screenhack.$(OBJEXT) \ visual.$(OBJEXT) yarandom.$(OBJEXT) resources.$(OBJEXT) \ usleep.$(OBJEXT) fps.$(OBJEXT) unicode_OBJECTS = $(am_unicode_OBJECTS) unicode_DEPENDENCIES = AM_V_lt = $(am__v_lt_@AM_V@) am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) am__v_lt_0 = --silent am__v_lt_1 = AM_V_P = $(am__v_P_@AM_V@) am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) am__v_P_0 = false am__v_P_1 = : AM_V_GEN = $(am__v_GEN_@AM_V@) am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) am__v_GEN_0 = @echo " GEN " $@; am__v_GEN_1 = AM_V_at = $(am__v_at_@AM_V@) am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) am__v_at_0 = @ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \ $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ $(AM_CFLAGS) $(CFLAGS) AM_V_CC = $(am__v_CC_@AM_V@) am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) am__v_CC_0 = @echo " CC " $@; am__v_CC_1 = CCLD = $(CC) LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ $(AM_LDFLAGS) $(LDFLAGS) -o $@ AM_V_CCLD = $(am__v_CCLD_@AM_V@) am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) am__v_CCLD_0 = @echo " CCLD " $@; am__v_CCLD_1 = SOURCES = $(unicode_SOURCES) DIST_SOURCES = $(unicode_SOURCES) am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ *) (install-info --version) >/dev/null 2>&1;; \ esac am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; am__install_max = 40 am__nobase_strip_setup = \ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` am__nobase_strip = \ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" am__nobase_list = $(am__nobase_strip_setup); \ for p in $$list; do echo "$$p $$p"; done | \ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ if (++n[$$2] == $(am__install_max)) \ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ END { for (dir in files) print dir, files[dir] }' am__base_list = \ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' am__uninstall_files_from_dir = { \ test -z "$$files" \ || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ $(am__cd) "$$dir" && rm -f $$files; }; \ } man6dir = $(mandir)/man6 NROFF = nroff MANS = $(man_MANS) DATA = $(dist_hackconf_DATA) $(nodist_desktop_DATA) am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \ $(LISP)config.h.in # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is # *not* preserved. am__uniquify_input = $(AWK) '\ BEGIN { nonempty = 0; } \ { items[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in items) print i; }; } \ ' # Make sure the list of sources is unique. This is necessary because, # e.g., the same source file might be shared among _SOURCES variables # for different programs/libraries. am__define_uniq_tagged_files = \ list='$(am__tagged_files)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | $(am__uniquify_input)` ETAGS = etags CTAGS = ctags CSCOPE = cscope AM_RECURSIVE_TARGETS = cscope am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.h.in README \ compile config.guess config.sub depcomp install-sh ltmain.sh \ missing DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) distdir = $(PACKAGE)-$(VERSION) top_distdir = $(distdir) am__remove_distdir = \ if test -d "$(distdir)"; then \ find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \ && rm -rf "$(distdir)" \ || { sleep 5 && rm -rf "$(distdir)"; }; \ else :; fi am__post_remove_distdir = $(am__remove_distdir) DIST_ARCHIVES = $(distdir).tar.gz GZIP_ENV = --best DIST_TARGETS = dist-gzip distuninstallcheck_listfiles = find . -type f -print am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \ | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$' distcleancheck_listfiles = find . -type f -print ACLOCAL = @ACLOCAL@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DESKTOPDIR = @DESKTOPDIR@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FC_CFLAGS = @FC_CFLAGS@ FC_LIBS = @FC_LIBS@ FGREP = @FGREP@ GREP = @GREP@ HACKDIR = @HACKDIR@ HACK_CONF_DIR = @HACK_CONF_DIR@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ MKDIR_P = @MKDIR_P@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ VERSION = @VERSION@ X11_CFLAGS = @X11_CFLAGS@ X11_LIBS = @X11_LIBS@ XFT_CFLAGS = @XFT_CFLAGS@ XFT_LIBS = @XFT_LIBS@ XMU_CFLAGS = @XMU_CFLAGS@ XMU_LIBS = @XMU_LIBS@ XT_CFLAGS = @XT_CFLAGS@ XT_LIBS = @XT_LIBS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_AR = @ac_ct_AR@ ac_ct_CC = @ac_ct_CC@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ AUTOMAKE_OPTIONS = foreign # ACLOCAL_AMFLAGS = -I m4 AM_CPPFLAGS = -I$(srcdir)/hacks -I$(srcdir)/utils @XFT_CFLAGS@ @X11_CFLAGS@ @FC_CFLAGS@ @XMU_CFLAGS@ @XT_CFLAGS@ hackexecdir = @HACKDIR@ desktopdir = @DESKTOPDIR@ hackconfdir = @HACK_CONF_DIR@ unicode_SOURCES = \ unicode.c \ unicode-names.h \ version.h \ hacks/screenhack.c \ utils/visual.c \ utils/yarandom.c \ utils/resources.c \ utils/usleep.c \ hacks/fps.c \ hacks/fps.h \ hacks/fpsI.h \ hacks/screenhack.h \ hacks/screenhackI.h \ utils/colors.h \ utils/grabscreen.h \ utils/hsv.h \ utils/resources.h \ utils/usleep.h \ utils/utils.h \ utils/visual.h \ utils/vroot.h \ utils/xmu.h \ utils/yarandom.h unicode_LDADD = @XFT_LIBS@ @X11_LIBS@ @FC_LIBS@ @XMU_LIBS@ @XT_LIBS@ nodist_desktop_DATA = unicode.desktop man_MANS = unicode.6x dist_hackconf_DATA = unicode.xml EXTRA_DIST = unicode.desktop.in unicode.6x.in CLEANFILES = unicode.desktop unicode.6x all: config.h $(MAKE) $(AM_MAKEFLAGS) all-am .SUFFIXES: .SUFFIXES: .c .lo .o .obj am--refresh: Makefile @: $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ echo ' cd $(srcdir) && $(AUTOMAKE) --foreign'; \ $(am__cd) $(srcdir) && $(AUTOMAKE) --foreign \ && exit 0; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ echo ' $(SHELL) ./config.status'; \ $(SHELL) ./config.status;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) $(SHELL) ./config.status --recheck $(top_srcdir)/configure: $(am__configure_deps) $(am__cd) $(srcdir) && $(AUTOCONF) $(ACLOCAL_M4): $(am__aclocal_m4_deps) $(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) $(am__aclocal_m4_deps): config.h: stamp-h1 @test -f $@ || rm -f stamp-h1 @test -f $@ || $(MAKE) $(AM_MAKEFLAGS) stamp-h1 stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status @rm -f stamp-h1 cd $(top_builddir) && $(SHELL) ./config.status config.h $(srcdir)/config.h.in: $(am__configure_deps) ($(am__cd) $(top_srcdir) && $(AUTOHEADER)) rm -f stamp-h1 touch $@ distclean-hdr: -rm -f config.h stamp-h1 install-hackexecPROGRAMS: $(hackexec_PROGRAMS) @$(NORMAL_INSTALL) @list='$(hackexec_PROGRAMS)'; test -n "$(hackexecdir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(hackexecdir)'"; \ $(MKDIR_P) "$(DESTDIR)$(hackexecdir)" || exit 1; \ fi; \ for p in $$list; do echo "$$p $$p"; done | \ sed 's/$(EXEEXT)$$//' | \ while read p p1; do if test -f $$p \ || test -f $$p1 \ ; then echo "$$p"; echo "$$p"; else :; fi; \ done | \ sed -e 'p;s,.*/,,;n;h' \ -e 's|.*|.|' \ -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ sed 'N;N;N;s,\n, ,g' | \ $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ if ($$2 == $$4) files[d] = files[d] " " $$1; \ else { print "f", $$3 "/" $$4, $$1; } } \ END { for (d in files) print "f", d, files[d] }' | \ while read type dir files; do \ if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ test -z "$$files" || { \ echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(hackexecdir)$$dir'"; \ $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(hackexecdir)$$dir" || exit $$?; \ } \ ; done uninstall-hackexecPROGRAMS: @$(NORMAL_UNINSTALL) @list='$(hackexec_PROGRAMS)'; test -n "$(hackexecdir)" || list=; \ files=`for p in $$list; do echo "$$p"; done | \ sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ -e 's/$$/$(EXEEXT)/' \ `; \ test -n "$$list" || exit 0; \ echo " ( cd '$(DESTDIR)$(hackexecdir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(hackexecdir)" && rm -f $$files clean-hackexecPROGRAMS: @list='$(hackexec_PROGRAMS)'; test -n "$$list" || exit 0; \ echo " rm -f" $$list; \ rm -f $$list || exit $$?; \ test -n "$(EXEEXT)" || exit 0; \ list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ echo " rm -f" $$list; \ rm -f $$list unicode$(EXEEXT): $(unicode_OBJECTS) $(unicode_DEPENDENCIES) $(EXTRA_unicode_DEPENDENCIES) @rm -f unicode$(EXEEXT) $(AM_V_CCLD)$(LINK) $(unicode_OBJECTS) $(unicode_LDADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fps.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/resources.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/screenhack.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unicode.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/usleep.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/visual.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/yarandom.Po@am__quote@ .c.o: @am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $< .c.obj: @am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'` .c.lo: @am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $< screenhack.o: hacks/screenhack.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT screenhack.o -MD -MP -MF $(DEPDIR)/screenhack.Tpo -c -o screenhack.o `test -f 'hacks/screenhack.c' || echo '$(srcdir)/'`hacks/screenhack.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/screenhack.Tpo $(DEPDIR)/screenhack.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='hacks/screenhack.c' object='screenhack.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o screenhack.o `test -f 'hacks/screenhack.c' || echo '$(srcdir)/'`hacks/screenhack.c screenhack.obj: hacks/screenhack.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT screenhack.obj -MD -MP -MF $(DEPDIR)/screenhack.Tpo -c -o screenhack.obj `if test -f 'hacks/screenhack.c'; then $(CYGPATH_W) 'hacks/screenhack.c'; else $(CYGPATH_W) '$(srcdir)/hacks/screenhack.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/screenhack.Tpo $(DEPDIR)/screenhack.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='hacks/screenhack.c' object='screenhack.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o screenhack.obj `if test -f 'hacks/screenhack.c'; then $(CYGPATH_W) 'hacks/screenhack.c'; else $(CYGPATH_W) '$(srcdir)/hacks/screenhack.c'; fi` visual.o: utils/visual.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT visual.o -MD -MP -MF $(DEPDIR)/visual.Tpo -c -o visual.o `test -f 'utils/visual.c' || echo '$(srcdir)/'`utils/visual.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/visual.Tpo $(DEPDIR)/visual.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='utils/visual.c' object='visual.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o visual.o `test -f 'utils/visual.c' || echo '$(srcdir)/'`utils/visual.c visual.obj: utils/visual.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT visual.obj -MD -MP -MF $(DEPDIR)/visual.Tpo -c -o visual.obj `if test -f 'utils/visual.c'; then $(CYGPATH_W) 'utils/visual.c'; else $(CYGPATH_W) '$(srcdir)/utils/visual.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/visual.Tpo $(DEPDIR)/visual.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='utils/visual.c' object='visual.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o visual.obj `if test -f 'utils/visual.c'; then $(CYGPATH_W) 'utils/visual.c'; else $(CYGPATH_W) '$(srcdir)/utils/visual.c'; fi` yarandom.o: utils/yarandom.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT yarandom.o -MD -MP -MF $(DEPDIR)/yarandom.Tpo -c -o yarandom.o `test -f 'utils/yarandom.c' || echo '$(srcdir)/'`utils/yarandom.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/yarandom.Tpo $(DEPDIR)/yarandom.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='utils/yarandom.c' object='yarandom.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o yarandom.o `test -f 'utils/yarandom.c' || echo '$(srcdir)/'`utils/yarandom.c yarandom.obj: utils/yarandom.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT yarandom.obj -MD -MP -MF $(DEPDIR)/yarandom.Tpo -c -o yarandom.obj `if test -f 'utils/yarandom.c'; then $(CYGPATH_W) 'utils/yarandom.c'; else $(CYGPATH_W) '$(srcdir)/utils/yarandom.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/yarandom.Tpo $(DEPDIR)/yarandom.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='utils/yarandom.c' object='yarandom.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o yarandom.obj `if test -f 'utils/yarandom.c'; then $(CYGPATH_W) 'utils/yarandom.c'; else $(CYGPATH_W) '$(srcdir)/utils/yarandom.c'; fi` resources.o: utils/resources.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT resources.o -MD -MP -MF $(DEPDIR)/resources.Tpo -c -o resources.o `test -f 'utils/resources.c' || echo '$(srcdir)/'`utils/resources.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/resources.Tpo $(DEPDIR)/resources.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='utils/resources.c' object='resources.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o resources.o `test -f 'utils/resources.c' || echo '$(srcdir)/'`utils/resources.c resources.obj: utils/resources.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT resources.obj -MD -MP -MF $(DEPDIR)/resources.Tpo -c -o resources.obj `if test -f 'utils/resources.c'; then $(CYGPATH_W) 'utils/resources.c'; else $(CYGPATH_W) '$(srcdir)/utils/resources.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/resources.Tpo $(DEPDIR)/resources.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='utils/resources.c' object='resources.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o resources.obj `if test -f 'utils/resources.c'; then $(CYGPATH_W) 'utils/resources.c'; else $(CYGPATH_W) '$(srcdir)/utils/resources.c'; fi` usleep.o: utils/usleep.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT usleep.o -MD -MP -MF $(DEPDIR)/usleep.Tpo -c -o usleep.o `test -f 'utils/usleep.c' || echo '$(srcdir)/'`utils/usleep.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/usleep.Tpo $(DEPDIR)/usleep.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='utils/usleep.c' object='usleep.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o usleep.o `test -f 'utils/usleep.c' || echo '$(srcdir)/'`utils/usleep.c usleep.obj: utils/usleep.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT usleep.obj -MD -MP -MF $(DEPDIR)/usleep.Tpo -c -o usleep.obj `if test -f 'utils/usleep.c'; then $(CYGPATH_W) 'utils/usleep.c'; else $(CYGPATH_W) '$(srcdir)/utils/usleep.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/usleep.Tpo $(DEPDIR)/usleep.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='utils/usleep.c' object='usleep.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o usleep.obj `if test -f 'utils/usleep.c'; then $(CYGPATH_W) 'utils/usleep.c'; else $(CYGPATH_W) '$(srcdir)/utils/usleep.c'; fi` fps.o: hacks/fps.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fps.o -MD -MP -MF $(DEPDIR)/fps.Tpo -c -o fps.o `test -f 'hacks/fps.c' || echo '$(srcdir)/'`hacks/fps.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/fps.Tpo $(DEPDIR)/fps.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='hacks/fps.c' object='fps.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o fps.o `test -f 'hacks/fps.c' || echo '$(srcdir)/'`hacks/fps.c fps.obj: hacks/fps.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fps.obj -MD -MP -MF $(DEPDIR)/fps.Tpo -c -o fps.obj `if test -f 'hacks/fps.c'; then $(CYGPATH_W) 'hacks/fps.c'; else $(CYGPATH_W) '$(srcdir)/hacks/fps.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/fps.Tpo $(DEPDIR)/fps.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='hacks/fps.c' object='fps.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o fps.obj `if test -f 'hacks/fps.c'; then $(CYGPATH_W) 'hacks/fps.c'; else $(CYGPATH_W) '$(srcdir)/hacks/fps.c'; fi` mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs distclean-libtool: -rm -f libtool config.lt install-man6: $(man_MANS) @$(NORMAL_INSTALL) @list1=''; \ list2='$(man_MANS)'; \ test -n "$(man6dir)" \ && test -n "`echo $$list1$$list2`" \ || exit 0; \ echo " $(MKDIR_P) '$(DESTDIR)$(man6dir)'"; \ $(MKDIR_P) "$(DESTDIR)$(man6dir)" || exit 1; \ { for i in $$list1; do echo "$$i"; done; \ if test -n "$$list2"; then \ for i in $$list2; do echo "$$i"; done \ | sed -n '/\.6[a-z]*$$/p'; \ fi; \ } | while read p; do \ if test -f $$p; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; echo "$$p"; \ done | \ sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^6][0-9a-z]*$$,6,;x' \ -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \ sed 'N;N;s,\n, ,g' | { \ list=; while read file base inst; do \ if test "$$base" = "$$inst"; then list="$$list $$file"; else \ echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man6dir)/$$inst'"; \ $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man6dir)/$$inst" || exit $$?; \ fi; \ done; \ for i in $$list; do echo "$$i"; done | $(am__base_list) | \ while read files; do \ test -z "$$files" || { \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man6dir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(man6dir)" || exit $$?; }; \ done; } uninstall-man6: @$(NORMAL_UNINSTALL) @list=''; test -n "$(man6dir)" || exit 0; \ files=`{ for i in $$list; do echo "$$i"; done; \ l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \ sed -n '/\.6[a-z]*$$/p'; \ } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^6][0-9a-z]*$$,6,;x' \ -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \ dir='$(DESTDIR)$(man6dir)'; $(am__uninstall_files_from_dir) install-dist_hackconfDATA: $(dist_hackconf_DATA) @$(NORMAL_INSTALL) @list='$(dist_hackconf_DATA)'; test -n "$(hackconfdir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(hackconfdir)'"; \ $(MKDIR_P) "$(DESTDIR)$(hackconfdir)" || exit 1; \ fi; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; \ done | $(am__base_list) | \ while read files; do \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(hackconfdir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(hackconfdir)" || exit $$?; \ done uninstall-dist_hackconfDATA: @$(NORMAL_UNINSTALL) @list='$(dist_hackconf_DATA)'; test -n "$(hackconfdir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ dir='$(DESTDIR)$(hackconfdir)'; $(am__uninstall_files_from_dir) install-nodist_desktopDATA: $(nodist_desktop_DATA) @$(NORMAL_INSTALL) @list='$(nodist_desktop_DATA)'; test -n "$(desktopdir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(desktopdir)'"; \ $(MKDIR_P) "$(DESTDIR)$(desktopdir)" || exit 1; \ fi; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; \ done | $(am__base_list) | \ while read files; do \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(desktopdir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(desktopdir)" || exit $$?; \ done uninstall-nodist_desktopDATA: @$(NORMAL_UNINSTALL) @list='$(nodist_desktop_DATA)'; test -n "$(desktopdir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ dir='$(DESTDIR)$(desktopdir)'; $(am__uninstall_files_from_dir) ID: $(am__tagged_files) $(am__define_uniq_tagged_files); mkid -fID $$unique tags: tags-am TAGS: tags tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) set x; \ here=`pwd`; \ $(am__define_uniq_tagged_files); \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ if test $$# -gt 0; then \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ "$$@" $$unique; \ else \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$unique; \ fi; \ fi ctags: ctags-am CTAGS: ctags ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) $(am__define_uniq_tagged_files); \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && $(am__cd) $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) "$$here" cscope: cscope.files test ! -s cscope.files \ || $(CSCOPE) -b -q $(AM_CSCOPEFLAGS) $(CSCOPEFLAGS) -i cscope.files $(CSCOPE_ARGS) clean-cscope: -rm -f cscope.files cscope.files: clean-cscope cscopelist cscopelist: cscopelist-am cscopelist-am: $(am__tagged_files) list='$(am__tagged_files)'; \ case "$(srcdir)" in \ [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ *) sdir=$(subdir)/$(srcdir) ;; \ esac; \ for i in $$list; do \ if test -f "$$i"; then \ echo "$(subdir)/$$i"; \ else \ echo "$$sdir/$$i"; \ fi; \ done >> $(top_builddir)/cscope.files distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -rm -f cscope.out cscope.in.out cscope.po.out cscope.files distdir: $(DISTFILES) $(am__remove_distdir) test -d "$(distdir)" || mkdir "$(distdir)" @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done -test -n "$(am__skip_mode_fix)" \ || find "$(distdir)" -type d ! -perm -755 \ -exec chmod u+rwx,go+rx {} \; -o \ ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \ ! -type d ! -perm -400 -exec chmod a+r {} \; -o \ ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \ || chmod -R a+r "$(distdir)" dist-gzip: distdir tardir=$(distdir) && $(am__tar) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).tar.gz $(am__post_remove_distdir) dist-bzip2: distdir tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2 $(am__post_remove_distdir) dist-lzip: distdir tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz $(am__post_remove_distdir) dist-xz: distdir tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz $(am__post_remove_distdir) dist-tarZ: distdir @echo WARNING: "Support for distribution archives compressed with" \ "legacy program 'compress' is deprecated." >&2 @echo WARNING: "It will be removed altogether in Automake 2.0" >&2 tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z $(am__post_remove_distdir) dist-shar: distdir @echo WARNING: "Support for shar distribution archives is" \ "deprecated." >&2 @echo WARNING: "It will be removed altogether in Automake 2.0" >&2 shar $(distdir) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).shar.gz $(am__post_remove_distdir) dist-zip: distdir -rm -f $(distdir).zip zip -rq $(distdir).zip $(distdir) $(am__post_remove_distdir) dist dist-all: $(MAKE) $(AM_MAKEFLAGS) $(DIST_TARGETS) am__post_remove_distdir='@:' $(am__post_remove_distdir) # This target untars the dist file and tries a VPATH configuration. Then # it guarantees that the distribution is self-contained by making another # tarfile. distcheck: dist case '$(DIST_ARCHIVES)' in \ *.tar.gz*) \ eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).tar.gz | $(am__untar) ;;\ *.tar.bz2*) \ bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\ *.tar.lz*) \ lzip -dc $(distdir).tar.lz | $(am__untar) ;;\ *.tar.xz*) \ xz -dc $(distdir).tar.xz | $(am__untar) ;;\ *.tar.Z*) \ uncompress -c $(distdir).tar.Z | $(am__untar) ;;\ *.shar.gz*) \ eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\ *.zip*) \ unzip $(distdir).zip ;;\ esac chmod -R a-w $(distdir) chmod u+w $(distdir) mkdir $(distdir)/_build $(distdir)/_build/sub $(distdir)/_inst chmod a-w $(distdir) test -d $(distdir)/_build || exit 0; \ dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \ && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \ && am__cwd=`pwd` \ && $(am__cd) $(distdir)/_build/sub \ && ../../configure \ $(AM_DISTCHECK_CONFIGURE_FLAGS) \ $(DISTCHECK_CONFIGURE_FLAGS) \ --srcdir=../.. --prefix="$$dc_install_base" \ && $(MAKE) $(AM_MAKEFLAGS) \ && $(MAKE) $(AM_MAKEFLAGS) dvi \ && $(MAKE) $(AM_MAKEFLAGS) check \ && $(MAKE) $(AM_MAKEFLAGS) install \ && $(MAKE) $(AM_MAKEFLAGS) installcheck \ && $(MAKE) $(AM_MAKEFLAGS) uninstall \ && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \ distuninstallcheck \ && chmod -R a-w "$$dc_install_base" \ && ({ \ (cd ../.. && umask 077 && mkdir "$$dc_destdir") \ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \ distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \ } || { rm -rf "$$dc_destdir"; exit 1; }) \ && rm -rf "$$dc_destdir" \ && $(MAKE) $(AM_MAKEFLAGS) dist \ && rm -rf $(DIST_ARCHIVES) \ && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \ && cd "$$am__cwd" \ || exit 1 $(am__post_remove_distdir) @(echo "$(distdir) archives ready for distribution: "; \ list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \ sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x' distuninstallcheck: @test -n '$(distuninstallcheck_dir)' || { \ echo 'ERROR: trying to run $@ with an empty' \ '$$(distuninstallcheck_dir)' >&2; \ exit 1; \ }; \ $(am__cd) '$(distuninstallcheck_dir)' || { \ echo 'ERROR: cannot chdir into $(distuninstallcheck_dir)' >&2; \ exit 1; \ }; \ test `$(am__distuninstallcheck_listfiles) | wc -l` -eq 0 \ || { echo "ERROR: files left after uninstall:" ; \ if test -n "$(DESTDIR)"; then \ echo " (check DESTDIR support)"; \ fi ; \ $(distuninstallcheck_listfiles) ; \ exit 1; } >&2 distcleancheck: distclean @if test '$(srcdir)' = . ; then \ echo "ERROR: distcleancheck can only run from a VPATH build" ; \ exit 1 ; \ fi @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \ || { echo "ERROR: files left in build directory after distclean:" ; \ $(distcleancheck_listfiles) ; \ exit 1; } >&2 check-am: all-am check: check-am all-am: Makefile $(PROGRAMS) $(MANS) $(DATA) config.h installdirs: for dir in "$(DESTDIR)$(hackexecdir)" "$(DESTDIR)$(man6dir)" "$(DESTDIR)$(hackconfdir)" "$(DESTDIR)$(desktopdir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: if test -z '$(STRIP)'; then \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ install; \ else \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ fi mostlyclean-generic: clean-generic: -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-generic clean-hackexecPROGRAMS clean-libtool \ mostlyclean-am distclean: distclean-am -rm -f $(am__CONFIG_DISTCLEAN_FILES) -rm -rf ./$(DEPDIR) -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-hdr distclean-libtool distclean-tags dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-dist_hackconfDATA install-man \ install-nodist_desktopDATA install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-hackexecPROGRAMS install-html: install-html-am install-html-am: install-info: install-info-am install-info-am: install-man: install-man6 install-pdf: install-pdf-am install-pdf-am: install-ps: install-ps-am install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am -rm -f $(am__CONFIG_DISTCLEAN_FILES) -rm -rf $(top_srcdir)/autom4te.cache -rm -rf ./$(DEPDIR) -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-compile mostlyclean-generic \ mostlyclean-libtool pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-dist_hackconfDATA uninstall-hackexecPROGRAMS \ uninstall-man uninstall-nodist_desktopDATA uninstall-man: uninstall-man6 .MAKE: all install-am install-strip .PHONY: CTAGS GTAGS TAGS all all-am am--refresh check check-am clean \ clean-cscope clean-generic clean-hackexecPROGRAMS \ clean-libtool cscope cscopelist-am ctags ctags-am dist \ dist-all dist-bzip2 dist-gzip dist-lzip dist-shar dist-tarZ \ dist-xz dist-zip distcheck distclean distclean-compile \ distclean-generic distclean-hdr distclean-libtool \ distclean-tags distcleancheck distdir distuninstallcheck dvi \ dvi-am html html-am info info-am install install-am \ install-data install-data-am install-dist_hackconfDATA \ install-dvi install-dvi-am install-exec install-exec-am \ install-hackexecPROGRAMS install-html install-html-am \ install-info install-info-am install-man install-man6 \ install-nodist_desktopDATA install-pdf install-pdf-am \ install-ps install-ps-am install-strip installcheck \ installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-compile \ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ tags tags-am uninstall uninstall-am \ uninstall-dist_hackconfDATA uninstall-hackexecPROGRAMS \ uninstall-man uninstall-man6 uninstall-nodist_desktopDATA .PRECIOUS: Makefile unicode.desktop: unicode.desktop.in sed -e 's,[@]hackexecdir[@],$(hackexecdir),g' < $(srcdir)/unicode.desktop.in > unicode.desktop unicode.6x: unicode.6x.in sed -e 's,[@]version[@],@PACKAGE_VERSION@,g' < $(srcdir)/unicode.6x.in > unicode.6x # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: unicode-screensaver-0.5.1/config.sub0000755000175000017500000010645013306043307014372 00000000000000#! /bin/sh # Configuration validation subroutine script. # Copyright 1992-2018 Free Software Foundation, Inc. timestamp='2018-02-22' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, see . # # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that # program. This Exception is an additional permission under section 7 # of the GNU General Public License, version 3 ("GPLv3"). # Please send patches to . # # Configuration subroutine to validate and canonicalize a configuration type. # Supply the specified configuration type as an argument. # If it is invalid, we print an error message on stderr and exit with code 1. # Otherwise, we print the canonical config type on stdout and succeed. # You can get the latest version of this script from: # https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub # This file is supposed to be the same for all GNU packages # and recognize all the CPU types, system types and aliases # that are meaningful with *any* GNU software. # Each package is responsible for reporting which valid configurations # it does not support. The user should be able to distinguish # a failure to support a valid configuration from a meaningless # configuration. # The goal of this file is to map all the various variations of a given # machine specification into a single specification in the form: # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM # or in some cases, the newer four-part form: # CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM # It is wrong to echo any other type of specification. me=`echo "$0" | sed -e 's,.*/,,'` usage="\ Usage: $0 [OPTION] CPU-MFR-OPSYS or ALIAS Canonicalize a configuration name. Options: -h, --help print this help, then exit -t, --time-stamp print date of last modification, then exit -v, --version print version number, then exit Report bugs and patches to ." version="\ GNU config.sub ($timestamp) Copyright 1992-2018 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." help=" Try \`$me --help' for more information." # Parse command line while test $# -gt 0 ; do case $1 in --time-stamp | --time* | -t ) echo "$timestamp" ; exit ;; --version | -v ) echo "$version" ; exit ;; --help | --h* | -h ) echo "$usage"; exit ;; -- ) # Stop option processing shift; break ;; - ) # Use stdin as input. break ;; -* ) echo "$me: invalid option $1$help" exit 1 ;; *local*) # First pass through any local machine types. echo "$1" exit ;; * ) break ;; esac done case $# in 0) echo "$me: missing argument$help" >&2 exit 1;; 1) ;; *) echo "$me: too many arguments$help" >&2 exit 1;; esac # Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). # Here we must recognize all the valid KERNEL-OS combinations. maybe_os=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` case $maybe_os in nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ knetbsd*-gnu* | netbsd*-gnu* | netbsd*-eabi* | \ kopensolaris*-gnu* | cloudabi*-eabi* | \ storm-chaos* | os2-emx* | rtmk-nova*) os=-$maybe_os basic_machine=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` ;; android-linux) os=-linux-android basic_machine=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown ;; *) basic_machine=`echo "$1" | sed 's/-[^-]*$//'` if [ "$basic_machine" != "$1" ] then os=`echo "$1" | sed 's/.*-/-/'` else os=; fi ;; esac ### Let's recognize common machines as not being operating systems so ### that things like config.sub decstation-3100 work. We also ### recognize some manufacturers as not being operating systems, so we ### can provide default operating systems below. case $os in -sun*os*) # Prevent following clause from handling this invalid input. ;; -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ -apple | -axis | -knuth | -cray | -microblaze*) os= basic_machine=$1 ;; -bluegene*) os=-cnk ;; -sim | -cisco | -oki | -wec | -winbond) os= basic_machine=$1 ;; -scout) ;; -wrs) os=-vxworks basic_machine=$1 ;; -chorusos*) os=-chorusos basic_machine=$1 ;; -chorusrdb) os=-chorusrdb basic_machine=$1 ;; -hiux*) os=-hiuxwe2 ;; -sco6) os=-sco5v6 basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` ;; -sco5) os=-sco3.2v5 basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` ;; -sco4) os=-sco3.2v4 basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` ;; -sco3.2.[4-9]*) os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` ;; -sco3.2v[4-9]*) # Don't forget version if it is 3.2v4 or newer. basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` ;; -sco5v6*) # Don't forget version if it is 3.2v4 or newer. basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` ;; -sco*) os=-sco3.2v2 basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` ;; -udk*) basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` ;; -isc) os=-isc2.2 basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` ;; -clix*) basic_machine=clipper-intergraph ;; -isc*) basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` ;; -lynx*178) os=-lynxos178 ;; -lynx*5) os=-lynxos5 ;; -lynx*) os=-lynxos ;; -ptx*) basic_machine=`echo "$1" | sed -e 's/86-.*/86-sequent/'` ;; -psos*) os=-psos ;; -mint | -mint[0-9]*) basic_machine=m68k-atari os=-mint ;; esac # Decode aliases for certain CPU-COMPANY combinations. case $basic_machine in # Recognize the basic CPU types without company name. # Some are omitted here because they have special meanings below. 1750a | 580 \ | a29k \ | aarch64 | aarch64_be \ | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ | am33_2.0 \ | arc | arceb \ | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \ | avr | avr32 \ | ba \ | be32 | be64 \ | bfin \ | c4x | c8051 | clipper \ | d10v | d30v | dlx | dsp16xx \ | e2k | epiphany \ | fido | fr30 | frv | ft32 \ | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ | hexagon \ | i370 | i860 | i960 | ia16 | ia64 \ | ip2k | iq2000 \ | k1om \ | le32 | le64 \ | lm32 \ | m32c | m32r | m32rle | m68000 | m68k | m88k \ | maxq | mb | microblaze | microblazeel | mcore | mep | metag \ | mips | mipsbe | mipseb | mipsel | mipsle \ | mips16 \ | mips64 | mips64el \ | mips64octeon | mips64octeonel \ | mips64orion | mips64orionel \ | mips64r5900 | mips64r5900el \ | mips64vr | mips64vrel \ | mips64vr4100 | mips64vr4100el \ | mips64vr4300 | mips64vr4300el \ | mips64vr5000 | mips64vr5000el \ | mips64vr5900 | mips64vr5900el \ | mipsisa32 | mipsisa32el \ | mipsisa32r2 | mipsisa32r2el \ | mipsisa32r6 | mipsisa32r6el \ | mipsisa64 | mipsisa64el \ | mipsisa64r2 | mipsisa64r2el \ | mipsisa64r6 | mipsisa64r6el \ | mipsisa64sb1 | mipsisa64sb1el \ | mipsisa64sr71k | mipsisa64sr71kel \ | mipsr5900 | mipsr5900el \ | mipstx39 | mipstx39el \ | mn10200 | mn10300 \ | moxie \ | mt \ | msp430 \ | nds32 | nds32le | nds32be \ | nios | nios2 | nios2eb | nios2el \ | ns16k | ns32k \ | open8 | or1k | or1knd | or32 \ | pdp10 | pj | pjl \ | powerpc | powerpc64 | powerpc64le | powerpcle \ | pru \ | pyramid \ | riscv32 | riscv64 \ | rl78 | rx \ | score \ | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[234]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ | sh64 | sh64le \ | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ | spu \ | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ | ubicom32 \ | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ | visium \ | wasm32 \ | x86 | xc16x | xstormy16 | xtensa \ | z8k | z80) basic_machine=$basic_machine-unknown ;; c54x) basic_machine=tic54x-unknown ;; c55x) basic_machine=tic55x-unknown ;; c6x) basic_machine=tic6x-unknown ;; leon|leon[3-9]) basic_machine=sparc-$basic_machine ;; m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip) basic_machine=$basic_machine-unknown os=-none ;; m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65) ;; ms1) basic_machine=mt-unknown ;; strongarm | thumb | xscale) basic_machine=arm-unknown ;; xgate) basic_machine=$basic_machine-unknown os=-none ;; xscaleeb) basic_machine=armeb-unknown ;; xscaleel) basic_machine=armel-unknown ;; # We use `pc' rather than `unknown' # because (1) that's what they normally are, and # (2) the word "unknown" tends to confuse beginning users. i*86 | x86_64) basic_machine=$basic_machine-pc ;; # Object if more than one company name word. *-*-*) echo Invalid configuration \`"$1"\': machine \`"$basic_machine"\' not recognized 1>&2 exit 1 ;; # Recognize the basic CPU types with company name. 580-* \ | a29k-* \ | aarch64-* | aarch64_be-* \ | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \ | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ | avr-* | avr32-* \ | ba-* \ | be32-* | be64-* \ | bfin-* | bs2000-* \ | c[123]* | c30-* | [cjt]90-* | c4x-* \ | c8051-* | clipper-* | craynv-* | cydra-* \ | d10v-* | d30v-* | dlx-* \ | e2k-* | elxsi-* \ | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ | h8300-* | h8500-* \ | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ | hexagon-* \ | i*86-* | i860-* | i960-* | ia16-* | ia64-* \ | ip2k-* | iq2000-* \ | k1om-* \ | le32-* | le64-* \ | lm32-* \ | m32c-* | m32r-* | m32rle-* \ | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ | microblaze-* | microblazeel-* \ | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ | mips16-* \ | mips64-* | mips64el-* \ | mips64octeon-* | mips64octeonel-* \ | mips64orion-* | mips64orionel-* \ | mips64r5900-* | mips64r5900el-* \ | mips64vr-* | mips64vrel-* \ | mips64vr4100-* | mips64vr4100el-* \ | mips64vr4300-* | mips64vr4300el-* \ | mips64vr5000-* | mips64vr5000el-* \ | mips64vr5900-* | mips64vr5900el-* \ | mipsisa32-* | mipsisa32el-* \ | mipsisa32r2-* | mipsisa32r2el-* \ | mipsisa32r6-* | mipsisa32r6el-* \ | mipsisa64-* | mipsisa64el-* \ | mipsisa64r2-* | mipsisa64r2el-* \ | mipsisa64r6-* | mipsisa64r6el-* \ | mipsisa64sb1-* | mipsisa64sb1el-* \ | mipsisa64sr71k-* | mipsisa64sr71kel-* \ | mipsr5900-* | mipsr5900el-* \ | mipstx39-* | mipstx39el-* \ | mmix-* \ | mt-* \ | msp430-* \ | nds32-* | nds32le-* | nds32be-* \ | nios-* | nios2-* | nios2eb-* | nios2el-* \ | none-* | np1-* | ns16k-* | ns32k-* \ | open8-* \ | or1k*-* \ | orion-* \ | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ | pru-* \ | pyramid-* \ | riscv32-* | riscv64-* \ | rl78-* | romp-* | rs6000-* | rx-* \ | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ | sparclite-* \ | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx*-* \ | tahoe-* \ | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ | tile*-* \ | tron-* \ | ubicom32-* \ | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ | vax-* \ | visium-* \ | wasm32-* \ | we32k-* \ | x86-* | x86_64-* | xc16x-* | xps100-* \ | xstormy16-* | xtensa*-* \ | ymp-* \ | z8k-* | z80-*) ;; # Recognize the basic CPU types without company name, with glob match. xtensa*) basic_machine=$basic_machine-unknown ;; # Recognize the various machine names and aliases which stand # for a CPU type and a company and sometimes even an OS. 386bsd) basic_machine=i386-pc os=-bsd ;; 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) basic_machine=m68000-att ;; 3b*) basic_machine=we32k-att ;; a29khif) basic_machine=a29k-amd os=-udi ;; abacus) basic_machine=abacus-unknown ;; adobe68k) basic_machine=m68010-adobe os=-scout ;; alliant | fx80) basic_machine=fx80-alliant ;; altos | altos3068) basic_machine=m68k-altos ;; am29k) basic_machine=a29k-none os=-bsd ;; amd64) basic_machine=x86_64-pc ;; amd64-*) basic_machine=x86_64-`echo "$basic_machine" | sed 's/^[^-]*-//'` ;; amdahl) basic_machine=580-amdahl os=-sysv ;; amiga | amiga-*) basic_machine=m68k-unknown ;; amigaos | amigados) basic_machine=m68k-unknown os=-amigaos ;; amigaunix | amix) basic_machine=m68k-unknown os=-sysv4 ;; apollo68) basic_machine=m68k-apollo os=-sysv ;; apollo68bsd) basic_machine=m68k-apollo os=-bsd ;; aros) basic_machine=i386-pc os=-aros ;; asmjs) basic_machine=asmjs-unknown ;; aux) basic_machine=m68k-apple os=-aux ;; balance) basic_machine=ns32k-sequent os=-dynix ;; blackfin) basic_machine=bfin-unknown os=-linux ;; blackfin-*) basic_machine=bfin-`echo "$basic_machine" | sed 's/^[^-]*-//'` os=-linux ;; bluegene*) basic_machine=powerpc-ibm os=-cnk ;; c54x-*) basic_machine=tic54x-`echo "$basic_machine" | sed 's/^[^-]*-//'` ;; c55x-*) basic_machine=tic55x-`echo "$basic_machine" | sed 's/^[^-]*-//'` ;; c6x-*) basic_machine=tic6x-`echo "$basic_machine" | sed 's/^[^-]*-//'` ;; c90) basic_machine=c90-cray os=-unicos ;; cegcc) basic_machine=arm-unknown os=-cegcc ;; convex-c1) basic_machine=c1-convex os=-bsd ;; convex-c2) basic_machine=c2-convex os=-bsd ;; convex-c32) basic_machine=c32-convex os=-bsd ;; convex-c34) basic_machine=c34-convex os=-bsd ;; convex-c38) basic_machine=c38-convex os=-bsd ;; cray | j90) basic_machine=j90-cray os=-unicos ;; craynv) basic_machine=craynv-cray os=-unicosmp ;; cr16 | cr16-*) basic_machine=cr16-unknown os=-elf ;; crds | unos) basic_machine=m68k-crds ;; crisv32 | crisv32-* | etraxfs*) basic_machine=crisv32-axis ;; cris | cris-* | etrax*) basic_machine=cris-axis ;; crx) basic_machine=crx-unknown os=-elf ;; da30 | da30-*) basic_machine=m68k-da30 ;; decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) basic_machine=mips-dec ;; decsystem10* | dec10*) basic_machine=pdp10-dec os=-tops10 ;; decsystem20* | dec20*) basic_machine=pdp10-dec os=-tops20 ;; delta | 3300 | motorola-3300 | motorola-delta \ | 3300-motorola | delta-motorola) basic_machine=m68k-motorola ;; delta88) basic_machine=m88k-motorola os=-sysv3 ;; dicos) basic_machine=i686-pc os=-dicos ;; djgpp) basic_machine=i586-pc os=-msdosdjgpp ;; dpx20 | dpx20-*) basic_machine=rs6000-bull os=-bosx ;; dpx2*) basic_machine=m68k-bull os=-sysv3 ;; e500v[12]) basic_machine=powerpc-unknown os=$os"spe" ;; e500v[12]-*) basic_machine=powerpc-`echo "$basic_machine" | sed 's/^[^-]*-//'` os=$os"spe" ;; ebmon29k) basic_machine=a29k-amd os=-ebmon ;; elxsi) basic_machine=elxsi-elxsi os=-bsd ;; encore | umax | mmax) basic_machine=ns32k-encore ;; es1800 | OSE68k | ose68k | ose | OSE) basic_machine=m68k-ericsson os=-ose ;; fx2800) basic_machine=i860-alliant ;; genix) basic_machine=ns32k-ns ;; gmicro) basic_machine=tron-gmicro os=-sysv ;; go32) basic_machine=i386-pc os=-go32 ;; h3050r* | hiux*) basic_machine=hppa1.1-hitachi os=-hiuxwe2 ;; h8300hms) basic_machine=h8300-hitachi os=-hms ;; h8300xray) basic_machine=h8300-hitachi os=-xray ;; h8500hms) basic_machine=h8500-hitachi os=-hms ;; harris) basic_machine=m88k-harris os=-sysv3 ;; hp300-*) basic_machine=m68k-hp ;; hp300bsd) basic_machine=m68k-hp os=-bsd ;; hp300hpux) basic_machine=m68k-hp os=-hpux ;; hp3k9[0-9][0-9] | hp9[0-9][0-9]) basic_machine=hppa1.0-hp ;; hp9k2[0-9][0-9] | hp9k31[0-9]) basic_machine=m68000-hp ;; hp9k3[2-9][0-9]) basic_machine=m68k-hp ;; hp9k6[0-9][0-9] | hp6[0-9][0-9]) basic_machine=hppa1.0-hp ;; hp9k7[0-79][0-9] | hp7[0-79][0-9]) basic_machine=hppa1.1-hp ;; hp9k78[0-9] | hp78[0-9]) # FIXME: really hppa2.0-hp basic_machine=hppa1.1-hp ;; hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) # FIXME: really hppa2.0-hp basic_machine=hppa1.1-hp ;; hp9k8[0-9][13679] | hp8[0-9][13679]) basic_machine=hppa1.1-hp ;; hp9k8[0-9][0-9] | hp8[0-9][0-9]) basic_machine=hppa1.0-hp ;; hppaosf) basic_machine=hppa1.1-hp os=-osf ;; hppro) basic_machine=hppa1.1-hp os=-proelf ;; i370-ibm* | ibm*) basic_machine=i370-ibm ;; i*86v32) basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'` os=-sysv32 ;; i*86v4*) basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'` os=-sysv4 ;; i*86v) basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'` os=-sysv ;; i*86sol2) basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'` os=-solaris2 ;; i386mach) basic_machine=i386-mach os=-mach ;; vsta) basic_machine=i386-unknown os=-vsta ;; iris | iris4d) basic_machine=mips-sgi case $os in -irix*) ;; *) os=-irix4 ;; esac ;; isi68 | isi) basic_machine=m68k-isi os=-sysv ;; leon-*|leon[3-9]-*) basic_machine=sparc-`echo "$basic_machine" | sed 's/-.*//'` ;; m68knommu) basic_machine=m68k-unknown os=-linux ;; m68knommu-*) basic_machine=m68k-`echo "$basic_machine" | sed 's/^[^-]*-//'` os=-linux ;; magnum | m3230) basic_machine=mips-mips os=-sysv ;; merlin) basic_machine=ns32k-utek os=-sysv ;; microblaze*) basic_machine=microblaze-xilinx ;; mingw64) basic_machine=x86_64-pc os=-mingw64 ;; mingw32) basic_machine=i686-pc os=-mingw32 ;; mingw32ce) basic_machine=arm-unknown os=-mingw32ce ;; miniframe) basic_machine=m68000-convergent ;; *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) basic_machine=m68k-atari os=-mint ;; mips3*-*) basic_machine=`echo "$basic_machine" | sed -e 's/mips3/mips64/'` ;; mips3*) basic_machine=`echo "$basic_machine" | sed -e 's/mips3/mips64/'`-unknown ;; monitor) basic_machine=m68k-rom68k os=-coff ;; morphos) basic_machine=powerpc-unknown os=-morphos ;; moxiebox) basic_machine=moxie-unknown os=-moxiebox ;; msdos) basic_machine=i386-pc os=-msdos ;; ms1-*) basic_machine=`echo "$basic_machine" | sed -e 's/ms1-/mt-/'` ;; msys) basic_machine=i686-pc os=-msys ;; mvs) basic_machine=i370-ibm os=-mvs ;; nacl) basic_machine=le32-unknown os=-nacl ;; ncr3000) basic_machine=i486-ncr os=-sysv4 ;; netbsd386) basic_machine=i386-unknown os=-netbsd ;; netwinder) basic_machine=armv4l-rebel os=-linux ;; news | news700 | news800 | news900) basic_machine=m68k-sony os=-newsos ;; news1000) basic_machine=m68030-sony os=-newsos ;; news-3600 | risc-news) basic_machine=mips-sony os=-newsos ;; necv70) basic_machine=v70-nec os=-sysv ;; next | m*-next) basic_machine=m68k-next case $os in -nextstep* ) ;; -ns2*) os=-nextstep2 ;; *) os=-nextstep3 ;; esac ;; nh3000) basic_machine=m68k-harris os=-cxux ;; nh[45]000) basic_machine=m88k-harris os=-cxux ;; nindy960) basic_machine=i960-intel os=-nindy ;; mon960) basic_machine=i960-intel os=-mon960 ;; nonstopux) basic_machine=mips-compaq os=-nonstopux ;; np1) basic_machine=np1-gould ;; neo-tandem) basic_machine=neo-tandem ;; nse-tandem) basic_machine=nse-tandem ;; nsr-tandem) basic_machine=nsr-tandem ;; nsv-tandem) basic_machine=nsv-tandem ;; nsx-tandem) basic_machine=nsx-tandem ;; op50n-* | op60c-*) basic_machine=hppa1.1-oki os=-proelf ;; openrisc | openrisc-*) basic_machine=or32-unknown ;; os400) basic_machine=powerpc-ibm os=-os400 ;; OSE68000 | ose68000) basic_machine=m68000-ericsson os=-ose ;; os68k) basic_machine=m68k-none os=-os68k ;; pa-hitachi) basic_machine=hppa1.1-hitachi os=-hiuxwe2 ;; paragon) basic_machine=i860-intel os=-osf ;; parisc) basic_machine=hppa-unknown os=-linux ;; parisc-*) basic_machine=hppa-`echo "$basic_machine" | sed 's/^[^-]*-//'` os=-linux ;; pbd) basic_machine=sparc-tti ;; pbb) basic_machine=m68k-tti ;; pc532 | pc532-*) basic_machine=ns32k-pc532 ;; pc98) basic_machine=i386-pc ;; pc98-*) basic_machine=i386-`echo "$basic_machine" | sed 's/^[^-]*-//'` ;; pentium | p5 | k5 | k6 | nexgen | viac3) basic_machine=i586-pc ;; pentiumpro | p6 | 6x86 | athlon | athlon_*) basic_machine=i686-pc ;; pentiumii | pentium2 | pentiumiii | pentium3) basic_machine=i686-pc ;; pentium4) basic_machine=i786-pc ;; pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) basic_machine=i586-`echo "$basic_machine" | sed 's/^[^-]*-//'` ;; pentiumpro-* | p6-* | 6x86-* | athlon-*) basic_machine=i686-`echo "$basic_machine" | sed 's/^[^-]*-//'` ;; pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) basic_machine=i686-`echo "$basic_machine" | sed 's/^[^-]*-//'` ;; pentium4-*) basic_machine=i786-`echo "$basic_machine" | sed 's/^[^-]*-//'` ;; pn) basic_machine=pn-gould ;; power) basic_machine=power-ibm ;; ppc | ppcbe) basic_machine=powerpc-unknown ;; ppc-* | ppcbe-*) basic_machine=powerpc-`echo "$basic_machine" | sed 's/^[^-]*-//'` ;; ppcle | powerpclittle) basic_machine=powerpcle-unknown ;; ppcle-* | powerpclittle-*) basic_machine=powerpcle-`echo "$basic_machine" | sed 's/^[^-]*-//'` ;; ppc64) basic_machine=powerpc64-unknown ;; ppc64-*) basic_machine=powerpc64-`echo "$basic_machine" | sed 's/^[^-]*-//'` ;; ppc64le | powerpc64little) basic_machine=powerpc64le-unknown ;; ppc64le-* | powerpc64little-*) basic_machine=powerpc64le-`echo "$basic_machine" | sed 's/^[^-]*-//'` ;; ps2) basic_machine=i386-ibm ;; pw32) basic_machine=i586-unknown os=-pw32 ;; rdos | rdos64) basic_machine=x86_64-pc os=-rdos ;; rdos32) basic_machine=i386-pc os=-rdos ;; rom68k) basic_machine=m68k-rom68k os=-coff ;; rm[46]00) basic_machine=mips-siemens ;; rtpc | rtpc-*) basic_machine=romp-ibm ;; s390 | s390-*) basic_machine=s390-ibm ;; s390x | s390x-*) basic_machine=s390x-ibm ;; sa29200) basic_machine=a29k-amd os=-udi ;; sb1) basic_machine=mipsisa64sb1-unknown ;; sb1el) basic_machine=mipsisa64sb1el-unknown ;; sde) basic_machine=mipsisa32-sde os=-elf ;; sei) basic_machine=mips-sei os=-seiux ;; sequent) basic_machine=i386-sequent ;; sh5el) basic_machine=sh5le-unknown ;; simso-wrs) basic_machine=sparclite-wrs os=-vxworks ;; sps7) basic_machine=m68k-bull os=-sysv2 ;; spur) basic_machine=spur-unknown ;; st2000) basic_machine=m68k-tandem ;; stratus) basic_machine=i860-stratus os=-sysv4 ;; strongarm-* | thumb-*) basic_machine=arm-`echo "$basic_machine" | sed 's/^[^-]*-//'` ;; sun2) basic_machine=m68000-sun ;; sun2os3) basic_machine=m68000-sun os=-sunos3 ;; sun2os4) basic_machine=m68000-sun os=-sunos4 ;; sun3os3) basic_machine=m68k-sun os=-sunos3 ;; sun3os4) basic_machine=m68k-sun os=-sunos4 ;; sun4os3) basic_machine=sparc-sun os=-sunos3 ;; sun4os4) basic_machine=sparc-sun os=-sunos4 ;; sun4sol2) basic_machine=sparc-sun os=-solaris2 ;; sun3 | sun3-*) basic_machine=m68k-sun ;; sun4) basic_machine=sparc-sun ;; sun386 | sun386i | roadrunner) basic_machine=i386-sun ;; sv1) basic_machine=sv1-cray os=-unicos ;; symmetry) basic_machine=i386-sequent os=-dynix ;; t3e) basic_machine=alphaev5-cray os=-unicos ;; t90) basic_machine=t90-cray os=-unicos ;; tile*) basic_machine=$basic_machine-unknown os=-linux-gnu ;; tx39) basic_machine=mipstx39-unknown ;; tx39el) basic_machine=mipstx39el-unknown ;; toad1) basic_machine=pdp10-xkl os=-tops20 ;; tower | tower-32) basic_machine=m68k-ncr ;; tpf) basic_machine=s390x-ibm os=-tpf ;; udi29k) basic_machine=a29k-amd os=-udi ;; ultra3) basic_machine=a29k-nyu os=-sym1 ;; v810 | necv810) basic_machine=v810-nec os=-none ;; vaxv) basic_machine=vax-dec os=-sysv ;; vms) basic_machine=vax-dec os=-vms ;; vpp*|vx|vx-*) basic_machine=f301-fujitsu ;; vxworks960) basic_machine=i960-wrs os=-vxworks ;; vxworks68) basic_machine=m68k-wrs os=-vxworks ;; vxworks29k) basic_machine=a29k-wrs os=-vxworks ;; w65*) basic_machine=w65-wdc os=-none ;; w89k-*) basic_machine=hppa1.1-winbond os=-proelf ;; x64) basic_machine=x86_64-pc ;; xbox) basic_machine=i686-pc os=-mingw32 ;; xps | xps100) basic_machine=xps100-honeywell ;; xscale-* | xscalee[bl]-*) basic_machine=`echo "$basic_machine" | sed 's/^xscale/arm/'` ;; ymp) basic_machine=ymp-cray os=-unicos ;; none) basic_machine=none-none os=-none ;; # Here we handle the default manufacturer of certain CPU types. It is in # some cases the only manufacturer, in others, it is the most popular. w89k) basic_machine=hppa1.1-winbond ;; op50n) basic_machine=hppa1.1-oki ;; op60c) basic_machine=hppa1.1-oki ;; romp) basic_machine=romp-ibm ;; mmix) basic_machine=mmix-knuth ;; rs6000) basic_machine=rs6000-ibm ;; vax) basic_machine=vax-dec ;; pdp11) basic_machine=pdp11-dec ;; we32k) basic_machine=we32k-att ;; sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) basic_machine=sh-unknown ;; cydra) basic_machine=cydra-cydrome ;; orion) basic_machine=orion-highlevel ;; orion105) basic_machine=clipper-highlevel ;; mac | mpw | mac-mpw) basic_machine=m68k-apple ;; pmac | pmac-mpw) basic_machine=powerpc-apple ;; *-unknown) # Make sure to match an already-canonicalized machine name. ;; *) echo Invalid configuration \`"$1"\': machine \`"$basic_machine"\' not recognized 1>&2 exit 1 ;; esac # Here we canonicalize certain aliases for manufacturers. case $basic_machine in *-digital*) basic_machine=`echo "$basic_machine" | sed 's/digital.*/dec/'` ;; *-commodore*) basic_machine=`echo "$basic_machine" | sed 's/commodore.*/cbm/'` ;; *) ;; esac # Decode manufacturer-specific aliases for certain operating systems. if [ x"$os" != x"" ] then case $os in # First match some system type aliases that might get confused # with valid system types. # -solaris* is a basic system type, with this one exception. -auroraux) os=-auroraux ;; -solaris1 | -solaris1.*) os=`echo $os | sed -e 's|solaris1|sunos4|'` ;; -solaris) os=-solaris2 ;; -unixware*) os=-sysv4.2uw ;; -gnu/linux*) os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` ;; # es1800 is here to avoid being matched by es* (a different OS) -es1800*) os=-ose ;; # Now accept the basic system types. # The portable systems comes first. # Each alternative MUST end in a * to match a version number. # -sysv* is not here because it comes later, after sysvr4. -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ | -sym* | -kopensolaris* | -plan9* \ | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ | -aos* | -aros* | -cloudabi* | -sortix* \ | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ | -hiux* | -knetbsd* | -mirbsd* | -netbsd* \ | -bitrig* | -openbsd* | -solidbsd* | -libertybsd* \ | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ | -chorusos* | -chorusrdb* | -cegcc* | -glidix* \ | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ | -midipix* | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \ | -linux-newlib* | -linux-musl* | -linux-uclibc* \ | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \ | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* \ | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ | -morphos* | -superux* | -rtmk* | -windiss* \ | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* \ | -onefs* | -tirtos* | -phoenix* | -fuchsia* | -redox* | -bme* \ | -midnightbsd*) # Remember, each alternative MUST END IN *, to match a version number. ;; -qnx*) case $basic_machine in x86-* | i*86-*) ;; *) os=-nto$os ;; esac ;; -nto-qnx*) ;; -nto*) os=`echo $os | sed -e 's|nto|nto-qnx|'` ;; -sim | -xray | -os68k* | -v88r* \ | -windows* | -osx | -abug | -netware* | -os9* \ | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) ;; -mac*) os=`echo "$os" | sed -e 's|mac|macos|'` ;; -linux-dietlibc) os=-linux-dietlibc ;; -linux*) os=`echo $os | sed -e 's|linux|linux-gnu|'` ;; -sunos5*) os=`echo "$os" | sed -e 's|sunos5|solaris2|'` ;; -sunos6*) os=`echo "$os" | sed -e 's|sunos6|solaris3|'` ;; -opened*) os=-openedition ;; -os400*) os=-os400 ;; -wince*) os=-wince ;; -utek*) os=-bsd ;; -dynix*) os=-bsd ;; -acis*) os=-aos ;; -atheos*) os=-atheos ;; -syllable*) os=-syllable ;; -386bsd) os=-bsd ;; -ctix* | -uts*) os=-sysv ;; -nova*) os=-rtmk-nova ;; -ns2) os=-nextstep2 ;; -nsk*) os=-nsk ;; # Preserve the version number of sinix5. -sinix5.*) os=`echo $os | sed -e 's|sinix|sysv|'` ;; -sinix*) os=-sysv4 ;; -tpf*) os=-tpf ;; -triton*) os=-sysv3 ;; -oss*) os=-sysv3 ;; -svr4*) os=-sysv4 ;; -svr3) os=-sysv3 ;; -sysvr4) os=-sysv4 ;; # This must come after -sysvr4. -sysv*) ;; -ose*) os=-ose ;; -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) os=-mint ;; -zvmoe) os=-zvmoe ;; -dicos*) os=-dicos ;; -pikeos*) # Until real need of OS specific support for # particular features comes up, bare metal # configurations are quite functional. case $basic_machine in arm*) os=-eabi ;; *) os=-elf ;; esac ;; -nacl*) ;; -ios) ;; -none) ;; *) # Get rid of the `-' at the beginning of $os. os=`echo $os | sed 's/[^-]*-//'` echo Invalid configuration \`"$1"\': system \`"$os"\' not recognized 1>&2 exit 1 ;; esac else # Here we handle the default operating systems that come with various machines. # The value should be what the vendor currently ships out the door with their # machine or put another way, the most popular os provided with the machine. # Note that if you're going to try to match "-MANUFACTURER" here (say, # "-sun"), then you have to tell the case statement up towards the top # that MANUFACTURER isn't an operating system. Otherwise, code above # will signal an error saying that MANUFACTURER isn't an operating # system, and we'll never get to this point. case $basic_machine in score-*) os=-elf ;; spu-*) os=-elf ;; *-acorn) os=-riscix1.2 ;; arm*-rebel) os=-linux ;; arm*-semi) os=-aout ;; c4x-* | tic4x-*) os=-coff ;; c8051-*) os=-elf ;; hexagon-*) os=-elf ;; tic54x-*) os=-coff ;; tic55x-*) os=-coff ;; tic6x-*) os=-coff ;; # This must come before the *-dec entry. pdp10-*) os=-tops20 ;; pdp11-*) os=-none ;; *-dec | vax-*) os=-ultrix4.2 ;; m68*-apollo) os=-domain ;; i386-sun) os=-sunos4.0.2 ;; m68000-sun) os=-sunos3 ;; m68*-cisco) os=-aout ;; mep-*) os=-elf ;; mips*-cisco) os=-elf ;; mips*-*) os=-elf ;; or32-*) os=-coff ;; *-tti) # must be before sparc entry or we get the wrong os. os=-sysv3 ;; sparc-* | *-sun) os=-sunos4.1.1 ;; pru-*) os=-elf ;; *-be) os=-beos ;; *-ibm) os=-aix ;; *-knuth) os=-mmixware ;; *-wec) os=-proelf ;; *-winbond) os=-proelf ;; *-oki) os=-proelf ;; *-hp) os=-hpux ;; *-hitachi) os=-hiux ;; i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) os=-sysv ;; *-cbm) os=-amigaos ;; *-dg) os=-dgux ;; *-dolphin) os=-sysv3 ;; m68k-ccur) os=-rtu ;; m88k-omron*) os=-luna ;; *-next) os=-nextstep ;; *-sequent) os=-ptx ;; *-crds) os=-unos ;; *-ns) os=-genix ;; i370-*) os=-mvs ;; *-gould) os=-sysv ;; *-highlevel) os=-bsd ;; *-encore) os=-bsd ;; *-sgi) os=-irix ;; *-siemens) os=-sysv4 ;; *-masscomp) os=-rtu ;; f30[01]-fujitsu | f700-fujitsu) os=-uxpv ;; *-rom68k) os=-coff ;; *-*bug) os=-coff ;; *-apple) os=-macos ;; *-atari*) os=-mint ;; *) os=-none ;; esac fi # Here we handle the case where we know the os, and the CPU type, but not the # manufacturer. We pick the logical manufacturer. vendor=unknown case $basic_machine in *-unknown) case $os in -riscix*) vendor=acorn ;; -sunos*) vendor=sun ;; -cnk*|-aix*) vendor=ibm ;; -beos*) vendor=be ;; -hpux*) vendor=hp ;; -mpeix*) vendor=hp ;; -hiux*) vendor=hitachi ;; -unos*) vendor=crds ;; -dgux*) vendor=dg ;; -luna*) vendor=omron ;; -genix*) vendor=ns ;; -mvs* | -opened*) vendor=ibm ;; -os400*) vendor=ibm ;; -ptx*) vendor=sequent ;; -tpf*) vendor=ibm ;; -vxsim* | -vxworks* | -windiss*) vendor=wrs ;; -aux*) vendor=apple ;; -hms*) vendor=hitachi ;; -mpw* | -macos*) vendor=apple ;; -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) vendor=atari ;; -vos*) vendor=stratus ;; esac basic_machine=`echo "$basic_machine" | sed "s/unknown/$vendor/"` ;; esac echo "$basic_machine$os" exit # Local variables: # eval: (add-hook 'write-file-functions 'time-stamp) # time-stamp-start: "timestamp='" # time-stamp-format: "%:y-%02m-%02d" # time-stamp-end: "'" # End: unicode-screensaver-0.5.1/Makefile.am0000644000175000017500000000227212523334521014441 00000000000000AUTOMAKE_OPTIONS = foreign # ACLOCAL_AMFLAGS = -I m4 AM_CPPFLAGS = -I$(srcdir)/hacks -I$(srcdir)/utils @XFT_CFLAGS@ @X11_CFLAGS@ @FC_CFLAGS@ @XMU_CFLAGS@ @XT_CFLAGS@ hackexecdir = @HACKDIR@ desktopdir = @DESKTOPDIR@ hackconfdir = @HACK_CONF_DIR@ hackexec_PROGRAMS = unicode unicode_SOURCES = \ unicode.c \ unicode-names.h \ version.h \ hacks/screenhack.c \ utils/visual.c \ utils/yarandom.c \ utils/resources.c \ utils/usleep.c \ hacks/fps.c \ hacks/fps.h \ hacks/fpsI.h \ hacks/screenhack.h \ hacks/screenhackI.h \ utils/colors.h \ utils/grabscreen.h \ utils/hsv.h \ utils/resources.h \ utils/usleep.h \ utils/utils.h \ utils/visual.h \ utils/vroot.h \ utils/xmu.h \ utils/yarandom.h unicode_LDADD = @XFT_LIBS@ @X11_LIBS@ @FC_LIBS@ @XMU_LIBS@ @XT_LIBS@ nodist_desktop_DATA = unicode.desktop unicode.desktop: unicode.desktop.in sed -e 's,[@]hackexecdir[@],$(hackexecdir),g' < $(srcdir)/unicode.desktop.in > unicode.desktop man_MANS = unicode.6x unicode.6x: unicode.6x.in sed -e 's,[@]version[@],@PACKAGE_VERSION@,g' < $(srcdir)/unicode.6x.in > unicode.6x dist_hackconf_DATA = unicode.xml EXTRA_DIST = unicode.desktop.in unicode.6x.in CLEANFILES = unicode.desktop unicode.6x unicode-screensaver-0.5.1/utils/0000755000175000017500000000000013306044133013617 500000000000000unicode-screensaver-0.5.1/utils/xmu.h0000644000175000017500000000055112523334521014525 00000000000000/* This file contains compatibility routines for systems without Xmu. * You would be better served by installing Xmu on your machine or * yelling at your vendor to ship it. */ #ifndef __XMU_H__ #define __XMU_H__ #include #include int XmuPrintDefaultErrorMessage (Display *dpy, XErrorEvent *event, FILE *fp); #endif /* __XMU_H__ */ unicode-screensaver-0.5.1/utils/colors.h0000644000175000017500000001273412523334521015223 00000000000000/* xscreensaver, Copyright (c) 1992, 1997 Jamie Zawinski * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided that * the above copyright notice appear in all copies and that both that * copyright notice and this permission notice appear in supporting * documentation. No representations are made about the suitability of this * software for any purpose. It is provided "as is" without express or * implied warranty. */ #ifndef __COLORS_H__ #define __COLORS_H__ /* Like XFreeColors, but works on `XColor *' instead of `unsigned long *' */ extern void free_colors (Display *, Colormap, XColor *, int ncolors); /* Allocates writable, non-contiguous color cells. The number requested is passed in *ncolorsP, and the number actually allocated is returned there. (Unlike XAllocColorCells(), this will allocate as many as it can, instead of failing if they can't all be allocated.) */ extern void allocate_writable_colors (Display *dpy, Colormap cmap, unsigned long *pixels, int *ncolorsP); /* Generates a sequence of colors evenly spaced between the given pair of HSV coordinates. If closed_p is true, the colors will go from the first point to the second then back to the first. If allocate_p is true, the colors will be allocated from the map; if enough colors can't be allocated, we will try for less, and the result will be returned to ncolorsP. If writable_p is true, writable color cells will be allocated; otherwise, read-only cells will be allocated. */ extern void make_color_ramp (Display *dpy, Colormap cmap, int h1, double s1, double v1, int h2, double s2, double v2, XColor *colors, int *ncolorsP, Bool closed_p, Bool allocate_p, Bool writable_p); /* Generates a sequence of colors evenly spaced around the triangle indicated by the thee HSV coordinates. If allocate_p is true, the colors will be allocated from the map; if enough colors can't be allocated, we will try for less, and the result will be returned to ncolorsP. If writable_p is true, writable color cells will be allocated; otherwise, read-only cells will be allocated. */ extern void make_color_loop (Display *, Colormap, int h1, double s1, double v1, int h2, double s2, double v2, int h3, double s3, double v3, XColor *colors, int *ncolorsP, Bool allocate_p, Bool writable_p); /* Allocates a hopefully-interesting colormap, which will be a closed loop without any sudden transitions. If allocate_p is true, the colors will be allocated from the map; if enough colors can't be allocated, we will try for less, and the result will be returned to ncolorsP. An error message will be printed on stderr (if verbose_p). If *writable_pP is true, writable color cells will be allocated; otherwise, read-only cells will be allocated. If no writable cells cannot be allocated, we will try to allocate unwritable cells instead, and print a message on stderr to that effect (if verbose_p). */ extern void make_smooth_colormap (Display *dpy, Visual *visual, Colormap cmap, XColor *colors, int *ncolorsP, Bool allocate_p, Bool *writable_pP, Bool verbose_p); /* Allocates a uniform colormap which touches each hue of the spectrum, evenly spaced. The saturation and intensity are chosen randomly, but will be high enough to be visible. If allocate_p is true, the colors will be allocated from the map; if enough colors can't be allocated, we will try for less, and the result will be returned to ncolorsP. An error message will be printed on stderr (if verbose_p). If *writable_pP is true, writable color cells will be allocated; otherwise, read-only cells will be allocated. If no writable cells cannot be allocated, we will try to allocate unwritable cells instead, and print a message on stderr to that effect (if verbose_p). */ extern void make_uniform_colormap (Display *dpy, Visual *visual, Colormap cmap, XColor *colors, int *ncolorsP, Bool allocate_p, Bool *writable_pP, Bool verbose_p); /* Allocates a random colormap (the colors are unrelated to one another.) If `bright_p' is false, the colors will be completely random; if it is true, all of the colors will be bright enough to see on a black background. If allocate_p is true, the colors will be allocated from the map; if enough colors can't be allocated, we will try for less, and the result will be returned to ncolorsP. An error message will be printed on stderr (if verbose_p). If *writable_pP is true, writable color cells will be allocated; otherwise, read-only cells will be allocated. If no writable cells cannot be allocated, we will try to allocate unwritable cells instead, and print a message on stderr to that effect (if verbose_p). */ extern void make_random_colormap (Display *dpy, Visual *visual, Colormap cmap, XColor *colors, int *ncolorsP, Bool bright_p, Bool allocate_p, Bool *writable_pP, Bool verbose_p); /* Assuming that the array of colors indicates the current state of a set of writable color cells, this rotates the contents of the array by `distance' steps, moving the colors of cell N to cell (N - distance). */ extern void rotate_colors (Display *, Colormap, XColor *, int ncolors, int distance); #endif /* __COLORS_H__ */ unicode-screensaver-0.5.1/utils/yarandom.h0000644000175000017500000000401112523334521015521 00000000000000/* xscreensaver, Copyright (c) 1997, 1998, 2003 by Jamie Zawinski * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided that * the above copyright notice appear in all copies and that both that * copyright notice and this permission notice appear in supporting * documentation. No representations are made about the suitability of this * software for any purpose. It is provided "as is" without express or * implied warranty. */ #ifndef __YARANDOM_H__ #define __YARANDOM_H__ #undef random #undef rand #undef drand48 #undef srandom #undef srand #undef srand48 #undef frand #undef RAND_MAX #ifdef VMS # include "vms-gtod.h" #endif extern unsigned int ya_random (void); extern void ya_rand_init (unsigned int); #define random() ya_random() #define RAND_MAX 0xFFFFFFFF /*#define srandom(i) ya_rand_init(0)*/ /* Define these away to keep people from using the wrong APIs in xscreensaver. */ #define rand __ERROR_use_random_not_rand_in_xscreensaver__ #define drand48 __ERROR_use_frand_not_drand48_in_xscreensaver__ #define srandom __ERROR_do_not_call_srandom_in_xscreensaver__ #define srand __ERROR_do_not_call_srand_in_xscreensaver__ #define srand48 __ERROR_do_not_call_srand48_in_xscreensaver__ #define ya_rand_init __ERROR_do_not_call_ya_rand_init_in_xscreensaver__ #if defined (__GNUC__) && (__GNUC__ >= 2) /* Implement frand using GCC's statement-expression extension. */ # define frand(f) \ __extension__ \ ({ double tmp = ((((double) random()) * ((double) (f))) / \ ((double) ((unsigned int)~0))); \ tmp < 0 ? (-tmp) : tmp; }) #else /* not GCC2 - implement frand using a global variable.*/ static double _frand_tmp_; # define frand(f) \ (_frand_tmp_ = ((((double) random()) * ((double) (f))) / \ ((double) ((unsigned int)~0))), \ _frand_tmp_ < 0 ? (-_frand_tmp_) : _frand_tmp_) #endif /* not GCC2 */ #endif /* __YARANDOM_H__ */ unicode-screensaver-0.5.1/utils/visual.c0000644000175000017500000003724512523334521015224 00000000000000/* xscreensaver, Copyright (c) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2003, 2006 * * * by Jamie Zawinski * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided that * the above copyright notice appear in all copies and that both that * copyright notice and this permission notice appear in supporting * documentation. No representations are made about the suitability of this * software for any purpose. It is provided "as is" without express or * implied warranty. */ /* This file contains some code for intelligently picking the best visual (where "best" is biased in the direction of either: high color counts; or: having writable color cells...) */ #include "utils.h" #include "resources.h" /* for get_string_resource() */ #include "visual.h" #include #include extern char *progname; #ifndef isupper # define isupper(c) ((c) >= 'A' && (c) <= 'Z') #endif #ifndef _tolower # define _tolower(c) ((c) - 'A' + 'a') #endif static Visual *pick_best_visual (Screen *, Bool, Bool); static Visual *pick_mono_visual (Screen *); static Visual *pick_best_visual_of_class (Screen *, int); static Visual *pick_best_gl_visual (Screen *); #define DEFAULT_VISUAL -1 #define BEST_VISUAL -2 #define MONO_VISUAL -3 #define GRAY_VISUAL -4 #define COLOR_VISUAL -5 #define GL_VISUAL -6 #define SPECIFIC_VISUAL -7 Visual * get_visual (Screen *screen, const char *string, Bool prefer_writable_cells, Bool verbose_p) { char *v = (string ? strdup(string) : 0); char c, *tmp; int vclass; unsigned long id; Visual *result = 0; if (v) for (tmp = v; *tmp; tmp++) if (isupper (*tmp)) *tmp = _tolower (*tmp); if (!v || !*v) vclass = BEST_VISUAL; else if (!strcmp (v, "default")) vclass = DEFAULT_VISUAL; else if (!strcmp (v, "best")) vclass = BEST_VISUAL; else if (!strcmp (v, "mono")) vclass = MONO_VISUAL; else if (!strcmp (v, "monochrome")) vclass = MONO_VISUAL; else if (!strcmp (v, "gray")) vclass = GRAY_VISUAL; else if (!strcmp (v, "grey")) vclass = GRAY_VISUAL; else if (!strcmp (v, "color")) vclass = COLOR_VISUAL; else if (!strcmp (v, "gl")) vclass = GL_VISUAL; else if (!strcmp (v, "staticgray")) vclass = StaticGray; else if (!strcmp (v, "staticcolor")) vclass = StaticColor; else if (!strcmp (v, "truecolor")) vclass = TrueColor; else if (!strcmp (v, "grayscale")) vclass = GrayScale; else if (!strcmp (v, "greyscale")) vclass = GrayScale; else if (!strcmp (v, "pseudocolor")) vclass = PseudoColor; else if (!strcmp (v, "directcolor")) vclass = DirectColor; else if (1 == sscanf (v, " %lu %c", &id, &c)) vclass = SPECIFIC_VISUAL; else if (1 == sscanf (v, " 0x%lx %c", &id, &c)) vclass = SPECIFIC_VISUAL; else { fprintf (stderr, "%s: unrecognized visual \"%s\".\n", progname, v); vclass = DEFAULT_VISUAL; } if (vclass == DEFAULT_VISUAL) result = DefaultVisualOfScreen (screen); else if (vclass == BEST_VISUAL) result = pick_best_visual (screen, prefer_writable_cells, False); else if (vclass == MONO_VISUAL) { result = pick_mono_visual (screen); if (!result && verbose_p) fprintf (stderr, "%s: no monochrome visuals.\n", progname); } else if (vclass == GRAY_VISUAL) { if (prefer_writable_cells) result = pick_best_visual_of_class (screen, GrayScale); if (!result) result = pick_best_visual_of_class (screen, StaticGray); if (!result) result = pick_best_visual_of_class (screen, GrayScale); if (!result && verbose_p) fprintf (stderr, "%s: no GrayScale or StaticGray visuals.\n", progname); } else if (vclass == COLOR_VISUAL) { int class; /* First see if the default visual will do. */ result = DefaultVisualOfScreen (screen); class = visual_class(screen, result); if (class != TrueColor && class != PseudoColor && class != DirectColor && class != StaticColor) result = 0; if (result && visual_depth(screen, result) <= 1) result = 0; /* Else, find the best non-default color visual */ if (!result) result = pick_best_visual (screen, prefer_writable_cells, True); if (!result && verbose_p) fprintf (stderr, "%s: no color visuals.\n", progname); } else if (vclass == GL_VISUAL) { Visual *visual = pick_best_gl_visual (screen); if (visual) result = visual; else if (verbose_p) fprintf (stderr, "%s: no visual suitable for GL.\n", progname); } else if (vclass == SPECIFIC_VISUAL) { result = id_to_visual (screen, id); if (!result && verbose_p) fprintf (stderr, "%s: no visual with id 0x%x.\n", progname, (unsigned int) id); } else { Visual *visual = pick_best_visual_of_class (screen, vclass); if (visual) result = visual; else if (verbose_p) fprintf (stderr, "%s: no visual of class %s.\n", progname, v); } if (v) free (v); return result; } Visual * get_visual_resource (Screen *screen, char *name, char *class, Bool prefer_writable_cells) { char *string = get_string_resource (DisplayOfScreen (screen), name, class); Visual *v = get_visual (screen, string, prefer_writable_cells, True); if (string) free(string); if (v) return v; else return DefaultVisualOfScreen (screen); } static Visual * pick_best_visual (Screen *screen, Bool prefer_writable_cells, Bool color_only) { Visual *visual; if (!prefer_writable_cells) { /* If we don't prefer writable cells, then the "best" visual is the one on which we can allocate the largest range and number of colors. Therefore, a TrueColor visual which is at least 16 bits deep is best. (The assumption here being that a TrueColor of less than 16 bits is really just a PseudoColor visual with a pre-allocated color cube.) The next best thing is a PseudoColor visual of any type. After that come the non-colormappable visuals, and non-color visuals. */ if ((visual = pick_best_visual_of_class (screen, TrueColor)) && visual_depth (screen, visual) >= 16) return visual; } #define TRY_CLASS(CLASS) \ if ((visual = pick_best_visual_of_class (screen, CLASS)) && \ (!color_only || visual_depth(screen, visual) > 1)) \ return visual TRY_CLASS(PseudoColor); TRY_CLASS(TrueColor); TRY_CLASS(DirectColor); TRY_CLASS(StaticColor); if (!color_only) { TRY_CLASS(GrayScale); TRY_CLASS(StaticGray); } #undef TRY_CLASS visual = DefaultVisualOfScreen (screen); if (!color_only || visual_depth(screen, visual) > 1) return visual; else return 0; } static Visual * pick_mono_visual (Screen *screen) { Display *dpy = DisplayOfScreen (screen); XVisualInfo vi_in, *vi_out; int out_count; vi_in.depth = 1; vi_in.screen = screen_number (screen); vi_out = XGetVisualInfo (dpy, (VisualDepthMask | VisualScreenMask), &vi_in, &out_count); if (vi_out) { Visual *v = (out_count > 0 ? vi_out [0].visual : 0); if (v && vi_out[0].depth != 1) v = 0; XFree ((char *) vi_out); return v; } else return 0; } static Visual * pick_best_visual_of_class (Screen *screen, int visual_class) { /* The best visual of a class is the one which on which we can allocate the largest range and number of colors, which means the one with the greatest depth and number of cells. (But actually, for XDaliClock, all visuals of the same class are probably equivalent - either we have writable cells or we don't.) */ Display *dpy = DisplayOfScreen (screen); XVisualInfo vi_in, *vi_out; int out_count; vi_in.class = visual_class; vi_in.screen = screen_number (screen); vi_out = XGetVisualInfo (dpy, (VisualClassMask | VisualScreenMask), &vi_in, &out_count); if (vi_out) { /* choose the 'best' one, if multiple */ int i, best; Visual *visual; /* for (i = 0, best = 0; i < out_count; i++) */ for (i = out_count-1, best = i; i >= 0; i--) /* go backwards */ /* It's better if it's deeper, or if it's the same depth with more cells (does that ever happen? Well, it could...) */ if ((vi_out [i].depth > vi_out [best].depth) || ((vi_out [i].depth == vi_out [best].depth) && (vi_out [i].colormap_size > vi_out [best].colormap_size))) best = i; visual = (best < out_count ? vi_out [best].visual : 0); XFree ((char *) vi_out); return visual; } else return 0; } static Visual * pick_best_gl_visual (Screen *screen) { /* The best visual for GL is a TrueColor visual that is half as deep as the screen. If such a thing doesn't exist, then TrueColor is best. Failing that, the deepest available color visual is best. Compare this function to get_gl_visual() in visual-gl.c. This function tries to find the best GL visual using Xlib calls, whereas that function does the same thing using GLX calls. */ Display *dpy = DisplayOfScreen (screen); XVisualInfo vi_in, *vi_out; int out_count; Visual *result = 0; int ndepths = 0; int *depths = XListDepths (dpy, screen_number (screen), &ndepths); int screen_depth = depths[ndepths]; XFree (depths); vi_in.class = TrueColor; vi_in.screen = screen_number (screen); vi_in.depth = screen_depth / 2; vi_out = XGetVisualInfo (dpy, (VisualClassMask | VisualScreenMask | VisualDepthMask), &vi_in, &out_count); if (out_count > 0) result = vi_out[0].visual; if (vi_out) XFree ((char *) vi_out); if (!result && screen_depth > 24) { /* If it's a 32-deep screen and we didn't find a depth-16 visual, see if there's a depth-12 visual. */ vi_in.class = TrueColor; vi_in.screen = screen_number (screen); vi_in.depth = 12; vi_out = XGetVisualInfo (dpy, (VisualClassMask | VisualScreenMask | VisualDepthMask), &vi_in, &out_count); if (out_count > 0) result = vi_out[0].visual; } if (!result) /* No half-depth TrueColor? Ok, try for any TrueColor (the deepest.) */ result = pick_best_visual_of_class (screen, TrueColor); if (!result) /* No TrueColor? Ok, try for anything. */ result = pick_best_visual (screen, False, False); return result; } Visual * id_to_visual (Screen *screen, int id) { Display *dpy = DisplayOfScreen (screen); XVisualInfo vi_in, *vi_out; int out_count; vi_in.screen = screen_number (screen); vi_in.visualid = id; vi_out = XGetVisualInfo (dpy, (VisualScreenMask | VisualIDMask), &vi_in, &out_count); if (vi_out) { Visual *v = vi_out[0].visual; XFree ((char *) vi_out); return v; } return 0; } int visual_depth (Screen *screen, Visual *visual) { Display *dpy = DisplayOfScreen (screen); XVisualInfo vi_in, *vi_out; int out_count, d; vi_in.screen = screen_number (screen); vi_in.visualid = XVisualIDFromVisual (visual); vi_out = XGetVisualInfo (dpy, VisualScreenMask|VisualIDMask, &vi_in, &out_count); if (! vi_out) abort (); d = vi_out [0].depth; XFree ((char *) vi_out); return d; } #if 0 /* You very probably don't want to be using this. Pixmap depth doesn't refer to the depths of pixmaps, but rather, to the depth of protocol-level on-the-wire pixmap data, that is, XImages. To get this info, you should be looking at XImage->bits_per_pixel instead. (And allocating the data for your XImage structures by multiplying ximage->bytes_per_line by ximage->height.) */ int visual_pixmap_depth (Screen *screen, Visual *visual) { Display *dpy = DisplayOfScreen (screen); int vdepth = visual_depth (screen, visual); int pdepth = vdepth; int i, pfvc = 0; XPixmapFormatValues *pfv = XListPixmapFormats (dpy, &pfvc); /* Return the first matching depth in the pixmap formats. If there are no matching pixmap formats (which shouldn't be able to happen at all) then return the visual depth instead. */ for (i = 0; i < pfvc; i++) if (pfv[i].depth == vdepth) { pdepth = pfv[i].bits_per_pixel; break; } if (pfv) XFree (pfv); return pdepth; } #endif /* 0 */ int visual_class (Screen *screen, Visual *visual) { Display *dpy = DisplayOfScreen (screen); XVisualInfo vi_in, *vi_out; int out_count, c; vi_in.screen = screen_number (screen); vi_in.visualid = XVisualIDFromVisual (visual); vi_out = XGetVisualInfo (dpy, VisualScreenMask|VisualIDMask, &vi_in, &out_count); if (! vi_out) abort (); c = vi_out [0].class; XFree ((char *) vi_out); return c; } Bool has_writable_cells (Screen *screen, Visual *visual) { switch (visual_class (screen, visual)) { case GrayScale: /* Mappable grays. */ case PseudoColor: /* Mappable colors. */ case DirectColor: /* Like TrueColor, but with three colormaps: one each for red, green, and blue. */ return True; case StaticGray: /* Fixed grays. */ case TrueColor: /* Fixed colors. */ case StaticColor: /* Like PseudoColor with an unmodifiable colormap. */ return False; default: abort(); return False; } } void describe_visual (FILE *f, Screen *screen, Visual *visual, Bool private_cmap_p) { char n[10]; Display *dpy = DisplayOfScreen (screen); XVisualInfo vi_in, *vi_out; int out_count; vi_in.screen = screen_number (screen); vi_in.visualid = XVisualIDFromVisual (visual); vi_out = XGetVisualInfo (dpy, (VisualScreenMask | VisualIDMask), &vi_in, &out_count); if (! vi_out) abort (); if (private_cmap_p) sprintf(n, "%3d", vi_out->colormap_size); else strcpy(n, "default"); fprintf (f, "0x%02x (%s depth: %2d, cmap: %s)\n", (unsigned int) vi_out->visualid, (vi_out->class == StaticGray ? "StaticGray, " : vi_out->class == StaticColor ? "StaticColor," : vi_out->class == TrueColor ? "TrueColor, " : vi_out->class == GrayScale ? "GrayScale, " : vi_out->class == PseudoColor ? "PseudoColor," : vi_out->class == DirectColor ? "DirectColor," : "UNKNOWN: "), vi_out->depth, n); XFree ((char *) vi_out); } int screen_number (Screen *screen) { Display *dpy = DisplayOfScreen (screen); int i; for (i = 0; i < ScreenCount (dpy); i++) if (ScreenOfDisplay (dpy, i) == screen) return i; abort (); return 0; } int visual_cells (Screen *screen, Visual *visual) { Display *dpy = DisplayOfScreen (screen); XVisualInfo vi_in, *vi_out; int out_count, c; vi_in.screen = screen_number (screen); vi_in.visualid = XVisualIDFromVisual (visual); vi_out = XGetVisualInfo (dpy, VisualScreenMask|VisualIDMask, &vi_in, &out_count); if (! vi_out) abort (); c = vi_out [0].colormap_size; XFree ((char *) vi_out); return c; } Visual * find_similar_visual(Screen *screen, Visual *old_visual) { Display *dpy = DisplayOfScreen (screen); XVisualInfo vi_in, *vi_out; Visual *result = 0; int out_count; vi_in.screen = screen_number (screen); vi_in.class = visual_class (screen, old_visual); vi_in.depth = visual_depth (screen, old_visual); /* Look for a visual of the same class and depth. */ vi_out = XGetVisualInfo (dpy, (VisualScreenMask | VisualClassMask | VisualDepthMask), &vi_in, &out_count); if (vi_out && out_count > 0) result = vi_out[0].visual; if (vi_out) XFree (vi_out); vi_out = 0; /* Failing that, look for a visual of the same class. */ if (!result) { vi_out = XGetVisualInfo (dpy, (VisualScreenMask | VisualClassMask), &vi_in, &out_count); if (vi_out && out_count > 0) result = vi_out[0].visual; if (vi_out) XFree (vi_out); vi_out = 0; } /* Failing that, return the default visual. */ if (!result) result = DefaultVisualOfScreen (screen); return result; } unicode-screensaver-0.5.1/utils/grabscreen.h0000644000175000017500000001006412523334521016027 00000000000000/* xscreensaver, Copyright (c) 1992-2006 Jamie Zawinski * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided that * the above copyright notice appear in all copies and that both that * copyright notice and this permission notice appear in supporting * documentation. No representations are made about the suitability of this * software for any purpose. It is provided "as is" without express or * implied warranty. */ #ifndef __GRABSCREEN_H__ #define __GRABSCREEN_H__ /* This will write an image onto the given Drawable. The Drawable (arg 3) may be a Window or a Pixmap. The Window must be the top-level window. The image *may or may not* be written to the window, though it will definitely be written to the drawable. It's fine for args 2 and 3 to be the same window, or for arg 2 to be a Window, and arg 3 to be a Pixmap. The loaded image might be from a file, or from a screen shot of the desktop, or from the system's video input, depending on user preferences. When the callback is called, the image data will have been loaded into the given drawable. Copy `name' if you want to keep it. If it is from a file, then the `filename' argument will be the name of the file. It may be NULL. If you want to keep this string, copy it. The size and position of the image is in the `geometry' arg. The image will generally have been scaled up to fit the window, but if a loaded file had a different aspect ratio than the window, it will have been centered, and the returned coords will describe that. Many colors may be allocated from the window's colormap. */ extern void load_image_async (Screen *, Window, Drawable, void (*callback) (Screen *, Window, Drawable, const char *name, XRectangle *geometry, void *closure), void *closure); /* A utility wrapper around load_image_async() that is simpler if you are only loading a single image at a time: just keep calling it periodically until it returns NULL. When it does, the image has been loaded. */ typedef struct async_load_state async_load_state; extern async_load_state *load_image_async_simple (async_load_state *, Screen *, Window top_level, Drawable target, char **filename_ret, XRectangle *geometry_ret); /* Whether one should use GCSubwindowMode when drawing on this window (assuming a screen image has been grabbed onto it.) Yes, this is a total kludge. */ extern Bool use_subwindow_mode_p(Screen *screen, Window window); /* Whether the given window is: - the real root window; - the virtual root window; - a direct child of the root window; - a direct child of the window manager's decorations. */ extern Bool top_level_window_p(Screen *screen, Window window); /* Don't call this: this is for the "xscreensaver-getimage" program only. */ extern void grab_screen_image_internal (Screen *, Window); /* Don't use these: this is how "xscreensaver-getimage" and "grabclient.c" pass the file name around. */ #define XA_XSCREENSAVER_IMAGE_FILENAME "_SCREENSAVER_IMAGE_FILENAME" #define XA_XSCREENSAVER_IMAGE_GEOMETRY "_SCREENSAVER_IMAGE_GEOMETRY" /* For debugging: turn on verbosity. */ extern void grabscreen_verbose (void); #ifdef HAVE_COCOA /* Don't use these: internal interface of grabclient.c. */ extern void osx_grab_desktop_image (Screen *, Window, Drawable); extern Bool osx_load_image_file (Screen *, Window, Drawable, const char *filename, XRectangle *geom_ret); #endif /* HAVE_COCOA */ #endif /* __GRABSCREEN_H__ */ unicode-screensaver-0.5.1/utils/hsv.h0000644000175000017500000000174612523334521014523 00000000000000/* xscreensaver, Copyright (c) 1992, 1997 Jamie Zawinski * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided that * the above copyright notice appear in all copies and that both that * copyright notice and this permission notice appear in supporting * documentation. No representations are made about the suitability of this * software for any purpose. It is provided "as is" without express or * implied warranty. */ #ifndef __HSV_H__ #define __HSV_H__ /* Converts between RGB and HSV color spaces. R, G, and B are in the range 0 - 65535; H is in the range 0 - 360; S and V are in the range 0.0 - 1.0. */ extern void hsv_to_rgb (int h, double s, double v, unsigned short *r, unsigned short *g, unsigned short *b); extern void rgb_to_hsv (unsigned short r, unsigned short g, unsigned short b, int *h, double *s, double *v); #endif /* __HSV_H__ */ unicode-screensaver-0.5.1/utils/visual.h0000644000175000017500000000273112523334521015221 00000000000000/* xscreensaver, Copyright (c) 1993-2000 by Jamie Zawinski * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided that * the above copyright notice appear in all copies and that both that * copyright notice and this permission notice appear in supporting * documentation. No representations are made about the suitability of this * software for any purpose. It is provided "as is" without express or * implied warranty. */ #ifndef __VISUAL_H__ #define __VISUAL_H__ extern Visual *get_visual (Screen *, const char *name, Bool, Bool); extern Visual *get_visual_resource (Screen *, char *, char *, Bool); extern int visual_depth (Screen *, Visual *); /* extern int visual_pixmap_depth (Screen *, Visual *); */ extern int visual_class (Screen *, Visual *); extern int visual_cells (Screen *, Visual *); extern int screen_number (Screen *); extern Visual *find_similar_visual (Screen *, Visual *old); extern void describe_visual (FILE *f, Screen *, Visual *, Bool private_cmap_p); extern Visual *get_overlay_visual (Screen *, unsigned long *pixel_return); extern Bool has_writable_cells (Screen *, Visual *); extern Visual *id_to_visual (Screen *, int); extern Visual *get_gl_visual (Screen *); extern void describe_gl_visual (FILE *, Screen *, Visual *, Bool priv_cmap_p); extern Bool validate_gl_visual (FILE *, Screen *, const char *, Visual *); #endif /* __VISUAL_H__ */ unicode-screensaver-0.5.1/utils/utils.h0000644000175000017500000000151012523334521015050 00000000000000/* xscreensaver, Copyright (c) 1997, 2006 Jamie Zawinski * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided that * the above copyright notice appear in all copies and that both that * copyright notice and this permission notice appear in supporting * documentation. No representations are made about the suitability of this * software for any purpose. It is provided "as is" without express or * implied warranty. */ #ifdef HAVE_CONFIG_H # include "config.h" #endif #include #include #include #include #ifdef HAVE_COCOA # include "jwxyz.h" #else /* !HAVE_COCOA - real X11 */ # include # include # include #endif /* !HAVE_COCOA */ unicode-screensaver-0.5.1/utils/usleep.h0000644000175000017500000000137312523334521015214 00000000000000/* xscreensaver, Copyright (c) 1992, 1996 Jamie Zawinski * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided that * the above copyright notice appear in all copies and that both that * copyright notice and this permission notice appear in supporting * documentation. No representations are made about the suitability of this * software for any purpose. It is provided "as is" without express or * implied warranty. */ #ifndef __SCREENHACK_USLEEP_H__ #define __SCREENHACK_USLEEP_H__ extern void screenhack_usleep (unsigned long usecs); #undef usleep #define usleep(usecs) screenhack_usleep(usecs) #endif /* __SCREENHACK_USLEEP_H__ */ unicode-screensaver-0.5.1/utils/yarandom.c0000644000175000017500000001131712523334521015523 00000000000000/* yarandom.c -- Yet Another Random Number Generator. * Copyright (c) 1997-2010 by Jamie Zawinski * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided that * the above copyright notice appear in all copies and that both that * copyright notice and this permission notice appear in supporting * documentation. No representations are made about the suitability of this * software for any purpose. It is provided "as is" without express or * implied warranty. */ /* The unportable mess that is rand(), random(), drand48() and friends led me to ask Phil Karlton what the Right Thing to Do was. He responded with this. It is non-cryptographically secure, reasonably random (more so than anything that is in any C library), and very fast. I don't understand how it works at all, but he says "look at Knuth, Vol. 2 (original edition), page 26, Algorithm A. In this case n=55, k=24 and m=2^32." So there you have it. --------------------------- Note: xlockmore 4.03a10 uses this very simple RNG: if ((seed = seed % 44488 * 48271 - seed / 44488 * 3399) < 0) seed += 2147483647; return seed-1; of which it says ``Dr. Park's algorithm published in the Oct. '88 ACM "Random Number Generators: Good Ones Are Hard To Find" His version available at ftp://cs.wm.edu/pub/rngs.tar Present form by many authors.'' Karlton says: ``the usual problem with that kind of RNG turns out to be unexepected short cycles for some word lengths.'' Karlton's RNG is faster, since it does three adds and two stores, while the xlockmore RNG does two multiplies, two divides, three adds, and one store. Compiler optimizations make a big difference here: gcc -O: difference is 1.2x. gcc -O2: difference is 1.4x. gcc -O3: difference is 1.5x. SGI cc -O: difference is 2.4x. SGI cc -O2: difference is 2.4x. SGI cc -O3: difference is 5.1x. Irix 6.2; Indy r5k; SGI cc version 6; gcc version 2.7.2.1. */ #ifdef HAVE_CONFIG_H # include "config.h" #endif #ifdef HAVE_UNISTD_H # include /* for getpid() */ #endif #include /* for gettimeofday() */ #include "yarandom.h" # undef ya_rand_init /* The following 'random' numbers are taken from CRC, 18th Edition, page 622. Each array element was taken from the corresponding line in the table, except that a[0] was from line 100. 8s and 9s in the table were simply skipped. The high order digit was taken mod 4. */ #define VectorSize 55 static unsigned int a[VectorSize] = { 035340171546, 010401501101, 022364657325, 024130436022, 002167303062, /* 5 */ 037570375137, 037210607110, 016272055420, 023011770546, 017143426366, /* 10 */ 014753657433, 021657231332, 023553406142, 004236526362, 010365611275, /* 14 */ 007117336710, 011051276551, 002362132524, 001011540233, 012162531646, /* 20 */ 007056762337, 006631245521, 014164542224, 032633236305, 023342700176, /* 25 */ 002433062234, 015257225043, 026762051606, 000742573230, 005366042132, /* 30 */ 012126416411, 000520471171, 000725646277, 020116577576, 025765742604, /* 35 */ 007633473735, 015674255275, 017555634041, 006503154145, 021576344247, /* 40 */ 014577627653, 002707523333, 034146376720, 030060227734, 013765414060, /* 45 */ 036072251540, 007255221037, 024364674123, 006200353166, 010126373326, /* 50 */ 015664104320, 016401041535, 016215305520, 033115351014, 017411670323 /* 55 */ }; static int i1, i2; unsigned int ya_random (void) { register int ret = a[i1] + a[i2]; a[i1] = ret; if (++i1 >= VectorSize) i1 = 0; if (++i2 >= VectorSize) i2 = 0; return ret; } void ya_rand_init(unsigned int seed) { int i; if (seed == 0) { struct timeval tp; #ifdef GETTIMEOFDAY_TWO_ARGS struct timezone tzp; gettimeofday(&tp, &tzp); #else gettimeofday(&tp); #endif /* Since the multiplications will have a larger effect on the upper bits than the lower bits, after every addition in the seed, perform a bitwise rotate by an odd number, resulting in a better distribution of randomness throughout the bits. -- Brian Carlson, 2010. */ #define ROT(X,N) (((X)<<(N)) | ((X)>>((sizeof(unsigned int)*8)-(N)))) seed = (999 * tp.tv_sec); seed = ROT (seed, 11); seed += (1001 * tp.tv_usec); seed = ROT (seed, 7); seed += (1003 * getpid()); seed = ROT (seed, 13); } a[0] += seed; for (i = 1; i < VectorSize; i++) { seed = seed*999; seed = ROT (seed, 9); seed += a[i-1]*1001; seed = ROT (seed, 15); a[i] += seed; } i1 = a[0] % VectorSize; i2 = (i1 + 24) % VectorSize; } unicode-screensaver-0.5.1/utils/vroot.h0000644000175000017500000001413212523334521015065 00000000000000/* -*- Mode: C; tab-width: 2 -*- */ /*****************************************************************************/ /** Copyright 1991 by Andreas Stolcke **/ /** Copyright 1990 by Solbourne Computer Inc. **/ /** Longmont, Colorado **/ /** **/ /** All Rights Reserved **/ /** **/ /** Permission to use, copy, modify, and distribute this software and **/ /** its documentation for any purpose and without fee is hereby **/ /** granted, provided that the above copyright notice appear in all **/ /** copies and that both that copyright notice and this permis- **/ /** sion notice appear in supporting documentation, and that the **/ /** name of Solbourne not be used in advertising **/ /** in publicity pertaining to distribution of the software without **/ /** specific, written prior permission. **/ /** **/ /** ANDREAS STOLCKE AND SOLBOURNE COMPUTER INC. DISCLAIMS ALL WARRANTIES **/ /** WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF **/ /** MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL ANDREAS STOLCKE **/ /** OR SOLBOURNE BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL **/ /** DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA **/ /** OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER **/ /** TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE **/ /** OR PERFORMANCE OF THIS SOFTWARE. **/ /*****************************************************************************/ /* * vroot.h -- Virtual Root Window handling header file * * This header file redefines the X11 macros RootWindow and DefaultRootWindow, * making them look for a virtual root window as provided by certain `virtual' * window managers like swm and tvtwm. If none is found, the ordinary root * window is returned, thus retaining backward compatibility with standard * window managers. * The function implementing the virtual root lookup remembers the result of * its last invocation to avoid overhead in the case of repeated calls * on the same display and screen arguments. * The lookup code itself is taken from Tom LaStrange's ssetroot program. * * Most simple root window changing X programs can be converted to using * virtual roots by just including * * #include * * after all the X11 header files. It has been tested on such popular * X clients as xphoon, xfroot, xloadimage, and xaqua. * It also works with the core clients xprop, xwininfo, xwd, and editres * (and is necessary to get those clients working under tvtwm). * It does NOT work with xsetroot; get the xsetroot replacement included in * the tvtwm distribution instead. * * Andreas Stolcke , 9/7/90 * - replaced all NULL's with properly cast 0's, 5/6/91 * - free children list (suggested by Mark Martin ), 5/16/91 * - include X11/Xlib.h and support RootWindowOfScreen, too 9/17/91 * * Jamie Zawinski , 28-Apr-1997 * - use ANSI C * * Jamie Zawinski , 3-Sep-2003 * - if the environment variable "XSCREENSAVER_WINDOW" is set, use that * as the root window instead of searching for __SWM_VROOT. * * Jamie Zawinski , 14-Aug-2004 * - changes to get gcc to stop whining about "type punning". * * Jamie Zawinski , 16-Dec-2004 * - fixed that last fix. */ #ifndef _VROOT_H_ #define _VROOT_H_ #define _XSCREENSAVER_VROOT_H_ #if !defined(lint) && !defined(SABER) static const char vroot_rcsid[] = "#Id: vroot.h,v 1.8 2004/12/16 05:33:54 jwz Exp #" "\n" "#Id: vroot.h,v 1.4 1991/09/30 19:23:16 stolcke Exp stolcke #"; #endif #include #include #include static Window #ifdef __STDC__ /* ANSIfication added by jwz, to avoid superfluous warnings. */ VirtualRootWindowOfScreen(Screen *screen) #else /* !__STDC__ */ VirtualRootWindowOfScreen(screen) Screen *screen; #endif /* !__STDC__ */ { static Screen *save_screen = (Screen *)0; static Window root = (Window)0; if (screen != save_screen) { Display *dpy = DisplayOfScreen(screen); Atom __SWM_VROOT = None; int i; Window rootReturn, parentReturn, *children; unsigned int numChildren; /* first check for a hex or decimal window ID in the environment */ const char *xss_id = getenv("XSCREENSAVER_WINDOW"); if (xss_id && *xss_id) { unsigned long id = 0; char c; if (1 == sscanf (xss_id, " 0x%lx %c", &id, &c) || 1 == sscanf (xss_id, " %lu %c", &id, &c)) { root = (Window) id; save_screen = screen; return root; } } root = RootWindowOfScreen(screen); /* go look for a virtual root */ __SWM_VROOT = XInternAtom(dpy, "__SWM_VROOT", False); if (XQueryTree(dpy, root, &rootReturn, &parentReturn, &children, &numChildren)) { for (i = 0; i < numChildren; i++) { Atom actual_type; int actual_format; unsigned long nitems, bytesafter; unsigned char *newRoot = 0; if (XGetWindowProperty(dpy, children[i], __SWM_VROOT, 0, 1, False, XA_WINDOW, &actual_type, &actual_format, &nitems, &bytesafter, &newRoot) == Success && newRoot) { root = *((Window *) newRoot); break; } } if (children) XFree((char *)children); } save_screen = screen; } return root; } #undef RootWindowOfScreen #define RootWindowOfScreen(s) VirtualRootWindowOfScreen(s) #undef RootWindow #define RootWindow(dpy,screen) VirtualRootWindowOfScreen(ScreenOfDisplay(dpy,screen)) #undef DefaultRootWindow #define DefaultRootWindow(dpy) VirtualRootWindowOfScreen(DefaultScreenOfDisplay(dpy)) #endif /* _VROOT_H_ */ unicode-screensaver-0.5.1/utils/resources.h0000644000175000017500000000276312523334521015735 00000000000000/* xscreensaver, Copyright (c) 1992, 1997, 2001, 2003, 2006 * Jamie Zawinski * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided that * the above copyright notice appear in all copies and that both that * copyright notice and this permission notice appear in supporting * documentation. No representations are made about the suitability of this * software for any purpose. It is provided "as is" without express or * implied warranty. */ #ifndef __XSCREENSAVER_RESOURCES_H__ #define __XSCREENSAVER_RESOURCES_H__ extern char *get_string_resource (Display*,char*,char*); extern Bool get_boolean_resource (Display*,char*,char*); extern int get_integer_resource (Display*,char*,char*); extern double get_float_resource (Display*,char*,char*); extern unsigned int get_pixel_resource (Display*,Colormap,char*,char*); extern unsigned int get_minutes_resource (Display*,char*,char*); extern unsigned int get_seconds_resource (Display*,char*,char*); extern int parse_time (const char *string, Bool seconds_default_p, Bool silent_p); extern Pixmap xscreensaver_logo (Screen *screen, Visual *visual, Drawable drawable, Colormap cmap, unsigned long background_color, unsigned long **pixels_ret, int *npixels_ret, Pixmap *mask_ret, Bool big_p); #endif /* __XSCREENSAVER_RESOURCES_H__ */ unicode-screensaver-0.5.1/utils/usleep.c0000644000175000017500000000326312523334521015207 00000000000000/* xscreensaver, Copyright (c) 1992, 1996, 1997, 2003 * Jamie Zawinski * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided that * the above copyright notice appear in all copies and that both that * copyright notice and this permission notice appear in supporting * documentation. No representations are made about the suitability of this * software for any purpose. It is provided "as is" without express or * implied warranty. */ #ifdef HAVE_CONFIG_H # include "config.h" #else /* !HAVE_CONFIG_H */ # ifndef NO_SELECT # define HAVE_SELECT # endif #endif /* !HAVE_CONFIG_H */ #ifdef __STDC__ # include #endif #ifdef HAVE_UNISTD_H # include #endif #if defined(VMS) # include # include # include #elif defined(HAVE_SELECT) # include /* for struct timeval */ #endif #ifdef __SCREENHACK_USLEEP_H__ ERROR, do not include that here #endif extern void screenhack_usleep (unsigned long usecs); /* suppress warning */ void screenhack_usleep (unsigned long usecs) { # if defined(VMS) float seconds = ((float) usecs)/1000000.0; unsigned long int statvms = lib$wait(&seconds); #elif defined(HAVE_SELECT) /* usleep() doesn't exist everywhere, and select() is faster anyway. */ struct timeval tv; tv.tv_sec = usecs / 1000000L; tv.tv_usec = usecs % 1000000L; (void) select (0, 0, 0, 0, &tv); #else /* !VMS && !HAVE_SELECT */ /* If you don't have select() or usleep(), I guess you lose... Maybe you have napms() instead? Let me know. */ usleep (usecs); #endif /* !VMS && !HAVE_SELECT */ } unicode-screensaver-0.5.1/utils/resources.c0000644000175000017500000001523212523334521015723 00000000000000/* xscreensaver, Copyright (c) 1992, 1997, 1998, 2001, 2003, 2006 * Jamie Zawinski * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided that * the above copyright notice appear in all copies and that both that * copyright notice and this permission notice appear in supporting * documentation. No representations are made about the suitability of this * software for any purpose. It is provided "as is" without express or * implied warranty. */ #include "utils.h" #include "resources.h" extern char *progname; #ifndef HAVE_COCOA #include /* These are the Xlib/Xrm versions of these functions. The Cocoa versions are on OSX/XScreenSaverView.m. */ extern char *progclass; extern XrmDatabase XtDatabase (Display *); static unsigned int get_time_resource (Display *dpy, char *res_name, char *res_class, Bool sec_p); #ifndef isupper # define isupper(c) ((c) >= 'A' && (c) <= 'Z') #endif #ifndef _tolower # define _tolower(c) ((c) - 'A' + 'a') #endif char * get_string_resource (Display *dpy, char *res_name, char *res_class) { XrmValue value; char *type; char full_name [1024], full_class [1024]; strcpy (full_name, progname); strcat (full_name, "."); strcat (full_name, res_name); strcpy (full_class, progclass); strcat (full_class, "."); strcat (full_class, res_class); if (XrmGetResource (XtDatabase (dpy), full_name, full_class, &type, &value)) { char *str = (char *) malloc (value.size + 1); strncpy (str, (char *) value.addr, value.size); str [value.size] = 0; return str; } return 0; } Bool get_boolean_resource (Display *dpy, char *res_name, char *res_class) { char *tmp, buf [100]; char *s = get_string_resource (dpy, res_name, res_class); char *os = s; if (! s) return 0; for (tmp = buf; *s; s++) *tmp++ = isupper (*s) ? _tolower (*s) : *s; *tmp = 0; free (os); while (*buf && (buf[strlen(buf)-1] == ' ' || buf[strlen(buf)-1] == '\t')) buf[strlen(buf)-1] = 0; if (!strcmp (buf, "on") || !strcmp (buf, "true") || !strcmp (buf, "yes")) return 1; if (!strcmp (buf,"off") || !strcmp (buf, "false") || !strcmp (buf,"no")) return 0; fprintf (stderr, "%s: %s must be boolean, not %s.\n", progname, res_name, buf); return 0; } int get_integer_resource (Display *dpy, char *res_name, char *res_class) { int val; char c, *s = get_string_resource (dpy, res_name, res_class); char *ss = s; if (!s) return 0; while (*ss && *ss <= ' ') ss++; /* skip whitespace */ if (ss[0] == '0' && (ss[1] == 'x' || ss[1] == 'X')) /* 0x: parse as hex */ { if (1 == sscanf (ss+2, "%x %c", (unsigned int *) &val, &c)) { free (s); return val; } } else /* else parse as dec */ { if (1 == sscanf (ss, "%d %c", &val, &c)) { free (s); return val; } } fprintf (stderr, "%s: %s must be an integer, not %s.\n", progname, res_name, s); free (s); return 0; } double get_float_resource (Display *dpy, char *res_name, char *res_class) { double val; char c, *s = get_string_resource (dpy, res_name, res_class); if (! s) return 0.0; if (1 == sscanf (s, " %lf %c", &val, &c)) { free (s); return val; } fprintf (stderr, "%s: %s must be a float, not %s.\n", progname, res_name, s); free (s); return 0.0; } #endif /* !HAVE_COCOA */ /* These functions are the same with Xlib and Cocoa: */ unsigned int get_pixel_resource (Display *dpy, Colormap cmap, char *res_name, char *res_class) { XColor color; char *s = get_string_resource (dpy, res_name, res_class); char *s2; Bool ok = True; if (!s) goto DEFAULT; for (s2 = s + strlen(s) - 1; s2 > s; s2--) if (*s2 == ' ' || *s2 == '\t') *s2 = 0; else break; if (! XParseColor (dpy, cmap, s, &color)) { fprintf (stderr, "%s: can't parse color %s", progname, s); ok = False; goto DEFAULT; } if (! XAllocColor (dpy, cmap, &color)) { fprintf (stderr, "%s: couldn't allocate color %s", progname, s); ok = False; goto DEFAULT; } free (s); return color.pixel; DEFAULT: if (s) free (s); { Bool black_p = (strlen(res_class) >= 10 && !strcasecmp ("Background", res_class + strlen(res_class) - 10)); if (!ok) fprintf (stderr, ": using %s.\n", (black_p ? "black" : "white")); color.flags = DoRed|DoGreen|DoBlue; color.red = color.green = color.blue = (black_p ? 0 : 0xFFFF); if (XAllocColor (dpy, cmap, &color)) return color.pixel; else { fprintf (stderr, "%s: couldn't allocate %s either!\n", progname, (black_p ? "black" : "white")); /* We can't use BlackPixel/WhitePixel here, because we don't know what screen we're allocating on (only an issue when running inside the xscreensaver daemon: for hacks, DefaultScreen is fine.) */ return 0; } } } int parse_time (const char *string, Bool seconds_default_p, Bool silent_p) { unsigned int h, m, s; char c; if (3 == sscanf (string, " %u : %2u : %2u %c", &h, &m, &s, &c)) ; else if (2 == sscanf (string, " : %2u : %2u %c", &m, &s, &c) || 2 == sscanf (string, " %u : %2u %c", &m, &s, &c)) h = 0; else if (1 == sscanf (string, " : %2u %c", &s, &c)) h = m = 0; else if (1 == sscanf (string, " %u %c", (seconds_default_p ? &s : &m), &c)) { h = 0; if (seconds_default_p) m = 0; else s = 0; } else { if (! silent_p) fprintf (stderr, "%s: invalid time interval specification \"%s\".\n", progname, string); return -1; } if (s >= 60 && (h != 0 || m != 0)) { if (! silent_p) fprintf (stderr, "%s: seconds > 59 in \"%s\".\n", progname, string); return -1; } if (m >= 60 && h > 0) { if (! silent_p) fprintf (stderr, "%s: minutes > 59 in \"%s\".\n", progname, string); return -1; } return ((h * 60 * 60) + (m * 60) + s); } static unsigned int get_time_resource (Display *dpy, char *res_name, char *res_class, Bool sec_p) { int val; char *s = get_string_resource (dpy, res_name, res_class); if (!s) return 0; val = parse_time (s, sec_p, False); free (s); return (val < 0 ? 0 : val); } unsigned int get_seconds_resource (Display *dpy, char *res_name, char *res_class) { return get_time_resource (dpy, res_name, res_class, True); } unsigned int get_minutes_resource (Display *dpy, char *res_name, char *res_class) { return get_time_resource (dpy, res_name, res_class, False); } unicode-screensaver-0.5.1/configure0000755000175000017500000164504613306043306014327 00000000000000#! /bin/sh # Guess values for system-dependent variables and create Makefiles. # Generated by GNU Autoconf 2.69 for unicode-screensaver 0.5.1. # # Report bugs to . # # # Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc. # # # This configure script is free software; the Free Software Foundation # gives unlimited permission to copy, distribute and modify it. ## -------------------- ## ## M4sh Initialization. ## ## -------------------- ## # Be more Bourne compatible DUALCASE=1; export DUALCASE # for MKS sh if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : emulate sh NULLCMD=: # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' setopt NO_GLOB_SUBST else case `(set -o) 2>/dev/null` in #( *posix*) : set -o posix ;; #( *) : ;; esac fi as_nl=' ' export as_nl # Printing a long string crashes Solaris 7 /usr/bin/printf. as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo # Prefer a ksh shell builtin over an external printf program on Solaris, # but without wasting forks for bash or zsh. if test -z "$BASH_VERSION$ZSH_VERSION" \ && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then as_echo='print -r --' as_echo_n='print -rn --' elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then as_echo='printf %s\n' as_echo_n='printf %s' else if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' as_echo_n='/usr/ucb/echo -n' else as_echo_body='eval expr "X$1" : "X\\(.*\\)"' as_echo_n_body='eval arg=$1; case $arg in #( *"$as_nl"*) expr "X$arg" : "X\\(.*\\)$as_nl"; arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; esac; expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" ' export as_echo_n_body as_echo_n='sh -c $as_echo_n_body as_echo' fi export as_echo_body as_echo='sh -c $as_echo_body as_echo' fi # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then PATH_SEPARATOR=: (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || PATH_SEPARATOR=';' } fi # IFS # We need space, tab and new line, in precisely that order. Quoting is # there to prevent editors from complaining about space-tab. # (If _AS_PATH_WALK were called with IFS unset, it would disable word # splitting by setting IFS to empty value.) IFS=" "" $as_nl" # Find who we are. Look in the path if we contain no directory separator. as_myself= case $0 in #(( *[\\/]* ) as_myself=$0 ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break done IFS=$as_save_IFS ;; esac # We did not find ourselves, most probably we were run as `sh COMMAND' # in which case we are not to be found in the path. if test "x$as_myself" = x; then as_myself=$0 fi if test ! -f "$as_myself"; then $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 exit 1 fi # Unset variables that we do not need and which cause bugs (e.g. in # pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" # suppresses any "Segmentation fault" message there. '((' could # trigger a bug in pdksh 5.2.14. for as_var in BASH_ENV ENV MAIL MAILPATH do eval test x\${$as_var+set} = xset \ && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : done PS1='$ ' PS2='> ' PS4='+ ' # NLS nuisances. LC_ALL=C export LC_ALL LANGUAGE=C export LANGUAGE # CDPATH. (unset CDPATH) >/dev/null 2>&1 && unset CDPATH # Use a proper internal environment variable to ensure we don't fall # into an infinite loop, continuously re-executing ourselves. if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then _as_can_reexec=no; export _as_can_reexec; # We cannot yet assume a decent shell, so we have to provide a # neutralization value for shells without unset; and this also # works around shells that cannot unset nonexistent variables. # Preserve -v and -x to the replacement shell. BASH_ENV=/dev/null ENV=/dev/null (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV case $- in # (((( *v*x* | *x*v* ) as_opts=-vx ;; *v* ) as_opts=-v ;; *x* ) as_opts=-x ;; * ) as_opts= ;; esac exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} # Admittedly, this is quite paranoid, since all the known shells bail # out after a failed `exec'. $as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2 as_fn_exit 255 fi # We don't want this to propagate to other subprocesses. { _as_can_reexec=; unset _as_can_reexec;} if test "x$CONFIG_SHELL" = x; then as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then : emulate sh NULLCMD=: # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which # is contrary to our usage. Disable this feature. alias -g '\${1+\"\$@\"}'='\"\$@\"' setopt NO_GLOB_SUBST else case \`(set -o) 2>/dev/null\` in #( *posix*) : set -o posix ;; #( *) : ;; esac fi " as_required="as_fn_return () { (exit \$1); } as_fn_success () { as_fn_return 0; } as_fn_failure () { as_fn_return 1; } as_fn_ret_success () { return 0; } as_fn_ret_failure () { return 1; } exitcode=0 as_fn_success || { exitcode=1; echo as_fn_success failed.; } as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; } as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; } as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; } if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then : else exitcode=1; echo positional parameters were not saved. fi test x\$exitcode = x0 || exit 1 test -x / || exit 1" as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" && test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1 test -n \"\${ZSH_VERSION+set}\${BASH_VERSION+set}\" || ( ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' ECHO=\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO ECHO=\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO PATH=/empty FPATH=/empty; export PATH FPATH test \"X\`printf %s \$ECHO\`\" = \"X\$ECHO\" \\ || test \"X\`print -r -- \$ECHO\`\" = \"X\$ECHO\" ) || exit 1 test \$(( 1 + 1 )) = 2 || exit 1" if (eval "$as_required") 2>/dev/null; then : as_have_required=yes else as_have_required=no fi if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then : else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR as_found=false for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. as_found=: case $as_dir in #( /*) for as_base in sh bash ksh sh5; do # Try only shells that exist, to save several forks. as_shell=$as_dir/$as_base if { test -f "$as_shell" || test -f "$as_shell.exe"; } && { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then : CONFIG_SHELL=$as_shell as_have_required=yes if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then : break 2 fi fi done;; esac as_found=false done $as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } && { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then : CONFIG_SHELL=$SHELL as_have_required=yes fi; } IFS=$as_save_IFS if test "x$CONFIG_SHELL" != x; then : export CONFIG_SHELL # We cannot yet assume a decent shell, so we have to provide a # neutralization value for shells without unset; and this also # works around shells that cannot unset nonexistent variables. # Preserve -v and -x to the replacement shell. BASH_ENV=/dev/null ENV=/dev/null (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV case $- in # (((( *v*x* | *x*v* ) as_opts=-vx ;; *v* ) as_opts=-v ;; *x* ) as_opts=-x ;; * ) as_opts= ;; esac exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} # Admittedly, this is quite paranoid, since all the known shells bail # out after a failed `exec'. $as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2 exit 255 fi if test x$as_have_required = xno; then : $as_echo "$0: This script requires a shell more modern than all" $as_echo "$0: the shells that I found on your system." if test x${ZSH_VERSION+set} = xset ; then $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should" $as_echo "$0: be upgraded to zsh 4.3.4 or later." else $as_echo "$0: Please tell bug-autoconf@gnu.org and $0: mail@joachim-breitner.de about your system, including $0: any error possibly output before this message. Then $0: install a modern shell, or manually run the script $0: under such a shell if you do have one." fi exit 1 fi fi fi SHELL=${CONFIG_SHELL-/bin/sh} export SHELL # Unset more variables known to interfere with behavior of common tools. CLICOLOR_FORCE= GREP_OPTIONS= unset CLICOLOR_FORCE GREP_OPTIONS ## --------------------- ## ## M4sh Shell Functions. ## ## --------------------- ## # as_fn_unset VAR # --------------- # Portably unset VAR. as_fn_unset () { { eval $1=; unset $1;} } as_unset=as_fn_unset # as_fn_set_status STATUS # ----------------------- # Set $? to STATUS, without forking. as_fn_set_status () { return $1 } # as_fn_set_status # as_fn_exit STATUS # ----------------- # Exit the shell with STATUS, even in a "trap 0" or "set -e" context. as_fn_exit () { set +e as_fn_set_status $1 exit $1 } # as_fn_exit # as_fn_mkdir_p # ------------- # Create "$as_dir" as a directory, including parents if necessary. as_fn_mkdir_p () { case $as_dir in #( -*) as_dir=./$as_dir;; esac test -d "$as_dir" || eval $as_mkdir_p || { as_dirs= while :; do case $as_dir in #( *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( *) as_qdir=$as_dir;; esac as_dirs="'$as_qdir' $as_dirs" as_dir=`$as_dirname -- "$as_dir" || $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$as_dir" : 'X\(//\)[^/]' \| \ X"$as_dir" : 'X\(//\)$' \| \ X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$as_dir" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` test -d "$as_dir" && break done test -z "$as_dirs" || eval "mkdir $as_dirs" } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" } # as_fn_mkdir_p # as_fn_executable_p FILE # ----------------------- # Test if FILE is an executable regular file. as_fn_executable_p () { test -f "$1" && test -x "$1" } # as_fn_executable_p # as_fn_append VAR VALUE # ---------------------- # Append the text in VALUE to the end of the definition contained in VAR. Take # advantage of any shell optimizations that allow amortized linear growth over # repeated appends, instead of the typical quadratic growth present in naive # implementations. if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : eval 'as_fn_append () { eval $1+=\$2 }' else as_fn_append () { eval $1=\$$1\$2 } fi # as_fn_append # as_fn_arith ARG... # ------------------ # Perform arithmetic evaluation on the ARGs, and store the result in the # global $as_val. Take advantage of shells that can avoid forks. The arguments # must be portable across $(()) and expr. if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : eval 'as_fn_arith () { as_val=$(( $* )) }' else as_fn_arith () { as_val=`expr "$@" || test $? -eq 1` } fi # as_fn_arith # as_fn_error STATUS ERROR [LINENO LOG_FD] # ---------------------------------------- # Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are # provided, also output the error to LOG_FD, referencing LINENO. Then exit the # script with STATUS, using 1 if that was 0. as_fn_error () { as_status=$1; test $as_status -eq 0 && as_status=1 if test "$4"; then as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 fi $as_echo "$as_me: error: $2" >&2 as_fn_exit $as_status } # as_fn_error if expr a : '\(a\)' >/dev/null 2>&1 && test "X`expr 00001 : '.*\(...\)'`" = X001; then as_expr=expr else as_expr=false fi if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then as_basename=basename else as_basename=false fi if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then as_dirname=dirname else as_dirname=false fi as_me=`$as_basename -- "$0" || $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ X"$0" : 'X\(//\)$' \| \ X"$0" : 'X\(/\)' \| . 2>/dev/null || $as_echo X/"$0" | sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/ q } /^X\/\(\/\/\)$/{ s//\1/ q } /^X\/\(\/\).*/{ s//\1/ q } s/.*/./; q'` # Avoid depending upon Character Ranges. as_cr_letters='abcdefghijklmnopqrstuvwxyz' as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' as_cr_Letters=$as_cr_letters$as_cr_LETTERS as_cr_digits='0123456789' as_cr_alnum=$as_cr_Letters$as_cr_digits as_lineno_1=$LINENO as_lineno_1a=$LINENO as_lineno_2=$LINENO as_lineno_2a=$LINENO eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" && test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || { # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-) sed -n ' p /[$]LINENO/= ' <$as_myself | sed ' s/[$]LINENO.*/&-/ t lineno b :lineno N :loop s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ t loop s/-\n.*// ' >$as_me.lineno && chmod +x "$as_me.lineno" || { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; } # If we had to re-execute with $CONFIG_SHELL, we're ensured to have # already done that, so ensure we don't try to do so again and fall # in an infinite loop. This has already happened in practice. _as_can_reexec=no; export _as_can_reexec # Don't try to exec as it changes $[0], causing all sort of problems # (the dirname of $[0] is not the place where we might find the # original and so on. Autoconf is especially sensitive to this). . "./$as_me.lineno" # Exit status is that of the last command. exit } ECHO_C= ECHO_N= ECHO_T= case `echo -n x` in #((((( -n*) case `echo 'xy\c'` in *c*) ECHO_T=' ';; # ECHO_T is single tab character. xy) ECHO_C='\c';; *) echo `echo ksh88 bug on AIX 6.1` > /dev/null ECHO_T=' ';; esac;; *) ECHO_N='-n';; esac rm -f conf$$ conf$$.exe conf$$.file if test -d conf$$.dir; then rm -f conf$$.dir/conf$$.file else rm -f conf$$.dir mkdir conf$$.dir 2>/dev/null fi if (echo >conf$$.file) 2>/dev/null; then if ln -s conf$$.file conf$$ 2>/dev/null; then as_ln_s='ln -s' # ... but there are two gotchas: # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. # In both cases, we have to default to `cp -pR'. ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || as_ln_s='cp -pR' elif ln conf$$.file conf$$ 2>/dev/null; then as_ln_s=ln else as_ln_s='cp -pR' fi else as_ln_s='cp -pR' fi rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file rmdir conf$$.dir 2>/dev/null if mkdir -p . 2>/dev/null; then as_mkdir_p='mkdir -p "$as_dir"' else test -d ./-p && rmdir ./-p as_mkdir_p=false fi as_test_x='test -x' as_executable_p=as_fn_executable_p # Sed expression to map a string onto a valid CPP name. as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" # Sed expression to map a string onto a valid variable name. as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" SHELL=${CONFIG_SHELL-/bin/sh} test -n "$DJDIR" || exec 7<&0 &1 # Name of the host. # hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status, # so uname gets run too. ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` # # Initializations. # ac_default_prefix=/usr/local ac_clean_files= ac_config_libobj_dir=. LIBOBJS= cross_compiling=no subdirs= MFLAGS= MAKEFLAGS= # Identity of this package. PACKAGE_NAME='unicode-screensaver' PACKAGE_TARNAME='unicode-screensaver' PACKAGE_VERSION='0.5.1' PACKAGE_STRING='unicode-screensaver 0.5.1' PACKAGE_BUGREPORT='mail@joachim-breitner.de' PACKAGE_URL='' ac_unique_file="unicode.c" # Factoring default headers for most tests. ac_includes_default="\ #include #ifdef HAVE_SYS_TYPES_H # include #endif #ifdef HAVE_SYS_STAT_H # include #endif #ifdef STDC_HEADERS # include # include #else # ifdef HAVE_STDLIB_H # include # endif #endif #ifdef HAVE_STRING_H # if !defined STDC_HEADERS && defined HAVE_MEMORY_H # include # endif # include #endif #ifdef HAVE_STRINGS_H # include #endif #ifdef HAVE_INTTYPES_H # include #endif #ifdef HAVE_STDINT_H # include #endif #ifdef HAVE_UNISTD_H # include #endif" ac_subst_vars='am__EXEEXT_FALSE am__EXEEXT_TRUE LTLIBOBJS LIBOBJS FC_LIBS FC_CFLAGS XFT_LIBS XFT_CFLAGS XT_LIBS XT_CFLAGS XMU_LIBS XMU_CFLAGS X11_LIBS X11_CFLAGS PKG_CONFIG_LIBDIR PKG_CONFIG_PATH PKG_CONFIG CPP LT_SYS_LIBRARY_PATH OTOOL64 OTOOL LIPO NMEDIT DSYMUTIL MANIFEST_TOOL RANLIB ac_ct_AR AR DLLTOOL OBJDUMP LN_S NM ac_ct_DUMPBIN DUMPBIN LD FGREP EGREP GREP SED host_os host_vendor host_cpu host build_os build_vendor build_cpu build LIBTOOL am__fastdepCC_FALSE am__fastdepCC_TRUE CCDEPMODE am__nodep AMDEPBACKSLASH AMDEP_FALSE AMDEP_TRUE am__quote am__include DEPDIR OBJEXT EXEEXT ac_ct_CC CPPFLAGS LDFLAGS CFLAGS CC HACK_CONF_DIR DESKTOPDIR HACKDIR AM_BACKSLASH AM_DEFAULT_VERBOSITY AM_DEFAULT_V AM_V am__untar am__tar AMTAR am__leading_dot SET_MAKE AWK mkdir_p MKDIR_P INSTALL_STRIP_PROGRAM STRIP install_sh MAKEINFO AUTOHEADER AUTOMAKE AUTOCONF ACLOCAL VERSION PACKAGE CYGPATH_W am__isrc INSTALL_DATA INSTALL_SCRIPT INSTALL_PROGRAM target_alias host_alias build_alias LIBS ECHO_T ECHO_N ECHO_C DEFS mandir localedir libdir psdir pdfdir dvidir htmldir infodir docdir oldincludedir includedir runstatedir localstatedir sharedstatedir sysconfdir datadir datarootdir libexecdir sbindir bindir program_transform_name prefix exec_prefix PACKAGE_URL PACKAGE_BUGREPORT PACKAGE_STRING PACKAGE_VERSION PACKAGE_TARNAME PACKAGE_NAME PATH_SEPARATOR SHELL' ac_subst_files='' ac_user_opts=' enable_option_checking enable_silent_rules with_hackdir with_desktopdir with_configdir enable_dependency_tracking enable_shared enable_static with_pic enable_fast_install with_aix_soname with_gnu_ld with_sysroot enable_libtool_lock ' ac_precious_vars='build_alias host_alias target_alias CC CFLAGS LDFLAGS LIBS CPPFLAGS LT_SYS_LIBRARY_PATH CPP PKG_CONFIG PKG_CONFIG_PATH PKG_CONFIG_LIBDIR X11_CFLAGS X11_LIBS XMU_CFLAGS XMU_LIBS XT_CFLAGS XT_LIBS XFT_CFLAGS XFT_LIBS FC_CFLAGS FC_LIBS' # Initialize some variables set by options. ac_init_help= ac_init_version=false ac_unrecognized_opts= ac_unrecognized_sep= # The variables have the same names as the options, with # dashes changed to underlines. cache_file=/dev/null exec_prefix=NONE no_create= no_recursion= prefix=NONE program_prefix=NONE program_suffix=NONE program_transform_name=s,x,x, silent= site= srcdir= verbose= x_includes=NONE x_libraries=NONE # Installation directory options. # These are left unexpanded so users can "make install exec_prefix=/foo" # and all the variables that are supposed to be based on exec_prefix # by default will actually change. # Use braces instead of parens because sh, perl, etc. also accept them. # (The list follows the same order as the GNU Coding Standards.) bindir='${exec_prefix}/bin' sbindir='${exec_prefix}/sbin' libexecdir='${exec_prefix}/libexec' datarootdir='${prefix}/share' datadir='${datarootdir}' sysconfdir='${prefix}/etc' sharedstatedir='${prefix}/com' localstatedir='${prefix}/var' runstatedir='${localstatedir}/run' includedir='${prefix}/include' oldincludedir='/usr/include' docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' infodir='${datarootdir}/info' htmldir='${docdir}' dvidir='${docdir}' pdfdir='${docdir}' psdir='${docdir}' libdir='${exec_prefix}/lib' localedir='${datarootdir}/locale' mandir='${datarootdir}/man' ac_prev= ac_dashdash= for ac_option do # If the previous option needs an argument, assign it. if test -n "$ac_prev"; then eval $ac_prev=\$ac_option ac_prev= continue fi case $ac_option in *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;; *=) ac_optarg= ;; *) ac_optarg=yes ;; esac # Accept the important Cygnus configure options, so we can diagnose typos. case $ac_dashdash$ac_option in --) ac_dashdash=yes ;; -bindir | --bindir | --bindi | --bind | --bin | --bi) ac_prev=bindir ;; -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) bindir=$ac_optarg ;; -build | --build | --buil | --bui | --bu) ac_prev=build_alias ;; -build=* | --build=* | --buil=* | --bui=* | --bu=*) build_alias=$ac_optarg ;; -cache-file | --cache-file | --cache-fil | --cache-fi \ | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) ac_prev=cache_file ;; -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) cache_file=$ac_optarg ;; --config-cache | -C) cache_file=config.cache ;; -datadir | --datadir | --datadi | --datad) ac_prev=datadir ;; -datadir=* | --datadir=* | --datadi=* | --datad=*) datadir=$ac_optarg ;; -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \ | --dataroo | --dataro | --datar) ac_prev=datarootdir ;; -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \ | --dataroot=* | --dataroo=* | --dataro=* | --datar=*) datarootdir=$ac_optarg ;; -disable-* | --disable-*) ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && as_fn_error $? "invalid feature name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in *" "enable_$ac_useropt" "*) ;; *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig" ac_unrecognized_sep=', ';; esac eval enable_$ac_useropt=no ;; -docdir | --docdir | --docdi | --doc | --do) ac_prev=docdir ;; -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*) docdir=$ac_optarg ;; -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv) ac_prev=dvidir ;; -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*) dvidir=$ac_optarg ;; -enable-* | --enable-*) ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && as_fn_error $? "invalid feature name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in *" "enable_$ac_useropt" "*) ;; *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig" ac_unrecognized_sep=', ';; esac eval enable_$ac_useropt=\$ac_optarg ;; -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ | --exec | --exe | --ex) ac_prev=exec_prefix ;; -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ | --exec=* | --exe=* | --ex=*) exec_prefix=$ac_optarg ;; -gas | --gas | --ga | --g) # Obsolete; use --with-gas. with_gas=yes ;; -help | --help | --hel | --he | -h) ac_init_help=long ;; -help=r* | --help=r* | --hel=r* | --he=r* | -hr*) ac_init_help=recursive ;; -help=s* | --help=s* | --hel=s* | --he=s* | -hs*) ac_init_help=short ;; -host | --host | --hos | --ho) ac_prev=host_alias ;; -host=* | --host=* | --hos=* | --ho=*) host_alias=$ac_optarg ;; -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht) ac_prev=htmldir ;; -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \ | --ht=*) htmldir=$ac_optarg ;; -includedir | --includedir | --includedi | --included | --include \ | --includ | --inclu | --incl | --inc) ac_prev=includedir ;; -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ | --includ=* | --inclu=* | --incl=* | --inc=*) includedir=$ac_optarg ;; -infodir | --infodir | --infodi | --infod | --info | --inf) ac_prev=infodir ;; -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) infodir=$ac_optarg ;; -libdir | --libdir | --libdi | --libd) ac_prev=libdir ;; -libdir=* | --libdir=* | --libdi=* | --libd=*) libdir=$ac_optarg ;; -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ | --libexe | --libex | --libe) ac_prev=libexecdir ;; -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ | --libexe=* | --libex=* | --libe=*) libexecdir=$ac_optarg ;; -localedir | --localedir | --localedi | --localed | --locale) ac_prev=localedir ;; -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*) localedir=$ac_optarg ;; -localstatedir | --localstatedir | --localstatedi | --localstated \ | --localstate | --localstat | --localsta | --localst | --locals) ac_prev=localstatedir ;; -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*) localstatedir=$ac_optarg ;; -mandir | --mandir | --mandi | --mand | --man | --ma | --m) ac_prev=mandir ;; -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) mandir=$ac_optarg ;; -nfp | --nfp | --nf) # Obsolete; use --without-fp. with_fp=no ;; -no-create | --no-create | --no-creat | --no-crea | --no-cre \ | --no-cr | --no-c | -n) no_create=yes ;; -no-recursion | --no-recursion | --no-recursio | --no-recursi \ | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) no_recursion=yes ;; -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ | --oldin | --oldi | --old | --ol | --o) ac_prev=oldincludedir ;; -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) oldincludedir=$ac_optarg ;; -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) ac_prev=prefix ;; -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) prefix=$ac_optarg ;; -program-prefix | --program-prefix | --program-prefi | --program-pref \ | --program-pre | --program-pr | --program-p) ac_prev=program_prefix ;; -program-prefix=* | --program-prefix=* | --program-prefi=* \ | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) program_prefix=$ac_optarg ;; -program-suffix | --program-suffix | --program-suffi | --program-suff \ | --program-suf | --program-su | --program-s) ac_prev=program_suffix ;; -program-suffix=* | --program-suffix=* | --program-suffi=* \ | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) program_suffix=$ac_optarg ;; -program-transform-name | --program-transform-name \ | --program-transform-nam | --program-transform-na \ | --program-transform-n | --program-transform- \ | --program-transform | --program-transfor \ | --program-transfo | --program-transf \ | --program-trans | --program-tran \ | --progr-tra | --program-tr | --program-t) ac_prev=program_transform_name ;; -program-transform-name=* | --program-transform-name=* \ | --program-transform-nam=* | --program-transform-na=* \ | --program-transform-n=* | --program-transform-=* \ | --program-transform=* | --program-transfor=* \ | --program-transfo=* | --program-transf=* \ | --program-trans=* | --program-tran=* \ | --progr-tra=* | --program-tr=* | --program-t=*) program_transform_name=$ac_optarg ;; -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd) ac_prev=pdfdir ;; -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*) pdfdir=$ac_optarg ;; -psdir | --psdir | --psdi | --psd | --ps) ac_prev=psdir ;; -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*) psdir=$ac_optarg ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil) silent=yes ;; -runstatedir | --runstatedir | --runstatedi | --runstated \ | --runstate | --runstat | --runsta | --runst | --runs \ | --run | --ru | --r) ac_prev=runstatedir ;; -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \ | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \ | --run=* | --ru=* | --r=*) runstatedir=$ac_optarg ;; -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) ac_prev=sbindir ;; -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ | --sbi=* | --sb=*) sbindir=$ac_optarg ;; -sharedstatedir | --sharedstatedir | --sharedstatedi \ | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ | --sharedst | --shareds | --shared | --share | --shar \ | --sha | --sh) ac_prev=sharedstatedir ;; -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ | --sha=* | --sh=*) sharedstatedir=$ac_optarg ;; -site | --site | --sit) ac_prev=site ;; -site=* | --site=* | --sit=*) site=$ac_optarg ;; -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) ac_prev=srcdir ;; -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) srcdir=$ac_optarg ;; -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ | --syscon | --sysco | --sysc | --sys | --sy) ac_prev=sysconfdir ;; -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) sysconfdir=$ac_optarg ;; -target | --target | --targe | --targ | --tar | --ta | --t) ac_prev=target_alias ;; -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) target_alias=$ac_optarg ;; -v | -verbose | --verbose | --verbos | --verbo | --verb) verbose=yes ;; -version | --version | --versio | --versi | --vers | -V) ac_init_version=: ;; -with-* | --with-*) ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && as_fn_error $? "invalid package name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in *" "with_$ac_useropt" "*) ;; *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig" ac_unrecognized_sep=', ';; esac eval with_$ac_useropt=\$ac_optarg ;; -without-* | --without-*) ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && as_fn_error $? "invalid package name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in *" "with_$ac_useropt" "*) ;; *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig" ac_unrecognized_sep=', ';; esac eval with_$ac_useropt=no ;; --x) # Obsolete; use --with-x. with_x=yes ;; -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ | --x-incl | --x-inc | --x-in | --x-i) ac_prev=x_includes ;; -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) x_includes=$ac_optarg ;; -x-libraries | --x-libraries | --x-librarie | --x-librari \ | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) ac_prev=x_libraries ;; -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) x_libraries=$ac_optarg ;; -*) as_fn_error $? "unrecognized option: \`$ac_option' Try \`$0 --help' for more information" ;; *=*) ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` # Reject names that are not valid shell variable names. case $ac_envvar in #( '' | [0-9]* | *[!_$as_cr_alnum]* ) as_fn_error $? "invalid variable name: \`$ac_envvar'" ;; esac eval $ac_envvar=\$ac_optarg export $ac_envvar ;; *) # FIXME: should be removed in autoconf 3.0. $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2 expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2 : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}" ;; esac done if test -n "$ac_prev"; then ac_option=--`echo $ac_prev | sed 's/_/-/g'` as_fn_error $? "missing argument to $ac_option" fi if test -n "$ac_unrecognized_opts"; then case $enable_option_checking in no) ;; fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;; *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;; esac fi # Check all directory arguments for consistency. for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ datadir sysconfdir sharedstatedir localstatedir includedir \ oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ libdir localedir mandir runstatedir do eval ac_val=\$$ac_var # Remove trailing slashes. case $ac_val in */ ) ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'` eval $ac_var=\$ac_val;; esac # Be sure to have absolute directory names. case $ac_val in [\\/$]* | ?:[\\/]* ) continue;; NONE | '' ) case $ac_var in *prefix ) continue;; esac;; esac as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val" done # There might be people who depend on the old broken behavior: `$host' # used to hold the argument of --host etc. # FIXME: To remove some day. build=$build_alias host=$host_alias target=$target_alias # FIXME: To remove some day. if test "x$host_alias" != x; then if test "x$build_alias" = x; then cross_compiling=maybe elif test "x$build_alias" != "x$host_alias"; then cross_compiling=yes fi fi ac_tool_prefix= test -n "$host_alias" && ac_tool_prefix=$host_alias- test "$silent" = yes && exec 6>/dev/null ac_pwd=`pwd` && test -n "$ac_pwd" && ac_ls_di=`ls -di .` && ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` || as_fn_error $? "working directory cannot be determined" test "X$ac_ls_di" = "X$ac_pwd_ls_di" || as_fn_error $? "pwd does not report name of working directory" # Find the source files, if location was not specified. if test -z "$srcdir"; then ac_srcdir_defaulted=yes # Try the directory containing this script, then the parent directory. ac_confdir=`$as_dirname -- "$as_myself" || $as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$as_myself" : 'X\(//\)[^/]' \| \ X"$as_myself" : 'X\(//\)$' \| \ X"$as_myself" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$as_myself" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` srcdir=$ac_confdir if test ! -r "$srcdir/$ac_unique_file"; then srcdir=.. fi else ac_srcdir_defaulted=no fi if test ! -r "$srcdir/$ac_unique_file"; then test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .." as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir" fi ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work" ac_abs_confdir=`( cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg" pwd)` # When building in place, set srcdir=. if test "$ac_abs_confdir" = "$ac_pwd"; then srcdir=. fi # Remove unnecessary trailing slashes from srcdir. # Double slashes in file names in object file debugging info # mess up M-x gdb in Emacs. case $srcdir in */) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;; esac for ac_var in $ac_precious_vars; do eval ac_env_${ac_var}_set=\${${ac_var}+set} eval ac_env_${ac_var}_value=\$${ac_var} eval ac_cv_env_${ac_var}_set=\${${ac_var}+set} eval ac_cv_env_${ac_var}_value=\$${ac_var} done # # Report the --help message. # if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF \`configure' configures unicode-screensaver 0.5.1 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... To assign environment variables (e.g., CC, CFLAGS...), specify them as VAR=VALUE. See below for descriptions of some of the useful variables. Defaults for the options are specified in brackets. Configuration: -h, --help display this help and exit --help=short display options specific to this package --help=recursive display the short help of all the included packages -V, --version display version information and exit -q, --quiet, --silent do not print \`checking ...' messages --cache-file=FILE cache test results in FILE [disabled] -C, --config-cache alias for \`--cache-file=config.cache' -n, --no-create do not create output files --srcdir=DIR find the sources in DIR [configure dir or \`..'] Installation directories: --prefix=PREFIX install architecture-independent files in PREFIX [$ac_default_prefix] --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX [PREFIX] By default, \`make install' will install all the files in \`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify an installation prefix other than \`$ac_default_prefix' using \`--prefix', for instance \`--prefix=\$HOME'. For better control, use the options below. Fine tuning of the installation directories: --bindir=DIR user executables [EPREFIX/bin] --sbindir=DIR system admin executables [EPREFIX/sbin] --libexecdir=DIR program executables [EPREFIX/libexec] --sysconfdir=DIR read-only single-machine data [PREFIX/etc] --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] --localstatedir=DIR modifiable single-machine data [PREFIX/var] --runstatedir=DIR modifiable per-process data [LOCALSTATEDIR/run] --libdir=DIR object code libraries [EPREFIX/lib] --includedir=DIR C header files [PREFIX/include] --oldincludedir=DIR C header files for non-gcc [/usr/include] --datarootdir=DIR read-only arch.-independent data root [PREFIX/share] --datadir=DIR read-only architecture-independent data [DATAROOTDIR] --infodir=DIR info documentation [DATAROOTDIR/info] --localedir=DIR locale-dependent data [DATAROOTDIR/locale] --mandir=DIR man documentation [DATAROOTDIR/man] --docdir=DIR documentation root [DATAROOTDIR/doc/unicode-screensaver] --htmldir=DIR html documentation [DOCDIR] --dvidir=DIR dvi documentation [DOCDIR] --pdfdir=DIR pdf documentation [DOCDIR] --psdir=DIR ps documentation [DOCDIR] _ACEOF cat <<\_ACEOF Program names: --program-prefix=PREFIX prepend PREFIX to installed program names --program-suffix=SUFFIX append SUFFIX to installed program names --program-transform-name=PROGRAM run sed PROGRAM on installed program names System types: --build=BUILD configure for building on BUILD [guessed] --host=HOST cross-compile to build programs to run on HOST [BUILD] _ACEOF fi if test -n "$ac_init_help"; then case $ac_init_help in short | recursive ) echo "Configuration of unicode-screensaver 0.5.1:";; esac cat <<\_ACEOF Optional Features: --disable-option-checking ignore unrecognized --enable/--with options --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) --enable-FEATURE[=ARG] include FEATURE [ARG=yes] --enable-silent-rules less verbose build output (undo: "make V=1") --disable-silent-rules verbose build output (undo: "make V=0") --enable-dependency-tracking do not reject slow dependency extractors --disable-dependency-tracking speeds up one-time build --enable-shared[=PKGS] build shared libraries [default=yes] --enable-static[=PKGS] build static libraries [default=yes] --enable-fast-install[=PKGS] optimize for fast installation [default=yes] --disable-libtool-lock avoid locking (might break parallel builds) Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) Installation options: --with-hackdir=DIR Where to install the hundreds of demo executables. Default: PREFIX/libexec/xscreensaver/ --with-desktopdir=DIR Where to install the hundreds of demo executables. Default: PREFIX/share/applications/screensavers/ --with-configdir=DIR Where to install the data files that describe each of the display modes to the GUI. Default: PREFIX/share/xscreensaver/config/ --with-pic[=PKGS] try to use only PIC/non-PIC objects [default=use both] --with-aix-soname=aix|svr4|both shared library versioning (aka "SONAME") variant to provide on AIX, [default=aix]. --with-gnu-ld assume the C compiler uses GNU ld [default=no] --with-sysroot[=DIR] Search for dependent libraries within DIR (or the compiler's sysroot if not specified). Some influential environment variables: CC C compiler command CFLAGS C compiler flags LDFLAGS linker flags, e.g. -L if you have libraries in a nonstandard directory LIBS libraries to pass to the linker, e.g. -l CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I if you have headers in a nonstandard directory LT_SYS_LIBRARY_PATH User-defined run-time library search path. CPP C preprocessor PKG_CONFIG path to pkg-config utility PKG_CONFIG_PATH directories to add to pkg-config's search path PKG_CONFIG_LIBDIR path overriding pkg-config's built-in search path X11_CFLAGS C compiler flags for X11, overriding pkg-config X11_LIBS linker flags for X11, overriding pkg-config XMU_CFLAGS C compiler flags for XMU, overriding pkg-config XMU_LIBS linker flags for XMU, overriding pkg-config XT_CFLAGS C compiler flags for XT, overriding pkg-config XT_LIBS linker flags for XT, overriding pkg-config XFT_CFLAGS C compiler flags for XFT, overriding pkg-config XFT_LIBS linker flags for XFT, overriding pkg-config FC_CFLAGS C compiler flags for FC, overriding pkg-config FC_LIBS linker flags for FC, overriding pkg-config Use these variables to override the choices made by `configure' or to help it to find libraries and programs with nonstandard names/locations. Report bugs to . _ACEOF ac_status=$? fi if test "$ac_init_help" = "recursive"; then # If there are subdirs, report their specific --help. for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue test -d "$ac_dir" || { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } || continue ac_builddir=. case "$ac_dir" in .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; *) ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` # A ".." for each directory in $ac_dir_suffix. ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` case $ac_top_builddir_sub in "") ac_top_builddir_sub=. ac_top_build_prefix= ;; *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; esac ;; esac ac_abs_top_builddir=$ac_pwd ac_abs_builddir=$ac_pwd$ac_dir_suffix # for backward compatibility: ac_top_builddir=$ac_top_build_prefix case $srcdir in .) # We are building in place. ac_srcdir=. ac_top_srcdir=$ac_top_builddir_sub ac_abs_top_srcdir=$ac_pwd ;; [\\/]* | ?:[\\/]* ) # Absolute name. ac_srcdir=$srcdir$ac_dir_suffix; ac_top_srcdir=$srcdir ac_abs_top_srcdir=$srcdir ;; *) # Relative name. ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix ac_top_srcdir=$ac_top_build_prefix$srcdir ac_abs_top_srcdir=$ac_pwd/$srcdir ;; esac ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix cd "$ac_dir" || { ac_status=$?; continue; } # Check for guested configure. if test -f "$ac_srcdir/configure.gnu"; then echo && $SHELL "$ac_srcdir/configure.gnu" --help=recursive elif test -f "$ac_srcdir/configure"; then echo && $SHELL "$ac_srcdir/configure" --help=recursive else $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 fi || ac_status=$? cd "$ac_pwd" || { ac_status=$?; break; } done fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF unicode-screensaver configure 0.5.1 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. This configure script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it. _ACEOF exit fi ## ------------------------ ## ## Autoconf initialization. ## ## ------------------------ ## # ac_fn_c_try_compile LINENO # -------------------------- # Try to compile conftest.$ac_ext, and return whether this succeeded. ac_fn_c_try_compile () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack rm -f conftest.$ac_objext if { { ac_try="$ac_compile" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_compile") 2>conftest.err ac_status=$? if test -s conftest.err; then grep -v '^ *+' conftest.err >conftest.er1 cat conftest.er1 >&5 mv -f conftest.er1 conftest.err fi $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then : ac_retval=0 else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=1 fi eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno as_fn_set_status $ac_retval } # ac_fn_c_try_compile # ac_fn_c_try_run LINENO # ---------------------- # Try to link conftest.$ac_ext, and return whether this succeeded. Assumes # that executables *can* be run. ac_fn_c_try_run () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack if { { ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_link") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && { ac_try='./conftest$ac_exeext' { { case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_try") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; }; then : ac_retval=0 else $as_echo "$as_me: program exited with status $ac_status" >&5 $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=$ac_status fi rm -rf conftest.dSYM conftest_ipa8_conftest.oo eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno as_fn_set_status $ac_retval } # ac_fn_c_try_run # ac_fn_c_try_link LINENO # ----------------------- # Try to link conftest.$ac_ext, and return whether this succeeded. ac_fn_c_try_link () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack rm -f conftest.$ac_objext conftest$ac_exeext if { { ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_link") 2>conftest.err ac_status=$? if test -s conftest.err; then grep -v '^ *+' conftest.err >conftest.er1 cat conftest.er1 >&5 mv -f conftest.er1 conftest.err fi $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && { test "$cross_compiling" = yes || test -x conftest$ac_exeext }; then : ac_retval=0 else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=1 fi # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would # interfere with the next link command; also delete a directory that is # left behind by Apple's compiler. We do this before executing the actions. rm -rf conftest.dSYM conftest_ipa8_conftest.oo eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno as_fn_set_status $ac_retval } # ac_fn_c_try_link # ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES # ------------------------------------------------------- # Tests whether HEADER exists and can be compiled using the include files in # INCLUDES, setting the cache variable VAR accordingly. ac_fn_c_check_header_compile () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 $as_echo_n "checking for $2... " >&6; } if eval \${$3+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $4 #include <$2> _ACEOF if ac_fn_c_try_compile "$LINENO"; then : eval "$3=yes" else eval "$3=no" fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi eval ac_res=\$$3 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno } # ac_fn_c_check_header_compile # ac_fn_c_try_cpp LINENO # ---------------------- # Try to preprocess conftest.$ac_ext, and return whether this succeeded. ac_fn_c_try_cpp () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack if { { ac_try="$ac_cpp conftest.$ac_ext" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err ac_status=$? if test -s conftest.err; then grep -v '^ *+' conftest.err >conftest.er1 cat conftest.er1 >&5 mv -f conftest.er1 conftest.err fi $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } > conftest.i && { test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || test ! -s conftest.err }; then : ac_retval=0 else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=1 fi eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno as_fn_set_status $ac_retval } # ac_fn_c_try_cpp # ac_fn_c_check_func LINENO FUNC VAR # ---------------------------------- # Tests whether FUNC exists, setting the cache variable VAR accordingly ac_fn_c_check_func () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 $as_echo_n "checking for $2... " >&6; } if eval \${$3+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Define $2 to an innocuous variant, in case declares $2. For example, HP-UX 11i declares gettimeofday. */ #define $2 innocuous_$2 /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $2 (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef $2 /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char $2 (); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ #if defined __stub_$2 || defined __stub___$2 choke me #endif int main () { return $2 (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : eval "$3=yes" else eval "$3=no" fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi eval ac_res=\$$3 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno } # ac_fn_c_check_func cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. It was created by unicode-screensaver $as_me 0.5.1, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ _ACEOF exec 5>>config.log { cat <<_ASUNAME ## --------- ## ## Platform. ## ## --------- ## hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` uname -m = `(uname -m) 2>/dev/null || echo unknown` uname -r = `(uname -r) 2>/dev/null || echo unknown` uname -s = `(uname -s) 2>/dev/null || echo unknown` uname -v = `(uname -v) 2>/dev/null || echo unknown` /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` /bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` /bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` /usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown` /bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` /bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` _ASUNAME as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. $as_echo "PATH: $as_dir" done IFS=$as_save_IFS } >&5 cat >&5 <<_ACEOF ## ----------- ## ## Core tests. ## ## ----------- ## _ACEOF # Keep a trace of the command line. # Strip out --no-create and --no-recursion so they do not pile up. # Strip out --silent because we don't want to record it for future runs. # Also quote any args containing shell meta-characters. # Make two passes to allow for proper duplicate-argument suppression. ac_configure_args= ac_configure_args0= ac_configure_args1= ac_must_keep_next=false for ac_pass in 1 2 do for ac_arg do case $ac_arg in -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil) continue ;; *\'*) ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; esac case $ac_pass in 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;; 2) as_fn_append ac_configure_args1 " '$ac_arg'" if test $ac_must_keep_next = true; then ac_must_keep_next=false # Got value, back to normal. else case $ac_arg in *=* | --config-cache | -C | -disable-* | --disable-* \ | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ | -with-* | --with-* | -without-* | --without-* | --x) case "$ac_configure_args0 " in "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; esac ;; -* ) ac_must_keep_next=true ;; esac fi as_fn_append ac_configure_args " '$ac_arg'" ;; esac done done { ac_configure_args0=; unset ac_configure_args0;} { ac_configure_args1=; unset ac_configure_args1;} # When interrupted or exit'd, cleanup temporary files, and complete # config.log. We remove comments because anyway the quotes in there # would cause problems or look ugly. # WARNING: Use '\'' to represent an apostrophe within the trap. # WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug. trap 'exit_status=$? # Save into config.log some information that might help in debugging. { echo $as_echo "## ---------------- ## ## Cache variables. ## ## ---------------- ##" echo # The following way of writing the cache mishandles newlines in values, ( for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do eval ac_val=\$$ac_var case $ac_val in #( *${as_nl}*) case $ac_var in #( *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; esac case $ac_var in #( _ | IFS | as_nl) ;; #( BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( *) { eval $ac_var=; unset $ac_var;} ;; esac ;; esac done (set) 2>&1 | case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #( *${as_nl}ac_space=\ *) sed -n \ "s/'\''/'\''\\\\'\'''\''/g; s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p" ;; #( *) sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" ;; esac | sort ) echo $as_echo "## ----------------- ## ## Output variables. ## ## ----------------- ##" echo for ac_var in $ac_subst_vars do eval ac_val=\$$ac_var case $ac_val in *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; esac $as_echo "$ac_var='\''$ac_val'\''" done | sort echo if test -n "$ac_subst_files"; then $as_echo "## ------------------- ## ## File substitutions. ## ## ------------------- ##" echo for ac_var in $ac_subst_files do eval ac_val=\$$ac_var case $ac_val in *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; esac $as_echo "$ac_var='\''$ac_val'\''" done | sort echo fi if test -s confdefs.h; then $as_echo "## ----------- ## ## confdefs.h. ## ## ----------- ##" echo cat confdefs.h echo fi test "$ac_signal" != 0 && $as_echo "$as_me: caught signal $ac_signal" $as_echo "$as_me: exit $exit_status" } >&5 rm -f core *.core core.conftest.* && rm -f -r conftest* confdefs* conf$$* $ac_clean_files && exit $exit_status ' 0 for ac_signal in 1 2 13 15; do trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal done ac_signal=0 # confdefs.h avoids OS command line length limits that DEFS can exceed. rm -f -r conftest* confdefs.h $as_echo "/* confdefs.h */" > confdefs.h # Predefined preprocessor variables. cat >>confdefs.h <<_ACEOF #define PACKAGE_NAME "$PACKAGE_NAME" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_TARNAME "$PACKAGE_TARNAME" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_VERSION "$PACKAGE_VERSION" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_STRING "$PACKAGE_STRING" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_URL "$PACKAGE_URL" _ACEOF # Let the site file select an alternate cache file if it wants to. # Prefer an explicitly selected file to automatically selected ones. ac_site_file1=NONE ac_site_file2=NONE if test -n "$CONFIG_SITE"; then # We do not want a PATH search for config.site. case $CONFIG_SITE in #(( -*) ac_site_file1=./$CONFIG_SITE;; */*) ac_site_file1=$CONFIG_SITE;; *) ac_site_file1=./$CONFIG_SITE;; esac elif test "x$prefix" != xNONE; then ac_site_file1=$prefix/share/config.site ac_site_file2=$prefix/etc/config.site else ac_site_file1=$ac_default_prefix/share/config.site ac_site_file2=$ac_default_prefix/etc/config.site fi for ac_site_file in "$ac_site_file1" "$ac_site_file2" do test "x$ac_site_file" = xNONE && continue if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5 $as_echo "$as_me: loading site script $ac_site_file" >&6;} sed 's/^/| /' "$ac_site_file" >&5 . "$ac_site_file" \ || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "failed to load site script $ac_site_file See \`config.log' for more details" "$LINENO" 5; } fi done if test -r "$cache_file"; then # Some versions of bash will fail to source /dev/null (special files # actually), so we avoid doing that. DJGPP emulates it as a regular file. if test /dev/null != "$cache_file" && test -f "$cache_file"; then { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5 $as_echo "$as_me: loading cache $cache_file" >&6;} case $cache_file in [\\/]* | ?:[\\/]* ) . "$cache_file";; *) . "./$cache_file";; esac fi else { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5 $as_echo "$as_me: creating cache $cache_file" >&6;} >$cache_file fi # Check that the precious variables saved in the cache have kept the same # value. ac_cache_corrupted=false for ac_var in $ac_precious_vars; do eval ac_old_set=\$ac_cv_env_${ac_var}_set eval ac_new_set=\$ac_env_${ac_var}_set eval ac_old_val=\$ac_cv_env_${ac_var}_value eval ac_new_val=\$ac_env_${ac_var}_value case $ac_old_set,$ac_new_set in set,) { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 $as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} ac_cache_corrupted=: ;; ,set) { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5 $as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} ac_cache_corrupted=: ;; ,);; *) if test "x$ac_old_val" != "x$ac_new_val"; then # differences in whitespace do not lead to failure. ac_old_val_w=`echo x $ac_old_val` ac_new_val_w=`echo x $ac_new_val` if test "$ac_old_val_w" != "$ac_new_val_w"; then { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5 $as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} ac_cache_corrupted=: else { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5 $as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;} eval $ac_var=\$ac_old_val fi { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5 $as_echo "$as_me: former value: \`$ac_old_val'" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5 $as_echo "$as_me: current value: \`$ac_new_val'" >&2;} fi;; esac # Pass precious variables to config.status. if test "$ac_new_set" = set; then case $ac_new_val in *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; *) ac_arg=$ac_var=$ac_new_val ;; esac case " $ac_configure_args " in *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. *) as_fn_append ac_configure_args " '$ac_arg'" ;; esac fi done if $ac_cache_corrupted; then { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5 $as_echo "$as_me: error: changes in the environment can compromise the build" >&2;} as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5 fi ## -------------------- ## ## Main body of script. ## ## -------------------- ## ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu ac_config_headers="$ac_config_headers config.h" # AC_CONFIG_MACRO_DIR([m4]) am__api_version='1.15' ac_aux_dir= for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do if test -f "$ac_dir/install-sh"; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/install-sh -c" break elif test -f "$ac_dir/install.sh"; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/install.sh -c" break elif test -f "$ac_dir/shtool"; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/shtool install -c" break fi done if test -z "$ac_aux_dir"; then as_fn_error $? "cannot find install-sh, install.sh, or shtool in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" "$LINENO" 5 fi # These three variables are undocumented and unsupported, # and are intended to be withdrawn in a future Autoconf release. # They can cause serious problems if a builder's source tree is in a directory # whose full name contains unusual characters. ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var. ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var. ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var. # Find a good install program. We prefer a C program (faster), # so one script is as good as another. But avoid the broken or # incompatible versions: # SysV /etc/install, /usr/sbin/install # SunOS /usr/etc/install # IRIX /sbin/install # AIX /bin/install # AmigaOS /C/install, which installs bootblocks on floppy discs # AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag # AFS /usr/afsws/bin/install, which mishandles nonexistent args # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" # OS/2's system install, which has a completely different semantic # ./install, which can be erroneously created by make from ./install.sh. # Reject install programs that cannot install multiple files. { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5 $as_echo_n "checking for a BSD-compatible install... " >&6; } if test -z "$INSTALL"; then if ${ac_cv_path_install+:} false; then : $as_echo_n "(cached) " >&6 else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. # Account for people who put trailing slashes in PATH elements. case $as_dir/ in #(( ./ | .// | /[cC]/* | \ /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \ /usr/ucb/* ) ;; *) # OSF1 and SCO ODT 3.0 have their own names for install. # Don't use installbsd from OSF since it installs stuff as root # by default. for ac_prog in ginstall scoinst install; do for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then if test $ac_prog = install && grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then # AIX install. It has an incompatible calling convention. : elif test $ac_prog = install && grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then # program-specific install script used by HP pwplus--don't use. : else rm -rf conftest.one conftest.two conftest.dir echo one > conftest.one echo two > conftest.two mkdir conftest.dir if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" && test -s conftest.one && test -s conftest.two && test -s conftest.dir/conftest.one && test -s conftest.dir/conftest.two then ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" break 3 fi fi fi done done ;; esac done IFS=$as_save_IFS rm -rf conftest.one conftest.two conftest.dir fi if test "${ac_cv_path_install+set}" = set; then INSTALL=$ac_cv_path_install else # As a last resort, use the slow shell script. Don't cache a # value for INSTALL within a source directory, because that will # break other packages using the cache if that directory is # removed, or if the value is a relative name. INSTALL=$ac_install_sh fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5 $as_echo "$INSTALL" >&6; } # Use test -z because SunOS4 sh mishandles braces in ${var-val}. # It thinks the first close brace ends the variable substitution. test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5 $as_echo_n "checking whether build environment is sane... " >&6; } # Reject unsafe characters in $srcdir or the absolute working directory # name. Accept space and tab only in the latter. am_lf=' ' case `pwd` in *[\\\"\#\$\&\'\`$am_lf]*) as_fn_error $? "unsafe absolute working directory name" "$LINENO" 5;; esac case $srcdir in *[\\\"\#\$\&\'\`$am_lf\ \ ]*) as_fn_error $? "unsafe srcdir value: '$srcdir'" "$LINENO" 5;; esac # Do 'set' in a subshell so we don't clobber the current shell's # arguments. Must try -L first in case configure is actually a # symlink; some systems play weird games with the mod time of symlinks # (eg FreeBSD returns the mod time of the symlink's containing # directory). if ( am_has_slept=no for am_try in 1 2; do echo "timestamp, slept: $am_has_slept" > conftest.file set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null` if test "$*" = "X"; then # -L didn't work. set X `ls -t "$srcdir/configure" conftest.file` fi if test "$*" != "X $srcdir/configure conftest.file" \ && test "$*" != "X conftest.file $srcdir/configure"; then # If neither matched, then we have a broken ls. This can happen # if, for instance, CONFIG_SHELL is bash and it inherits a # broken ls alias from the environment. This has actually # happened. Such a system could not be considered "sane". as_fn_error $? "ls -t appears to fail. Make sure there is not a broken alias in your environment" "$LINENO" 5 fi if test "$2" = conftest.file || test $am_try -eq 2; then break fi # Just in case. sleep 1 am_has_slept=yes done test "$2" = conftest.file ) then # Ok. : else as_fn_error $? "newly created file is older than distributed files! Check your system clock" "$LINENO" 5 fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } # If we didn't sleep, we still need to ensure time stamps of config.status and # generated files are strictly newer. am_sleep_pid= if grep 'slept: no' conftest.file >/dev/null 2>&1; then ( sleep 1 ) & am_sleep_pid=$! fi rm -f conftest.file test "$program_prefix" != NONE && program_transform_name="s&^&$program_prefix&;$program_transform_name" # Use a double $ so make ignores it. test "$program_suffix" != NONE && program_transform_name="s&\$&$program_suffix&;$program_transform_name" # Double any \ or $. # By default was `s,x,x', remove it if useless. ac_script='s/[\\$]/&&/g;s/;s,x,x,$//' program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"` # Expand $ac_aux_dir to an absolute path. am_aux_dir=`cd "$ac_aux_dir" && pwd` if test x"${MISSING+set}" != xset; then case $am_aux_dir in *\ * | *\ *) MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;; *) MISSING="\${SHELL} $am_aux_dir/missing" ;; esac fi # Use eval to expand $SHELL if eval "$MISSING --is-lightweight"; then am_missing_run="$MISSING " else am_missing_run= { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: 'missing' script is too old or missing" >&5 $as_echo "$as_me: WARNING: 'missing' script is too old or missing" >&2;} fi if test x"${install_sh+set}" != xset; then case $am_aux_dir in *\ * | *\ *) install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;; *) install_sh="\${SHELL} $am_aux_dir/install-sh" esac fi # Installed binaries are usually stripped using 'strip' when the user # run "make install-strip". However 'strip' might not be the right # tool to use in cross-compilation environments, therefore Automake # will honor the 'STRIP' environment variable to overrule this program. if test "$cross_compiling" != no; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. set dummy ${ac_tool_prefix}strip; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_STRIP+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$STRIP"; then ac_cv_prog_STRIP="$STRIP" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_STRIP="${ac_tool_prefix}strip" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi STRIP=$ac_cv_prog_STRIP if test -n "$STRIP"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5 $as_echo "$STRIP" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_STRIP"; then ac_ct_STRIP=$STRIP # Extract the first word of "strip", so it can be a program name with args. set dummy strip; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_STRIP+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_STRIP"; then ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_STRIP="strip" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP if test -n "$ac_ct_STRIP"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5 $as_echo "$ac_ct_STRIP" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_STRIP" = x; then STRIP=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac STRIP=$ac_ct_STRIP fi else STRIP="$ac_cv_prog_STRIP" fi fi INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5 $as_echo_n "checking for a thread-safe mkdir -p... " >&6; } if test -z "$MKDIR_P"; then if ${ac_cv_path_mkdir+:} false; then : $as_echo_n "(cached) " >&6 else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_prog in mkdir gmkdir; do for ac_exec_ext in '' $ac_executable_extensions; do as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext" || continue case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #( 'mkdir (GNU coreutils) '* | \ 'mkdir (coreutils) '* | \ 'mkdir (fileutils) '4.1*) ac_cv_path_mkdir=$as_dir/$ac_prog$ac_exec_ext break 3;; esac done done done IFS=$as_save_IFS fi test -d ./--version && rmdir ./--version if test "${ac_cv_path_mkdir+set}" = set; then MKDIR_P="$ac_cv_path_mkdir -p" else # As a last resort, use the slow shell script. Don't cache a # value for MKDIR_P within a source directory, because that will # break other packages using the cache if that directory is # removed, or if the value is a relative name. MKDIR_P="$ac_install_sh -d" fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5 $as_echo "$MKDIR_P" >&6; } for ac_prog in gawk mawk nawk awk do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_AWK+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$AWK"; then ac_cv_prog_AWK="$AWK" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_AWK="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi AWK=$ac_cv_prog_AWK if test -n "$AWK"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5 $as_echo "$AWK" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$AWK" && break done { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5 $as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; } set x ${MAKE-make} ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then : $as_echo_n "(cached) " >&6 else cat >conftest.make <<\_ACEOF SHELL = /bin/sh all: @echo '@@@%%%=$(MAKE)=@@@%%%' _ACEOF # GNU make sometimes prints "make[1]: Entering ...", which would confuse us. case `${MAKE-make} -f conftest.make 2>/dev/null` in *@@@%%%=?*=@@@%%%*) eval ac_cv_prog_make_${ac_make}_set=yes;; *) eval ac_cv_prog_make_${ac_make}_set=no;; esac rm -f conftest.make fi if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } SET_MAKE= else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } SET_MAKE="MAKE=${MAKE-make}" fi rm -rf .tst 2>/dev/null mkdir .tst 2>/dev/null if test -d .tst; then am__leading_dot=. else am__leading_dot=_ fi rmdir .tst 2>/dev/null # Check whether --enable-silent-rules was given. if test "${enable_silent_rules+set}" = set; then : enableval=$enable_silent_rules; fi case $enable_silent_rules in # ((( yes) AM_DEFAULT_VERBOSITY=0;; no) AM_DEFAULT_VERBOSITY=1;; *) AM_DEFAULT_VERBOSITY=1;; esac am_make=${MAKE-make} { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5 $as_echo_n "checking whether $am_make supports nested variables... " >&6; } if ${am_cv_make_support_nested_variables+:} false; then : $as_echo_n "(cached) " >&6 else if $as_echo 'TRUE=$(BAR$(V)) BAR0=false BAR1=true V=1 am__doit: @$(TRUE) .PHONY: am__doit' | $am_make -f - >/dev/null 2>&1; then am_cv_make_support_nested_variables=yes else am_cv_make_support_nested_variables=no fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5 $as_echo "$am_cv_make_support_nested_variables" >&6; } if test $am_cv_make_support_nested_variables = yes; then AM_V='$(V)' AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' else AM_V=$AM_DEFAULT_VERBOSITY AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY fi AM_BACKSLASH='\' if test "`cd $srcdir && pwd`" != "`pwd`"; then # Use -I$(srcdir) only when $(srcdir) != ., so that make's output # is not polluted with repeated "-I." am__isrc=' -I$(srcdir)' # test to see if srcdir already configured if test -f $srcdir/config.status; then as_fn_error $? "source directory already configured; run \"make distclean\" there first" "$LINENO" 5 fi fi # test whether we have cygpath if test -z "$CYGPATH_W"; then if (cygpath --version) >/dev/null 2>/dev/null; then CYGPATH_W='cygpath -w' else CYGPATH_W=echo fi fi # Define the identity of the package. PACKAGE='unicode-screensaver' VERSION='0.5.1' cat >>confdefs.h <<_ACEOF #define PACKAGE "$PACKAGE" _ACEOF cat >>confdefs.h <<_ACEOF #define VERSION "$VERSION" _ACEOF # Some tools Automake needs. ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"} AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"} AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"} AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"} MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"} # For better backward compatibility. To be removed once Automake 1.9.x # dies out for good. For more background, see: # # mkdir_p='$(MKDIR_P)' # We need awk for the "check" target (and possibly the TAP driver). The # system "awk" is bad on some platforms. # Always define AMTAR for backward compatibility. Yes, it's still used # in the wild :-( We should find a proper way to deprecate it ... AMTAR='$${TAR-tar}' # We'll loop over all known methods to create a tar archive until one works. _am_tools='gnutar pax cpio none' am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -' # POSIX will say in a future version that running "rm -f" with no argument # is OK; and we want to be able to make that assumption in our Makefile # recipes. So use an aggressive probe to check that the usage we want is # actually supported "in the wild" to an acceptable degree. # See automake bug#10828. # To make any issue more visible, cause the running configure to be aborted # by default if the 'rm' program in use doesn't match our expectations; the # user can still override this though. if rm -f && rm -fr && rm -rf; then : OK; else cat >&2 <<'END' Oops! Your 'rm' program seems unable to run without file operands specified on the command line, even when the '-f' option is present. This is contrary to the behaviour of most rm programs out there, and not conforming with the upcoming POSIX standard: Please tell bug-automake@gnu.org about your system, including the value of your $PATH and any error possibly output before this message. This can help us improve future automake versions. END if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then echo 'Configuration will proceed anyway, since you have set the' >&2 echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2 echo >&2 else cat >&2 <<'END' Aborting the configuration process, to ensure you take notice of the issue. You can download and install GNU coreutils to get an 'rm' implementation that behaves properly: . If you want to complete the configuration process using your problematic 'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM to "yes", and re-run configure. END as_fn_error $? "Your 'rm' program is bad, sorry." "$LINENO" 5 fi fi ############################################################################### # # Handle the --with-hackdir option # ############################################################################### have_hackdir=yes with_hackdir_req=unspecified # Check whether --with-hackdir was given. if test "${with_hackdir+set}" = set; then : withval=$with_hackdir; with_hackdir="$withval"; with_hackdir_req="$withval" else with_hackdir=yes fi if test x"$with_hackdir" = xyes; then HACKDIR='${libexecdir}/xscreensaver' elif test x"$with_hackdir" = xno; then HACKDIR='${bindir}' else HACKDIR=$with_hackdir fi # canonicalize slashes. HACKDIR=`echo "${HACKDIR}" | sed 's@/$@@;s@//*@/@g'` ############################################################################### # # Handle the --with-desktopdir option # ############################################################################### have_desktopdir=yes with_desktopdir_req=unspecified # Check whether --with-desktopdir was given. if test "${with_desktopdir+set}" = set; then : withval=$with_desktopdir; with_desktopdir="$withval"; with_desktopdir_req="$withval" else with_desktopdir=yes fi if test x"$with_desktopdir" = xyes; then DESKTOPDIR='${prefix}/share/applications/screensavers' elif test x"$with_desktopdir" = xno; then echo "error: must be yes, or a pathname: --with-desktopdir=$with_desktopdir" exit 1 else DESKTOPDIR=$with_desktopdir fi # canonicalize slashes. DESKTOPDIR=`echo "${DESKTOPDIR}" | sed 's@/$@@;s@//*@/@g'` ############################################################################### # # Handle the --with-configdir option # Help for --with-x-app-defaults option added.. # ############################################################################### have_configdir=yes with_configdir_req=unspecified # Check whether --with-configdir was given. if test "${with_configdir+set}" = set; then : withval=$with_configdir; with_configdir="$withval"; with_configdir_req="$withval" else with_configdir=yes fi if test x"$with_configdir" = xyes; then HACK_CONF_DIR='${datadir}/xscreensaver/config' elif test x"$with_configdir" = xno; then echo "error: must be yes, or a pathname: --with-configdir=$with_configdir" exit 1 else # there must be a better way than this... if test -z "`echo $with_configdir | sed 's@^/.*@@'`" ; then # absolute path HACK_CONF_DIR=$with_configdir else # relative path HACK_CONF_DIR="\${exec_prefix}$with_configdir" fi fi # Checks for programs. ############################################################################### # # Function to figure out how to run the compiler. # ############################################################################### ############################################################################### # # Check for availability of various gcc command-line options. # ############################################################################### ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. set dummy ${ac_tool_prefix}gcc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="${ac_tool_prefix}gcc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_CC"; then ac_ct_CC=$CC # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="gcc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 $as_echo "$ac_ct_CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_CC" = x; then CC="" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac CC=$ac_ct_CC fi else CC="$ac_cv_prog_CC" fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. set dummy ${ac_tool_prefix}cc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="${ac_tool_prefix}cc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi fi if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else ac_prog_rejected=no as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then ac_prog_rejected=yes continue fi ac_cv_prog_CC="cc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS if test $ac_prog_rejected = yes; then # We found a bogon in the path, so make sure we never use it. set dummy $ac_cv_prog_CC shift if test $# != 0; then # We chose a different compiler from the bogus one. # However, it has the same basename, so the bogon will be chosen # first if we set CC to just the basename; use the full file name. shift ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" fi fi fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then for ac_prog in cl.exe do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="$ac_tool_prefix$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$CC" && break done fi if test -z "$CC"; then ac_ct_CC=$CC for ac_prog in cl.exe do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 $as_echo "$ac_ct_CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$ac_ct_CC" && break done if test "x$ac_ct_CC" = x; then CC="" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac CC=$ac_ct_CC fi fi fi test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "no acceptable C compiler found in \$PATH See \`config.log' for more details" "$LINENO" 5; } # Provide some information about the compiler. $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 set X $ac_compile ac_compiler=$2 for ac_option in --version -v -V -qversion; do { { ac_try="$ac_compiler $ac_option >&5" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_compiler $ac_option >&5") 2>conftest.err ac_status=$? if test -s conftest.err; then sed '10a\ ... rest of stderr output deleted ... 10q' conftest.err >conftest.er1 cat conftest.er1 >&5 fi rm -f conftest.er1 conftest.err $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } done cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF ac_clean_files_save=$ac_clean_files ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out" # Try to create an executable without -o first, disregard a.out. # It will help us diagnose broken compilers, and finding out an intuition # of exeext. { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5 $as_echo_n "checking whether the C compiler works... " >&6; } ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` # The possible output files: ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*" ac_rmfiles= for ac_file in $ac_files do case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; * ) ac_rmfiles="$ac_rmfiles $ac_file";; esac done rm -f $ac_rmfiles if { { ac_try="$ac_link_default" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_link_default") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then : # Autoconf-2.13 could set the ac_cv_exeext variable to `no'. # So ignore a value of `no', otherwise this would lead to `EXEEXT = no' # in a Makefile. We should not override ac_cv_exeext if it was cached, # so that the user can short-circuit this test for compilers unknown to # Autoconf. for ac_file in $ac_files '' do test -f "$ac_file" || continue case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; [ab].out ) # We found the default executable, but exeext='' is most # certainly right. break;; *.* ) if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no; then :; else ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` fi # We set ac_cv_exeext here because the later test for it is not # safe: cross compilers may not add the suffix if given an `-o' # argument, so we may need to know it at that point already. # Even if this section looks crufty: it has the advantage of # actually working. break;; * ) break;; esac done test "$ac_cv_exeext" = no && ac_cv_exeext= else ac_file='' fi if test -z "$ac_file"; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error 77 "C compiler cannot create executables See \`config.log' for more details" "$LINENO" 5; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5 $as_echo_n "checking for C compiler default output file name... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5 $as_echo "$ac_file" >&6; } ac_exeext=$ac_cv_exeext rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out ac_clean_files=$ac_clean_files_save { $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5 $as_echo_n "checking for suffix of executables... " >&6; } if { { ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_link") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then : # If both `conftest.exe' and `conftest' are `present' (well, observable) # catch `conftest.exe'. For instance with Cygwin, `ls conftest' will # work properly (i.e., refer to `conftest.exe'), while it won't with # `rm'. for ac_file in conftest.exe conftest conftest.*; do test -f "$ac_file" || continue case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` break;; * ) break;; esac done else { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "cannot compute suffix of executables: cannot compile and link See \`config.log' for more details" "$LINENO" 5; } fi rm -f conftest conftest$ac_cv_exeext { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5 $as_echo "$ac_cv_exeext" >&6; } rm -f conftest.$ac_ext EXEEXT=$ac_cv_exeext ac_exeext=$EXEEXT cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int main () { FILE *f = fopen ("conftest.out", "w"); return ferror (f) || fclose (f) != 0; ; return 0; } _ACEOF ac_clean_files="$ac_clean_files conftest.out" # Check that the compiler produces executables we can run. If not, either # the compiler is broken, or we cross compile. { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5 $as_echo_n "checking whether we are cross compiling... " >&6; } if test "$cross_compiling" != yes; then { { ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_link") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } if { ac_try='./conftest$ac_cv_exeext' { { case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_try") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; }; then cross_compiling=no else if test "$cross_compiling" = maybe; then cross_compiling=yes else { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "cannot run C compiled programs. If you meant to cross compile, use \`--host'. See \`config.log' for more details" "$LINENO" 5; } fi fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5 $as_echo "$cross_compiling" >&6; } rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out ac_clean_files=$ac_clean_files_save { $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5 $as_echo_n "checking for suffix of object files... " >&6; } if ${ac_cv_objext+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF rm -f conftest.o conftest.obj if { { ac_try="$ac_compile" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_compile") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then : for ac_file in conftest.o conftest.obj conftest.*; do test -f "$ac_file" || continue; case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;; *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` break;; esac done else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "cannot compute suffix of object files: cannot compile See \`config.log' for more details" "$LINENO" 5; } fi rm -f conftest.$ac_cv_objext conftest.$ac_ext fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5 $as_echo "$ac_cv_objext" >&6; } OBJEXT=$ac_cv_objext ac_objext=$OBJEXT { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5 $as_echo_n "checking whether we are using the GNU C compiler... " >&6; } if ${ac_cv_c_compiler_gnu+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { #ifndef __GNUC__ choke me #endif ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_compiler_gnu=yes else ac_compiler_gnu=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_c_compiler_gnu=$ac_compiler_gnu fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 $as_echo "$ac_cv_c_compiler_gnu" >&6; } if test $ac_compiler_gnu = yes; then GCC=yes else GCC= fi ac_test_CFLAGS=${CFLAGS+set} ac_save_CFLAGS=$CFLAGS { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 $as_echo_n "checking whether $CC accepts -g... " >&6; } if ${ac_cv_prog_cc_g+:} false; then : $as_echo_n "(cached) " >&6 else ac_save_c_werror_flag=$ac_c_werror_flag ac_c_werror_flag=yes ac_cv_prog_cc_g=no CFLAGS="-g" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_g=yes else CFLAGS="" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : else ac_c_werror_flag=$ac_save_c_werror_flag CFLAGS="-g" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_g=yes fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_c_werror_flag=$ac_save_c_werror_flag fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 $as_echo "$ac_cv_prog_cc_g" >&6; } if test "$ac_test_CFLAGS" = set; then CFLAGS=$ac_save_CFLAGS elif test $ac_cv_prog_cc_g = yes; then if test "$GCC" = yes; then CFLAGS="-g -O2" else CFLAGS="-g" fi else if test "$GCC" = yes; then CFLAGS="-O2" else CFLAGS= fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5 $as_echo_n "checking for $CC option to accept ISO C89... " >&6; } if ${ac_cv_prog_cc_c89+:} false; then : $as_echo_n "(cached) " >&6 else ac_cv_prog_cc_c89=no ac_save_CC=$CC cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include struct stat; /* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ struct buf { int x; }; FILE * (*rcsopen) (struct buf *, struct stat *, int); static char *e (p, i) char **p; int i; { return p[i]; } static char *f (char * (*g) (char **, int), char **p, ...) { char *s; va_list v; va_start (v,p); s = g (p, va_arg (v,int)); va_end (v); return s; } /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has function prototypes and stuff, but not '\xHH' hex character constants. These don't provoke an error unfortunately, instead are silently treated as 'x'. The following induces an error, until -std is added to get proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an array size at least. It's necessary to write '\x00'==0 to get something that's true only with -std. */ int osf4_cc_array ['\x00' == 0 ? 1 : -1]; /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters inside strings and character constants. */ #define FOO(x) 'x' int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; int test (int i, double x); struct s1 {int (*f) (int a);}; struct s2 {int (*f) (double a);}; int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); int argc; char **argv; int main () { return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; ; return 0; } _ACEOF for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \ -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" do CC="$ac_save_CC $ac_arg" if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_c89=$ac_arg fi rm -f core conftest.err conftest.$ac_objext test "x$ac_cv_prog_cc_c89" != "xno" && break done rm -f conftest.$ac_ext CC=$ac_save_CC fi # AC_CACHE_VAL case "x$ac_cv_prog_cc_c89" in x) { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 $as_echo "none needed" >&6; } ;; xno) { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 $as_echo "unsupported" >&6; } ;; *) CC="$CC $ac_cv_prog_cc_c89" { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 $as_echo "$ac_cv_prog_cc_c89" >&6; } ;; esac if test "x$ac_cv_prog_cc_c89" != xno; then : fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5 $as_echo_n "checking whether $CC understands -c and -o together... " >&6; } if ${am_cv_prog_cc_c_o+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF # Make sure it works both with $CC and with simple cc. # Following AC_PROG_CC_C_O, we do the test twice because some # compilers refuse to overwrite an existing .o file with -o, # though they will create one. am_cv_prog_cc_c_o=yes for am_i in 1 2; do if { echo "$as_me:$LINENO: $CC -c conftest.$ac_ext -o conftest2.$ac_objext" >&5 ($CC -c conftest.$ac_ext -o conftest2.$ac_objext) >&5 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } \ && test -f conftest2.$ac_objext; then : OK else am_cv_prog_cc_c_o=no break fi done rm -f core conftest* unset am_i fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5 $as_echo "$am_cv_prog_cc_c_o" >&6; } if test "$am_cv_prog_cc_c_o" != yes; then # Losing compiler, so override with the script. # FIXME: It is wrong to rewrite CC. # But if we don't then we get into trouble of one sort or another. # A longer-term fix would be to have automake use am__CC in this case, # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)" CC="$am_aux_dir/compile $CC" fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu DEPDIR="${am__leading_dot}deps" ac_config_commands="$ac_config_commands depfiles" am_make=${MAKE-make} cat > confinc << 'END' am__doit: @echo this is the am__doit target .PHONY: am__doit END # If we don't find an include directive, just comment out the code. { $as_echo "$as_me:${as_lineno-$LINENO}: checking for style of include used by $am_make" >&5 $as_echo_n "checking for style of include used by $am_make... " >&6; } am__include="#" am__quote= _am_result=none # First try GNU make style include. echo "include confinc" > confmf # Ignore all kinds of additional output from 'make'. case `$am_make -s -f confmf 2> /dev/null` in #( *the\ am__doit\ target*) am__include=include am__quote= _am_result=GNU ;; esac # Now try BSD make style include. if test "$am__include" = "#"; then echo '.include "confinc"' > confmf case `$am_make -s -f confmf 2> /dev/null` in #( *the\ am__doit\ target*) am__include=.include am__quote="\"" _am_result=BSD ;; esac fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $_am_result" >&5 $as_echo "$_am_result" >&6; } rm -f confinc confmf # Check whether --enable-dependency-tracking was given. if test "${enable_dependency_tracking+set}" = set; then : enableval=$enable_dependency_tracking; fi if test "x$enable_dependency_tracking" != xno; then am_depcomp="$ac_aux_dir/depcomp" AMDEPBACKSLASH='\' am__nodep='_no' fi if test "x$enable_dependency_tracking" != xno; then AMDEP_TRUE= AMDEP_FALSE='#' else AMDEP_TRUE='#' AMDEP_FALSE= fi depcc="$CC" am_compiler_list= { $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 $as_echo_n "checking dependency style of $depcc... " >&6; } if ${am_cv_CC_dependencies_compiler_type+:} false; then : $as_echo_n "(cached) " >&6 else if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then # We make a subdir and do the tests there. Otherwise we can end up # making bogus files that we don't know about and never remove. For # instance it was reported that on HP-UX the gcc test will end up # making a dummy file named 'D' -- because '-MD' means "put the output # in D". rm -rf conftest.dir mkdir conftest.dir # Copy depcomp to subdir because otherwise we won't find it if we're # using a relative directory. cp "$am_depcomp" conftest.dir cd conftest.dir # We will build objects and dependencies in a subdirectory because # it helps to detect inapplicable dependency modes. For instance # both Tru64's cc and ICC support -MD to output dependencies as a # side effect of compilation, but ICC will put the dependencies in # the current directory while Tru64 will put them in the object # directory. mkdir sub am_cv_CC_dependencies_compiler_type=none if test "$am_compiler_list" = ""; then am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` fi am__universal=false case " $depcc " in #( *\ -arch\ *\ -arch\ *) am__universal=true ;; esac for depmode in $am_compiler_list; do # Setup a source with many dependencies, because some compilers # like to wrap large dependency lists on column 80 (with \), and # we should not choose a depcomp mode which is confused by this. # # We need to recreate these files for each test, as the compiler may # overwrite some of them when testing with obscure command lines. # This happens at least with the AIX C compiler. : > sub/conftest.c for i in 1 2 3 4 5 6; do echo '#include "conftst'$i'.h"' >> sub/conftest.c # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with # Solaris 10 /bin/sh. echo '/* dummy */' > sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf # We check with '-c' and '-o' for the sake of the "dashmstdout" # mode. It turns out that the SunPro C++ compiler does not properly # handle '-M -o', and we need to detect this. Also, some Intel # versions had trouble with output in subdirs. am__obj=sub/conftest.${OBJEXT-o} am__minus_obj="-o $am__obj" case $depmode in gcc) # This depmode causes a compiler race in universal mode. test "$am__universal" = false || continue ;; nosideeffect) # After this tag, mechanisms are not by side-effect, so they'll # only be used when explicitly requested. if test "x$enable_dependency_tracking" = xyes; then continue else break fi ;; msvc7 | msvc7msys | msvisualcpp | msvcmsys) # This compiler won't grok '-c -o', but also, the minuso test has # not run yet. These depmodes are late enough in the game, and # so weak that their functioning should not be impacted. am__obj=conftest.${OBJEXT-o} am__minus_obj= ;; none) break ;; esac if depmode=$depmode \ source=sub/conftest.c object=$am__obj \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ >/dev/null 2>conftest.err && grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && grep $am__obj sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then # icc doesn't choke on unknown options, it will just issue warnings # or remarks (even with -Werror). So we grep stderr for any message # that says an option was ignored or not supported. # When given -MP, icc 7.0 and 7.1 complain thusly: # icc: Command line warning: ignoring option '-M'; no argument required # The diagnosis changed in icc 8.0: # icc: Command line remark: option '-MP' not supported if (grep 'ignoring option' conftest.err || grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else am_cv_CC_dependencies_compiler_type=$depmode break fi fi done cd .. rm -rf conftest.dir else am_cv_CC_dependencies_compiler_type=none fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5 $as_echo "$am_cv_CC_dependencies_compiler_type" >&6; } CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type if test "x$enable_dependency_tracking" != xno \ && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then am__fastdepCC_TRUE= am__fastdepCC_FALSE='#' else am__fastdepCC_TRUE='#' am__fastdepCC_FALSE= fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. set dummy ${ac_tool_prefix}gcc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="${ac_tool_prefix}gcc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_CC"; then ac_ct_CC=$CC # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="gcc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 $as_echo "$ac_ct_CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_CC" = x; then CC="" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac CC=$ac_ct_CC fi else CC="$ac_cv_prog_CC" fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. set dummy ${ac_tool_prefix}cc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="${ac_tool_prefix}cc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi fi if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else ac_prog_rejected=no as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then ac_prog_rejected=yes continue fi ac_cv_prog_CC="cc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS if test $ac_prog_rejected = yes; then # We found a bogon in the path, so make sure we never use it. set dummy $ac_cv_prog_CC shift if test $# != 0; then # We chose a different compiler from the bogus one. # However, it has the same basename, so the bogon will be chosen # first if we set CC to just the basename; use the full file name. shift ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" fi fi fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then for ac_prog in cl.exe do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="$ac_tool_prefix$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$CC" && break done fi if test -z "$CC"; then ac_ct_CC=$CC for ac_prog in cl.exe do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 $as_echo "$ac_ct_CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$ac_ct_CC" && break done if test "x$ac_ct_CC" = x; then CC="" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac CC=$ac_ct_CC fi fi fi test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "no acceptable C compiler found in \$PATH See \`config.log' for more details" "$LINENO" 5; } # Provide some information about the compiler. $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 set X $ac_compile ac_compiler=$2 for ac_option in --version -v -V -qversion; do { { ac_try="$ac_compiler $ac_option >&5" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_compiler $ac_option >&5") 2>conftest.err ac_status=$? if test -s conftest.err; then sed '10a\ ... rest of stderr output deleted ... 10q' conftest.err >conftest.er1 cat conftest.er1 >&5 fi rm -f conftest.er1 conftest.err $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } done { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5 $as_echo_n "checking whether we are using the GNU C compiler... " >&6; } if ${ac_cv_c_compiler_gnu+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { #ifndef __GNUC__ choke me #endif ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_compiler_gnu=yes else ac_compiler_gnu=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_c_compiler_gnu=$ac_compiler_gnu fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 $as_echo "$ac_cv_c_compiler_gnu" >&6; } if test $ac_compiler_gnu = yes; then GCC=yes else GCC= fi ac_test_CFLAGS=${CFLAGS+set} ac_save_CFLAGS=$CFLAGS { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 $as_echo_n "checking whether $CC accepts -g... " >&6; } if ${ac_cv_prog_cc_g+:} false; then : $as_echo_n "(cached) " >&6 else ac_save_c_werror_flag=$ac_c_werror_flag ac_c_werror_flag=yes ac_cv_prog_cc_g=no CFLAGS="-g" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_g=yes else CFLAGS="" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : else ac_c_werror_flag=$ac_save_c_werror_flag CFLAGS="-g" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_g=yes fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_c_werror_flag=$ac_save_c_werror_flag fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 $as_echo "$ac_cv_prog_cc_g" >&6; } if test "$ac_test_CFLAGS" = set; then CFLAGS=$ac_save_CFLAGS elif test $ac_cv_prog_cc_g = yes; then if test "$GCC" = yes; then CFLAGS="-g -O2" else CFLAGS="-g" fi else if test "$GCC" = yes; then CFLAGS="-O2" else CFLAGS= fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5 $as_echo_n "checking for $CC option to accept ISO C89... " >&6; } if ${ac_cv_prog_cc_c89+:} false; then : $as_echo_n "(cached) " >&6 else ac_cv_prog_cc_c89=no ac_save_CC=$CC cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include struct stat; /* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ struct buf { int x; }; FILE * (*rcsopen) (struct buf *, struct stat *, int); static char *e (p, i) char **p; int i; { return p[i]; } static char *f (char * (*g) (char **, int), char **p, ...) { char *s; va_list v; va_start (v,p); s = g (p, va_arg (v,int)); va_end (v); return s; } /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has function prototypes and stuff, but not '\xHH' hex character constants. These don't provoke an error unfortunately, instead are silently treated as 'x'. The following induces an error, until -std is added to get proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an array size at least. It's necessary to write '\x00'==0 to get something that's true only with -std. */ int osf4_cc_array ['\x00' == 0 ? 1 : -1]; /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters inside strings and character constants. */ #define FOO(x) 'x' int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; int test (int i, double x); struct s1 {int (*f) (int a);}; struct s2 {int (*f) (double a);}; int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); int argc; char **argv; int main () { return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; ; return 0; } _ACEOF for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \ -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" do CC="$ac_save_CC $ac_arg" if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_c89=$ac_arg fi rm -f core conftest.err conftest.$ac_objext test "x$ac_cv_prog_cc_c89" != "xno" && break done rm -f conftest.$ac_ext CC=$ac_save_CC fi # AC_CACHE_VAL case "x$ac_cv_prog_cc_c89" in x) { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 $as_echo "none needed" >&6; } ;; xno) { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 $as_echo "unsupported" >&6; } ;; *) CC="$CC $ac_cv_prog_cc_c89" { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 $as_echo "$ac_cv_prog_cc_c89" >&6; } ;; esac if test "x$ac_cv_prog_cc_c89" != xno; then : fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5 $as_echo_n "checking whether $CC understands -c and -o together... " >&6; } if ${am_cv_prog_cc_c_o+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF # Make sure it works both with $CC and with simple cc. # Following AC_PROG_CC_C_O, we do the test twice because some # compilers refuse to overwrite an existing .o file with -o, # though they will create one. am_cv_prog_cc_c_o=yes for am_i in 1 2; do if { echo "$as_me:$LINENO: $CC -c conftest.$ac_ext -o conftest2.$ac_objext" >&5 ($CC -c conftest.$ac_ext -o conftest2.$ac_objext) >&5 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } \ && test -f conftest2.$ac_objext; then : OK else am_cv_prog_cc_c_o=no break fi done rm -f core conftest* unset am_i fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5 $as_echo "$am_cv_prog_cc_c_o" >&6; } if test "$am_cv_prog_cc_c_o" != yes; then # Losing compiler, so override with the script. # FIXME: It is wrong to rewrite CC. # But if we don't then we get into trouble of one sort or another. # A longer-term fix would be to have automake use am__CC in this case, # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)" CC="$am_aux_dir/compile $CC" fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu depcc="$CC" am_compiler_list= { $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 $as_echo_n "checking dependency style of $depcc... " >&6; } if ${am_cv_CC_dependencies_compiler_type+:} false; then : $as_echo_n "(cached) " >&6 else if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then # We make a subdir and do the tests there. Otherwise we can end up # making bogus files that we don't know about and never remove. For # instance it was reported that on HP-UX the gcc test will end up # making a dummy file named 'D' -- because '-MD' means "put the output # in D". rm -rf conftest.dir mkdir conftest.dir # Copy depcomp to subdir because otherwise we won't find it if we're # using a relative directory. cp "$am_depcomp" conftest.dir cd conftest.dir # We will build objects and dependencies in a subdirectory because # it helps to detect inapplicable dependency modes. For instance # both Tru64's cc and ICC support -MD to output dependencies as a # side effect of compilation, but ICC will put the dependencies in # the current directory while Tru64 will put them in the object # directory. mkdir sub am_cv_CC_dependencies_compiler_type=none if test "$am_compiler_list" = ""; then am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` fi am__universal=false case " $depcc " in #( *\ -arch\ *\ -arch\ *) am__universal=true ;; esac for depmode in $am_compiler_list; do # Setup a source with many dependencies, because some compilers # like to wrap large dependency lists on column 80 (with \), and # we should not choose a depcomp mode which is confused by this. # # We need to recreate these files for each test, as the compiler may # overwrite some of them when testing with obscure command lines. # This happens at least with the AIX C compiler. : > sub/conftest.c for i in 1 2 3 4 5 6; do echo '#include "conftst'$i'.h"' >> sub/conftest.c # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with # Solaris 10 /bin/sh. echo '/* dummy */' > sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf # We check with '-c' and '-o' for the sake of the "dashmstdout" # mode. It turns out that the SunPro C++ compiler does not properly # handle '-M -o', and we need to detect this. Also, some Intel # versions had trouble with output in subdirs. am__obj=sub/conftest.${OBJEXT-o} am__minus_obj="-o $am__obj" case $depmode in gcc) # This depmode causes a compiler race in universal mode. test "$am__universal" = false || continue ;; nosideeffect) # After this tag, mechanisms are not by side-effect, so they'll # only be used when explicitly requested. if test "x$enable_dependency_tracking" = xyes; then continue else break fi ;; msvc7 | msvc7msys | msvisualcpp | msvcmsys) # This compiler won't grok '-c -o', but also, the minuso test has # not run yet. These depmodes are late enough in the game, and # so weak that their functioning should not be impacted. am__obj=conftest.${OBJEXT-o} am__minus_obj= ;; none) break ;; esac if depmode=$depmode \ source=sub/conftest.c object=$am__obj \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ >/dev/null 2>conftest.err && grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && grep $am__obj sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then # icc doesn't choke on unknown options, it will just issue warnings # or remarks (even with -Werror). So we grep stderr for any message # that says an option was ignored or not supported. # When given -MP, icc 7.0 and 7.1 complain thusly: # icc: Command line warning: ignoring option '-M'; no argument required # The diagnosis changed in icc 8.0: # icc: Command line remark: option '-MP' not supported if (grep 'ignoring option' conftest.err || grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else am_cv_CC_dependencies_compiler_type=$depmode break fi fi done cd .. rm -rf conftest.dir else am_cv_CC_dependencies_compiler_type=none fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5 $as_echo "$am_cv_CC_dependencies_compiler_type" >&6; } CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type if test "x$enable_dependency_tracking" != xno \ && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then am__fastdepCC_TRUE= am__fastdepCC_FALSE='#' else am__fastdepCC_TRUE='#' am__fastdepCC_FALSE= fi if test -z "$GCC"; then # not using GCC { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to request ANSI compilation" >&5 $as_echo_n "checking how to request ANSI compilation... " >&6; } case "$host" in *-hpux* ) { $as_echo "$as_me:${as_lineno-$LINENO}: result: HPUX: adding -Ae" >&5 $as_echo "HPUX: adding -Ae" >&6; } CC="$CC -Ae" ;; *-aix* ) { $as_echo "$as_me:${as_lineno-$LINENO}: result: AIX: adding -qlanglvl=ansi -qhalt=e" >&5 $as_echo "AIX: adding -qlanglvl=ansi -qhalt=e" >&6; } CC="$CC -qlanglvl=ansi -qhalt=e" ;; *-dec-* ) { $as_echo "$as_me:${as_lineno-$LINENO}: result: DEC: adding -std1 -ieee" >&5 $as_echo "DEC: adding -std1 -ieee" >&6; } CC="$CC -std1" ;; *) { $as_echo "$as_me:${as_lineno-$LINENO}: result: no idea" >&5 $as_echo "no idea" >&6; } ;; esac else # using GCC case "$host" in *-solaris*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: Solaris: adding -D__EXTENSIONS__" >&5 $as_echo "Solaris: adding -D__EXTENSIONS__" >&6; } CC="$CC -D__EXTENSIONS__" ;; esac fi OBJCC="$CC" { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler works on ANSI C" >&5 $as_echo_n "checking whether the compiler works on ANSI C... " >&6; } if test "$cross_compiling" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: cross compiling... assuming yes" >&5 $as_echo "cross compiling... assuming yes" >&6; } else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ main(int ac, char **av) { return 0; } _ACEOF if ac_fn_c_try_run "$LINENO"; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } as_fn_error $? "Couldn't build even a trivial ANSI C program: check CC." "$LINENO" 5 fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi if test -n "$GCC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: Turning on gcc compiler warnings." >&5 $as_echo "Turning on gcc compiler warnings." >&6; } CC="$CC -pedantic -Wall -Wstrict-prototypes -Wnested-externs -Wmissing-prototypes" OBJCC="$OBJCC -Wall" # As of gcc 3.4, we have "-Wdeclaration-after-statement" # and so perhaps now we can do without -pedantic? else case "$host" in *-irix5* |*-irix6.0-3* ) { $as_echo "$as_me:${as_lineno-$LINENO}: result: Turning on SGI compiler warnings." >&5 $as_echo "Turning on SGI compiler warnings." >&6; } CC="$CC -fullwarn -use_readonly_const -rdata_shared -g3" ;; # *-dec-osf* ) # if test -z "$GCC"; then # AC_MSG_RESULT(Turning on DEC C compiler warnings.) # CC="$CC -migrate -w0 -verbose -warnprotos" # fi # ;; esac fi if test -n "$GCC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether gcc accepts -Wno-overlength-strings" >&5 $as_echo_n "checking whether gcc accepts -Wno-overlength-strings... " >&6; } if ${ac_cv_gcc_accepts_no_overlength+:} false; then : $as_echo_n "(cached) " >&6 else rm -rf conftest.$ac_ext touch conftest.$ac_ext if ( ( gcc -c -Wno-overlength-strings conftest.$ac_ext -o/dev/null >/dev/null ) 2>&1 | \ grep unrecognized >/dev/null ); then ac_cv_gcc_accepts_no_overlength=no else ac_cv_gcc_accepts_no_overlength=yes CC="$CC -Wno-overlength-strings" fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_gcc_accepts_no_overlength" >&5 $as_echo "$ac_cv_gcc_accepts_no_overlength" >&6; } ac_gcc_accepts_no_overlength="$ac_cv_gcc_accepts_no_overlength" fi if test -n "$GCC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether gcc accepts -Wdeclaration-after-statement" >&5 $as_echo_n "checking whether gcc accepts -Wdeclaration-after-statement... " >&6; } if ${ac_cv_gcc_accepts_no_decl_after+:} false; then : $as_echo_n "(cached) " >&6 else rm -rf conftest.$ac_ext touch conftest.$ac_ext if ( ( gcc -c -Wdeclaration-after-statement conftest.$ac_ext -o/dev/null >/dev/null ) 2>&1 | \ grep unrecognized >/dev/null ); then ac_cv_gcc_accepts_no_decl_after=no else ac_cv_gcc_accepts_no_decl_after=yes CC="$CC -Wdeclaration-after-statement" fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_gcc_accepts_no_decl_after" >&5 $as_echo "$ac_cv_gcc_accepts_no_decl_after" >&6; } ac_gcc_accepts_no_decl_after="$ac_cv_gcc_accepts_no_decl_after" fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5 $as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; } set x ${MAKE-make} ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then : $as_echo_n "(cached) " >&6 else cat >conftest.make <<\_ACEOF SHELL = /bin/sh all: @echo '@@@%%%=$(MAKE)=@@@%%%' _ACEOF # GNU make sometimes prints "make[1]: Entering ...", which would confuse us. case `${MAKE-make} -f conftest.make 2>/dev/null` in *@@@%%%=?*=@@@%%%*) eval ac_cv_prog_make_${ac_make}_set=yes;; *) eval ac_cv_prog_make_${ac_make}_set=no;; esac rm -f conftest.make fi if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } SET_MAKE= else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } SET_MAKE="MAKE=${MAKE-make}" fi # Checks for libraries. case `pwd` in *\ * | *\ *) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5 $as_echo "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;; esac macro_version='2.4.6' macro_revision='2.4.6' ltmain=$ac_aux_dir/ltmain.sh # Make sure we can run config.sub. $SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 || as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5 { $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5 $as_echo_n "checking build system type... " >&6; } if ${ac_cv_build+:} false; then : $as_echo_n "(cached) " >&6 else ac_build_alias=$build_alias test "x$ac_build_alias" = x && ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"` test "x$ac_build_alias" = x && as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5 ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` || as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5 fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5 $as_echo "$ac_cv_build" >&6; } case $ac_cv_build in *-*-*) ;; *) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;; esac build=$ac_cv_build ac_save_IFS=$IFS; IFS='-' set x $ac_cv_build shift build_cpu=$1 build_vendor=$2 shift; shift # Remember, the first character of IFS is used to create $*, # except with old shells: build_os=$* IFS=$ac_save_IFS case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5 $as_echo_n "checking host system type... " >&6; } if ${ac_cv_host+:} false; then : $as_echo_n "(cached) " >&6 else if test "x$host_alias" = x; then ac_cv_host=$ac_cv_build else ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` || as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5 fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5 $as_echo "$ac_cv_host" >&6; } case $ac_cv_host in *-*-*) ;; *) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;; esac host=$ac_cv_host ac_save_IFS=$IFS; IFS='-' set x $ac_cv_host shift host_cpu=$1 host_vendor=$2 shift; shift # Remember, the first character of IFS is used to create $*, # except with old shells: host_os=$* IFS=$ac_save_IFS case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac # Backslashify metacharacters that are still active within # double-quoted strings. sed_quote_subst='s/\(["`$\\]\)/\\\1/g' # Same as above, but do not quote variable references. double_quote_subst='s/\(["`\\]\)/\\\1/g' # Sed substitution to delay expansion of an escaped shell variable in a # double_quote_subst'ed string. delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' # Sed substitution to delay expansion of an escaped single quote. delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g' # Sed substitution to avoid accidental globbing in evaled expressions no_glob_subst='s/\*/\\\*/g' ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5 $as_echo_n "checking how to print strings... " >&6; } # Test print first, because it will be a builtin if present. if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \ test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then ECHO='print -r --' elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then ECHO='printf %s\n' else # Use this function as a fallback that always works. func_fallback_echo () { eval 'cat <<_LTECHO_EOF $1 _LTECHO_EOF' } ECHO='func_fallback_echo' fi # func_echo_all arg... # Invoke $ECHO with all args, space-separated. func_echo_all () { $ECHO "" } case $ECHO in printf*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: printf" >&5 $as_echo "printf" >&6; } ;; print*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: print -r" >&5 $as_echo "print -r" >&6; } ;; *) { $as_echo "$as_me:${as_lineno-$LINENO}: result: cat" >&5 $as_echo "cat" >&6; } ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5 $as_echo_n "checking for a sed that does not truncate output... " >&6; } if ${ac_cv_path_SED+:} false; then : $as_echo_n "(cached) " >&6 else ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/ for ac_i in 1 2 3 4 5 6 7; do ac_script="$ac_script$as_nl$ac_script" done echo "$ac_script" 2>/dev/null | sed 99q >conftest.sed { ac_script=; unset ac_script;} if test -z "$SED"; then ac_path_SED_found=false # Loop through the user's path and test for each of PROGNAME-LIST as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_prog in sed gsed; do for ac_exec_ext in '' $ac_executable_extensions; do ac_path_SED="$as_dir/$ac_prog$ac_exec_ext" as_fn_executable_p "$ac_path_SED" || continue # Check for GNU ac_path_SED and select it if it is found. # Check for GNU $ac_path_SED case `"$ac_path_SED" --version 2>&1` in *GNU*) ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;; *) ac_count=0 $as_echo_n 0123456789 >"conftest.in" while : do cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" $as_echo '' >> "conftest.nl" "$ac_path_SED" -f conftest.sed < "conftest.nl" >"conftest.out" 2>/dev/null || break diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break as_fn_arith $ac_count + 1 && ac_count=$as_val if test $ac_count -gt ${ac_path_SED_max-0}; then # Best one so far, save it but keep looking for a better one ac_cv_path_SED="$ac_path_SED" ac_path_SED_max=$ac_count fi # 10*(2^10) chars as input seems more than enough test $ac_count -gt 10 && break done rm -f conftest.in conftest.tmp conftest.nl conftest.out;; esac $ac_path_SED_found && break 3 done done done IFS=$as_save_IFS if test -z "$ac_cv_path_SED"; then as_fn_error $? "no acceptable sed could be found in \$PATH" "$LINENO" 5 fi else ac_cv_path_SED=$SED fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5 $as_echo "$ac_cv_path_SED" >&6; } SED="$ac_cv_path_SED" rm -f conftest.sed test -z "$SED" && SED=sed Xsed="$SED -e 1s/^X//" { $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5 $as_echo_n "checking for grep that handles long lines and -e... " >&6; } if ${ac_cv_path_GREP+:} false; then : $as_echo_n "(cached) " >&6 else if test -z "$GREP"; then ac_path_GREP_found=false # Loop through the user's path and test for each of PROGNAME-LIST as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_prog in grep ggrep; do for ac_exec_ext in '' $ac_executable_extensions; do ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext" as_fn_executable_p "$ac_path_GREP" || continue # Check for GNU ac_path_GREP and select it if it is found. # Check for GNU $ac_path_GREP case `"$ac_path_GREP" --version 2>&1` in *GNU*) ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;; *) ac_count=0 $as_echo_n 0123456789 >"conftest.in" while : do cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" $as_echo 'GREP' >> "conftest.nl" "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break as_fn_arith $ac_count + 1 && ac_count=$as_val if test $ac_count -gt ${ac_path_GREP_max-0}; then # Best one so far, save it but keep looking for a better one ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_max=$ac_count fi # 10*(2^10) chars as input seems more than enough test $ac_count -gt 10 && break done rm -f conftest.in conftest.tmp conftest.nl conftest.out;; esac $ac_path_GREP_found && break 3 done done done IFS=$as_save_IFS if test -z "$ac_cv_path_GREP"; then as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 fi else ac_cv_path_GREP=$GREP fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5 $as_echo "$ac_cv_path_GREP" >&6; } GREP="$ac_cv_path_GREP" { $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5 $as_echo_n "checking for egrep... " >&6; } if ${ac_cv_path_EGREP+:} false; then : $as_echo_n "(cached) " >&6 else if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 then ac_cv_path_EGREP="$GREP -E" else if test -z "$EGREP"; then ac_path_EGREP_found=false # Loop through the user's path and test for each of PROGNAME-LIST as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_prog in egrep; do for ac_exec_ext in '' $ac_executable_extensions; do ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" as_fn_executable_p "$ac_path_EGREP" || continue # Check for GNU ac_path_EGREP and select it if it is found. # Check for GNU $ac_path_EGREP case `"$ac_path_EGREP" --version 2>&1` in *GNU*) ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;; *) ac_count=0 $as_echo_n 0123456789 >"conftest.in" while : do cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" $as_echo 'EGREP' >> "conftest.nl" "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break as_fn_arith $ac_count + 1 && ac_count=$as_val if test $ac_count -gt ${ac_path_EGREP_max-0}; then # Best one so far, save it but keep looking for a better one ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_max=$ac_count fi # 10*(2^10) chars as input seems more than enough test $ac_count -gt 10 && break done rm -f conftest.in conftest.tmp conftest.nl conftest.out;; esac $ac_path_EGREP_found && break 3 done done done IFS=$as_save_IFS if test -z "$ac_cv_path_EGREP"; then as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 fi else ac_cv_path_EGREP=$EGREP fi fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5 $as_echo "$ac_cv_path_EGREP" >&6; } EGREP="$ac_cv_path_EGREP" { $as_echo "$as_me:${as_lineno-$LINENO}: checking for fgrep" >&5 $as_echo_n "checking for fgrep... " >&6; } if ${ac_cv_path_FGREP+:} false; then : $as_echo_n "(cached) " >&6 else if echo 'ab*c' | $GREP -F 'ab*c' >/dev/null 2>&1 then ac_cv_path_FGREP="$GREP -F" else if test -z "$FGREP"; then ac_path_FGREP_found=false # Loop through the user's path and test for each of PROGNAME-LIST as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_prog in fgrep; do for ac_exec_ext in '' $ac_executable_extensions; do ac_path_FGREP="$as_dir/$ac_prog$ac_exec_ext" as_fn_executable_p "$ac_path_FGREP" || continue # Check for GNU ac_path_FGREP and select it if it is found. # Check for GNU $ac_path_FGREP case `"$ac_path_FGREP" --version 2>&1` in *GNU*) ac_cv_path_FGREP="$ac_path_FGREP" ac_path_FGREP_found=:;; *) ac_count=0 $as_echo_n 0123456789 >"conftest.in" while : do cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" $as_echo 'FGREP' >> "conftest.nl" "$ac_path_FGREP" FGREP < "conftest.nl" >"conftest.out" 2>/dev/null || break diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break as_fn_arith $ac_count + 1 && ac_count=$as_val if test $ac_count -gt ${ac_path_FGREP_max-0}; then # Best one so far, save it but keep looking for a better one ac_cv_path_FGREP="$ac_path_FGREP" ac_path_FGREP_max=$ac_count fi # 10*(2^10) chars as input seems more than enough test $ac_count -gt 10 && break done rm -f conftest.in conftest.tmp conftest.nl conftest.out;; esac $ac_path_FGREP_found && break 3 done done done IFS=$as_save_IFS if test -z "$ac_cv_path_FGREP"; then as_fn_error $? "no acceptable fgrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 fi else ac_cv_path_FGREP=$FGREP fi fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_FGREP" >&5 $as_echo "$ac_cv_path_FGREP" >&6; } FGREP="$ac_cv_path_FGREP" test -z "$GREP" && GREP=grep # Check whether --with-gnu-ld was given. if test "${with_gnu_ld+set}" = set; then : withval=$with_gnu_ld; test no = "$withval" || with_gnu_ld=yes else with_gnu_ld=no fi ac_prog=ld if test yes = "$GCC"; then # Check if gcc -print-prog-name=ld gives a path. { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5 $as_echo_n "checking for ld used by $CC... " >&6; } case $host in *-*-mingw*) # gcc leaves a trailing carriage return, which upsets mingw ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; *) ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; esac case $ac_prog in # Accept absolute paths. [\\/]* | ?:[\\/]*) re_direlt='/[^/][^/]*/\.\./' # Canonicalize the pathname of ld ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'` while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"` done test -z "$LD" && LD=$ac_prog ;; "") # If it fails, then pretend we aren't using GCC. ac_prog=ld ;; *) # If it is relative, then search for the first ld in PATH. with_gnu_ld=unknown ;; esac elif test yes = "$with_gnu_ld"; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5 $as_echo_n "checking for GNU ld... " >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5 $as_echo_n "checking for non-GNU ld... " >&6; } fi if ${lt_cv_path_LD+:} false; then : $as_echo_n "(cached) " >&6 else if test -z "$LD"; then lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR for ac_dir in $PATH; do IFS=$lt_save_ifs test -z "$ac_dir" && ac_dir=. if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then lt_cv_path_LD=$ac_dir/$ac_prog # Check to see if the program is GNU ld. I'd rather use --version, # but apparently some variants of GNU ld only accept -v. # Break only if it was the GNU/non-GNU ld that we prefer. case `"$lt_cv_path_LD" -v 2>&1 &5 $as_echo "$LD" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5 $as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; } if ${lt_cv_prog_gnu_ld+:} false; then : $as_echo_n "(cached) " >&6 else # I'd rather use --version here, but apparently some GNU lds only accept -v. case `$LD -v 2>&1 &5 $as_echo "$lt_cv_prog_gnu_ld" >&6; } with_gnu_ld=$lt_cv_prog_gnu_ld { $as_echo "$as_me:${as_lineno-$LINENO}: checking for BSD- or MS-compatible name lister (nm)" >&5 $as_echo_n "checking for BSD- or MS-compatible name lister (nm)... " >&6; } if ${lt_cv_path_NM+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$NM"; then # Let the user override the test. lt_cv_path_NM=$NM else lt_nm_to_check=${ac_tool_prefix}nm if test -n "$ac_tool_prefix" && test "$build" = "$host"; then lt_nm_to_check="$lt_nm_to_check nm" fi for lt_tmp_nm in $lt_nm_to_check; do lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do IFS=$lt_save_ifs test -z "$ac_dir" && ac_dir=. tmp_nm=$ac_dir/$lt_tmp_nm if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext"; then # Check to see if the nm accepts a BSD-compat flag. # Adding the 'sed 1q' prevents false positives on HP-UX, which says: # nm: unknown option "B" ignored # Tru64's nm complains that /dev/null is an invalid object file # MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty case $build_os in mingw*) lt_bad_file=conftest.nm/nofile ;; *) lt_bad_file=/dev/null ;; esac case `"$tmp_nm" -B $lt_bad_file 2>&1 | sed '1q'` in *$lt_bad_file* | *'Invalid file or object type'*) lt_cv_path_NM="$tmp_nm -B" break 2 ;; *) case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in */dev/null*) lt_cv_path_NM="$tmp_nm -p" break 2 ;; *) lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but continue # so that we can try to find one that supports BSD flags ;; esac ;; esac fi done IFS=$lt_save_ifs done : ${lt_cv_path_NM=no} fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&5 $as_echo "$lt_cv_path_NM" >&6; } if test no != "$lt_cv_path_NM"; then NM=$lt_cv_path_NM else # Didn't find any BSD compatible name lister, look for dumpbin. if test -n "$DUMPBIN"; then : # Let the user override the test. else if test -n "$ac_tool_prefix"; then for ac_prog in dumpbin "link -dump" do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_DUMPBIN+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$DUMPBIN"; then ac_cv_prog_DUMPBIN="$DUMPBIN" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_DUMPBIN="$ac_tool_prefix$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi DUMPBIN=$ac_cv_prog_DUMPBIN if test -n "$DUMPBIN"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DUMPBIN" >&5 $as_echo "$DUMPBIN" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$DUMPBIN" && break done fi if test -z "$DUMPBIN"; then ac_ct_DUMPBIN=$DUMPBIN for ac_prog in dumpbin "link -dump" do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_DUMPBIN+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_DUMPBIN"; then ac_cv_prog_ac_ct_DUMPBIN="$ac_ct_DUMPBIN" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_DUMPBIN="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_DUMPBIN=$ac_cv_prog_ac_ct_DUMPBIN if test -n "$ac_ct_DUMPBIN"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DUMPBIN" >&5 $as_echo "$ac_ct_DUMPBIN" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$ac_ct_DUMPBIN" && break done if test "x$ac_ct_DUMPBIN" = x; then DUMPBIN=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac DUMPBIN=$ac_ct_DUMPBIN fi fi case `$DUMPBIN -symbols -headers /dev/null 2>&1 | sed '1q'` in *COFF*) DUMPBIN="$DUMPBIN -symbols -headers" ;; *) DUMPBIN=: ;; esac fi if test : != "$DUMPBIN"; then NM=$DUMPBIN fi fi test -z "$NM" && NM=nm { $as_echo "$as_me:${as_lineno-$LINENO}: checking the name lister ($NM) interface" >&5 $as_echo_n "checking the name lister ($NM) interface... " >&6; } if ${lt_cv_nm_interface+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_nm_interface="BSD nm" echo "int some_variable = 0;" > conftest.$ac_ext (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&5) (eval "$ac_compile" 2>conftest.err) cat conftest.err >&5 (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&5) (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out) cat conftest.err >&5 (eval echo "\"\$as_me:$LINENO: output\"" >&5) cat conftest.out >&5 if $GREP 'External.*some_variable' conftest.out > /dev/null; then lt_cv_nm_interface="MS dumpbin" fi rm -f conftest* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_nm_interface" >&5 $as_echo "$lt_cv_nm_interface" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5 $as_echo_n "checking whether ln -s works... " >&6; } LN_S=$as_ln_s if test "$LN_S" = "ln -s"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5 $as_echo "no, using $LN_S" >&6; } fi # find the maximum length of command line arguments { $as_echo "$as_me:${as_lineno-$LINENO}: checking the maximum length of command line arguments" >&5 $as_echo_n "checking the maximum length of command line arguments... " >&6; } if ${lt_cv_sys_max_cmd_len+:} false; then : $as_echo_n "(cached) " >&6 else i=0 teststring=ABCD case $build_os in msdosdjgpp*) # On DJGPP, this test can blow up pretty badly due to problems in libc # (any single argument exceeding 2000 bytes causes a buffer overrun # during glob expansion). Even if it were fixed, the result of this # check would be larger than it should be. lt_cv_sys_max_cmd_len=12288; # 12K is about right ;; gnu*) # Under GNU Hurd, this test is not required because there is # no limit to the length of command line arguments. # Libtool will interpret -1 as no limit whatsoever lt_cv_sys_max_cmd_len=-1; ;; cygwin* | mingw* | cegcc*) # On Win9x/ME, this test blows up -- it succeeds, but takes # about 5 minutes as the teststring grows exponentially. # Worse, since 9x/ME are not pre-emptively multitasking, # you end up with a "frozen" computer, even though with patience # the test eventually succeeds (with a max line length of 256k). # Instead, let's just punt: use the minimum linelength reported by # all of the supported platforms: 8192 (on NT/2K/XP). lt_cv_sys_max_cmd_len=8192; ;; mint*) # On MiNT this can take a long time and run out of memory. lt_cv_sys_max_cmd_len=8192; ;; amigaos*) # On AmigaOS with pdksh, this test takes hours, literally. # So we just punt and use a minimum line length of 8192. lt_cv_sys_max_cmd_len=8192; ;; bitrig* | darwin* | dragonfly* | freebsd* | netbsd* | openbsd*) # This has been around since 386BSD, at least. Likely further. if test -x /sbin/sysctl; then lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax` elif test -x /usr/sbin/sysctl; then lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax` else lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs fi # And add a safety zone lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` ;; interix*) # We know the value 262144 and hardcode it with a safety zone (like BSD) lt_cv_sys_max_cmd_len=196608 ;; os2*) # The test takes a long time on OS/2. lt_cv_sys_max_cmd_len=8192 ;; osf*) # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not # nice to cause kernel panics so lets avoid the loop below. # First set a reasonable default. lt_cv_sys_max_cmd_len=16384 # if test -x /sbin/sysconfig; then case `/sbin/sysconfig -q proc exec_disable_arg_limit` in *1*) lt_cv_sys_max_cmd_len=-1 ;; esac fi ;; sco3.2v5*) lt_cv_sys_max_cmd_len=102400 ;; sysv5* | sco5v6* | sysv4.2uw2*) kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null` if test -n "$kargmax"; then lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[ ]//'` else lt_cv_sys_max_cmd_len=32768 fi ;; *) lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null` if test -n "$lt_cv_sys_max_cmd_len" && \ test undefined != "$lt_cv_sys_max_cmd_len"; then lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` else # Make teststring a little bigger before we do anything with it. # a 1K string should be a reasonable start. for i in 1 2 3 4 5 6 7 8; do teststring=$teststring$teststring done SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}} # If test is not a shell built-in, we'll probably end up computing a # maximum length that is only half of the actual maximum length, but # we can't tell. while { test X`env echo "$teststring$teststring" 2>/dev/null` \ = "X$teststring$teststring"; } >/dev/null 2>&1 && test 17 != "$i" # 1/2 MB should be enough do i=`expr $i + 1` teststring=$teststring$teststring done # Only check the string length outside the loop. lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1` teststring= # Add a significant safety factor because C++ compilers can tack on # massive amounts of additional arguments before passing them to the # linker. It appears as though 1/2 is a usable value. lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2` fi ;; esac fi if test -n "$lt_cv_sys_max_cmd_len"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_max_cmd_len" >&5 $as_echo "$lt_cv_sys_max_cmd_len" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: none" >&5 $as_echo "none" >&6; } fi max_cmd_len=$lt_cv_sys_max_cmd_len : ${CP="cp -f"} : ${MV="mv -f"} : ${RM="rm -f"} if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then lt_unset=unset else lt_unset=false fi # test EBCDIC or ASCII case `echo X|tr X '\101'` in A) # ASCII based system # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr lt_SP2NL='tr \040 \012' lt_NL2SP='tr \015\012 \040\040' ;; *) # EBCDIC based system lt_SP2NL='tr \100 \n' lt_NL2SP='tr \r\n \100\100' ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to $host format" >&5 $as_echo_n "checking how to convert $build file names to $host format... " >&6; } if ${lt_cv_to_host_file_cmd+:} false; then : $as_echo_n "(cached) " >&6 else case $host in *-*-mingw* ) case $build in *-*-mingw* ) # actually msys lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32 ;; *-*-cygwin* ) lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32 ;; * ) # otherwise, assume *nix lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32 ;; esac ;; *-*-cygwin* ) case $build in *-*-mingw* ) # actually msys lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin ;; *-*-cygwin* ) lt_cv_to_host_file_cmd=func_convert_file_noop ;; * ) # otherwise, assume *nix lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin ;; esac ;; * ) # unhandled hosts (and "normal" native builds) lt_cv_to_host_file_cmd=func_convert_file_noop ;; esac fi to_host_file_cmd=$lt_cv_to_host_file_cmd { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_host_file_cmd" >&5 $as_echo "$lt_cv_to_host_file_cmd" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to toolchain format" >&5 $as_echo_n "checking how to convert $build file names to toolchain format... " >&6; } if ${lt_cv_to_tool_file_cmd+:} false; then : $as_echo_n "(cached) " >&6 else #assume ordinary cross tools, or native build. lt_cv_to_tool_file_cmd=func_convert_file_noop case $host in *-*-mingw* ) case $build in *-*-mingw* ) # actually msys lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32 ;; esac ;; esac fi to_tool_file_cmd=$lt_cv_to_tool_file_cmd { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_tool_file_cmd" >&5 $as_echo "$lt_cv_to_tool_file_cmd" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5 $as_echo_n "checking for $LD option to reload object files... " >&6; } if ${lt_cv_ld_reload_flag+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_ld_reload_flag='-r' fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_reload_flag" >&5 $as_echo "$lt_cv_ld_reload_flag" >&6; } reload_flag=$lt_cv_ld_reload_flag case $reload_flag in "" | " "*) ;; *) reload_flag=" $reload_flag" ;; esac reload_cmds='$LD$reload_flag -o $output$reload_objs' case $host_os in cygwin* | mingw* | pw32* | cegcc*) if test yes != "$GCC"; then reload_cmds=false fi ;; darwin*) if test yes = "$GCC"; then reload_cmds='$LTCC $LTCFLAGS -nostdlib $wl-r -o $output$reload_objs' else reload_cmds='$LD$reload_flag -o $output$reload_objs' fi ;; esac if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args. set dummy ${ac_tool_prefix}objdump; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_OBJDUMP+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$OBJDUMP"; then ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi OBJDUMP=$ac_cv_prog_OBJDUMP if test -n "$OBJDUMP"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5 $as_echo "$OBJDUMP" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_OBJDUMP"; then ac_ct_OBJDUMP=$OBJDUMP # Extract the first word of "objdump", so it can be a program name with args. set dummy objdump; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_OBJDUMP+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_OBJDUMP"; then ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_OBJDUMP="objdump" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP if test -n "$ac_ct_OBJDUMP"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5 $as_echo "$ac_ct_OBJDUMP" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_OBJDUMP" = x; then OBJDUMP="false" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac OBJDUMP=$ac_ct_OBJDUMP fi else OBJDUMP="$ac_cv_prog_OBJDUMP" fi test -z "$OBJDUMP" && OBJDUMP=objdump { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to recognize dependent libraries" >&5 $as_echo_n "checking how to recognize dependent libraries... " >&6; } if ${lt_cv_deplibs_check_method+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_file_magic_cmd='$MAGIC_CMD' lt_cv_file_magic_test_file= lt_cv_deplibs_check_method='unknown' # Need to set the preceding variable on all platforms that support # interlibrary dependencies. # 'none' -- dependencies not supported. # 'unknown' -- same as none, but documents that we really don't know. # 'pass_all' -- all dependencies passed with no checks. # 'test_compile' -- check by making test program. # 'file_magic [[regex]]' -- check by looking for files in library path # that responds to the $file_magic_cmd with a given extended regex. # If you have 'file' or equivalent on your system and you're not sure # whether 'pass_all' will *always* work, you probably want this one. case $host_os in aix[4-9]*) lt_cv_deplibs_check_method=pass_all ;; beos*) lt_cv_deplibs_check_method=pass_all ;; bsdi[45]*) lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)' lt_cv_file_magic_cmd='/usr/bin/file -L' lt_cv_file_magic_test_file=/shlib/libc.so ;; cygwin*) # func_win32_libid is a shell function defined in ltmain.sh lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' lt_cv_file_magic_cmd='func_win32_libid' ;; mingw* | pw32*) # Base MSYS/MinGW do not provide the 'file' command needed by # func_win32_libid shell function, so use a weaker test based on 'objdump', # unless we find 'file', for example because we are cross-compiling. if ( file / ) >/dev/null 2>&1; then lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' lt_cv_file_magic_cmd='func_win32_libid' else # Keep this pattern in sync with the one in func_win32_libid. lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' lt_cv_file_magic_cmd='$OBJDUMP -f' fi ;; cegcc*) # use the weaker test based on 'objdump'. See mingw*. lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?' lt_cv_file_magic_cmd='$OBJDUMP -f' ;; darwin* | rhapsody*) lt_cv_deplibs_check_method=pass_all ;; freebsd* | dragonfly*) if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then case $host_cpu in i*86 ) # Not sure whether the presence of OpenBSD here was a mistake. # Let's accept both of them until this is cleared up. lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[3-9]86 (compact )?demand paged shared library' lt_cv_file_magic_cmd=/usr/bin/file lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` ;; esac else lt_cv_deplibs_check_method=pass_all fi ;; haiku*) lt_cv_deplibs_check_method=pass_all ;; hpux10.20* | hpux11*) lt_cv_file_magic_cmd=/usr/bin/file case $host_cpu in ia64*) lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - IA64' lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so ;; hppa*64*) lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF[ -][0-9][0-9])(-bit)?( [LM]SB)? shared object( file)?[, -]* PA-RISC [0-9]\.[0-9]' lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl ;; *) lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9]\.[0-9]) shared library' lt_cv_file_magic_test_file=/usr/lib/libc.sl ;; esac ;; interix[3-9]*) # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|\.a)$' ;; irix5* | irix6* | nonstopux*) case $LD in *-32|*"-32 ") libmagic=32-bit;; *-n32|*"-n32 ") libmagic=N32;; *-64|*"-64 ") libmagic=64-bit;; *) libmagic=never-match;; esac lt_cv_deplibs_check_method=pass_all ;; # This must be glibc/ELF. linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) lt_cv_deplibs_check_method=pass_all ;; netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$' else lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|_pic\.a)$' fi ;; newos6*) lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)' lt_cv_file_magic_cmd=/usr/bin/file lt_cv_file_magic_test_file=/usr/lib/libnls.so ;; *nto* | *qnx*) lt_cv_deplibs_check_method=pass_all ;; openbsd* | bitrig*) if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|\.so|_pic\.a)$' else lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$' fi ;; osf3* | osf4* | osf5*) lt_cv_deplibs_check_method=pass_all ;; rdos*) lt_cv_deplibs_check_method=pass_all ;; solaris*) lt_cv_deplibs_check_method=pass_all ;; sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) lt_cv_deplibs_check_method=pass_all ;; sysv4 | sysv4.3*) case $host_vendor in motorola) lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]' lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` ;; ncr) lt_cv_deplibs_check_method=pass_all ;; sequent) lt_cv_file_magic_cmd='/bin/file' lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )' ;; sni) lt_cv_file_magic_cmd='/bin/file' lt_cv_deplibs_check_method="file_magic ELF [0-9][0-9]*-bit [LM]SB dynamic lib" lt_cv_file_magic_test_file=/lib/libc.so ;; siemens) lt_cv_deplibs_check_method=pass_all ;; pc) lt_cv_deplibs_check_method=pass_all ;; esac ;; tpf*) lt_cv_deplibs_check_method=pass_all ;; os2*) lt_cv_deplibs_check_method=pass_all ;; esac fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5 $as_echo "$lt_cv_deplibs_check_method" >&6; } file_magic_glob= want_nocaseglob=no if test "$build" = "$host"; then case $host_os in mingw* | pw32*) if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then want_nocaseglob=yes else file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[\1]\/[\1]\/g;/g"` fi ;; esac fi file_magic_cmd=$lt_cv_file_magic_cmd deplibs_check_method=$lt_cv_deplibs_check_method test -z "$deplibs_check_method" && deplibs_check_method=unknown if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args. set dummy ${ac_tool_prefix}dlltool; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_DLLTOOL+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$DLLTOOL"; then ac_cv_prog_DLLTOOL="$DLLTOOL" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi DLLTOOL=$ac_cv_prog_DLLTOOL if test -n "$DLLTOOL"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5 $as_echo "$DLLTOOL" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_DLLTOOL"; then ac_ct_DLLTOOL=$DLLTOOL # Extract the first word of "dlltool", so it can be a program name with args. set dummy dlltool; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_DLLTOOL+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_DLLTOOL"; then ac_cv_prog_ac_ct_DLLTOOL="$ac_ct_DLLTOOL" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_DLLTOOL="dlltool" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_DLLTOOL=$ac_cv_prog_ac_ct_DLLTOOL if test -n "$ac_ct_DLLTOOL"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5 $as_echo "$ac_ct_DLLTOOL" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_DLLTOOL" = x; then DLLTOOL="false" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac DLLTOOL=$ac_ct_DLLTOOL fi else DLLTOOL="$ac_cv_prog_DLLTOOL" fi test -z "$DLLTOOL" && DLLTOOL=dlltool { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to associate runtime and link libraries" >&5 $as_echo_n "checking how to associate runtime and link libraries... " >&6; } if ${lt_cv_sharedlib_from_linklib_cmd+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_sharedlib_from_linklib_cmd='unknown' case $host_os in cygwin* | mingw* | pw32* | cegcc*) # two different shell functions defined in ltmain.sh; # decide which one to use based on capabilities of $DLLTOOL case `$DLLTOOL --help 2>&1` in *--identify-strict*) lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib ;; *) lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback ;; esac ;; *) # fallback: assume linklib IS sharedlib lt_cv_sharedlib_from_linklib_cmd=$ECHO ;; esac fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sharedlib_from_linklib_cmd" >&5 $as_echo "$lt_cv_sharedlib_from_linklib_cmd" >&6; } sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO if test -n "$ac_tool_prefix"; then for ac_prog in ar do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_AR+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$AR"; then ac_cv_prog_AR="$AR" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_AR="$ac_tool_prefix$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi AR=$ac_cv_prog_AR if test -n "$AR"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5 $as_echo "$AR" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$AR" && break done fi if test -z "$AR"; then ac_ct_AR=$AR for ac_prog in ar do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_AR+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_AR"; then ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_AR="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_AR=$ac_cv_prog_ac_ct_AR if test -n "$ac_ct_AR"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5 $as_echo "$ac_ct_AR" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$ac_ct_AR" && break done if test "x$ac_ct_AR" = x; then AR="false" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac AR=$ac_ct_AR fi fi : ${AR=ar} : ${AR_FLAGS=cru} { $as_echo "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5 $as_echo_n "checking for archiver @FILE support... " >&6; } if ${lt_cv_ar_at_file+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_ar_at_file=no cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : echo conftest.$ac_objext > conftest.lst lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&5' { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5 (eval $lt_ar_try) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } if test 0 -eq "$ac_status"; then # Ensure the archiver fails upon bogus file names. rm -f conftest.$ac_objext libconftest.a { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5 (eval $lt_ar_try) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } if test 0 -ne "$ac_status"; then lt_cv_ar_at_file=@ fi fi rm -f conftest.* libconftest.a fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5 $as_echo "$lt_cv_ar_at_file" >&6; } if test no = "$lt_cv_ar_at_file"; then archiver_list_spec= else archiver_list_spec=$lt_cv_ar_at_file fi if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. set dummy ${ac_tool_prefix}strip; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_STRIP+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$STRIP"; then ac_cv_prog_STRIP="$STRIP" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_STRIP="${ac_tool_prefix}strip" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi STRIP=$ac_cv_prog_STRIP if test -n "$STRIP"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5 $as_echo "$STRIP" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_STRIP"; then ac_ct_STRIP=$STRIP # Extract the first word of "strip", so it can be a program name with args. set dummy strip; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_STRIP+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_STRIP"; then ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_STRIP="strip" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP if test -n "$ac_ct_STRIP"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5 $as_echo "$ac_ct_STRIP" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_STRIP" = x; then STRIP=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac STRIP=$ac_ct_STRIP fi else STRIP="$ac_cv_prog_STRIP" fi test -z "$STRIP" && STRIP=: if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. set dummy ${ac_tool_prefix}ranlib; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_RANLIB+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$RANLIB"; then ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi RANLIB=$ac_cv_prog_RANLIB if test -n "$RANLIB"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5 $as_echo "$RANLIB" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_RANLIB"; then ac_ct_RANLIB=$RANLIB # Extract the first word of "ranlib", so it can be a program name with args. set dummy ranlib; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_RANLIB+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_RANLIB"; then ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_RANLIB="ranlib" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB if test -n "$ac_ct_RANLIB"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5 $as_echo "$ac_ct_RANLIB" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_RANLIB" = x; then RANLIB=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac RANLIB=$ac_ct_RANLIB fi else RANLIB="$ac_cv_prog_RANLIB" fi test -z "$RANLIB" && RANLIB=: # Determine commands to create old-style static archives. old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs' old_postinstall_cmds='chmod 644 $oldlib' old_postuninstall_cmds= if test -n "$RANLIB"; then case $host_os in bitrig* | openbsd*) old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib" ;; *) old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib" ;; esac old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib" fi case $host_os in darwin*) lock_old_archive_extraction=yes ;; *) lock_old_archive_extraction=no ;; esac # If no C compiler was specified, use CC. LTCC=${LTCC-"$CC"} # If no C compiler flags were specified, use CFLAGS. LTCFLAGS=${LTCFLAGS-"$CFLAGS"} # Allow CC to be a program name with arguments. compiler=$CC # Check for command to grab the raw symbol name followed by C symbol from nm. { $as_echo "$as_me:${as_lineno-$LINENO}: checking command to parse $NM output from $compiler object" >&5 $as_echo_n "checking command to parse $NM output from $compiler object... " >&6; } if ${lt_cv_sys_global_symbol_pipe+:} false; then : $as_echo_n "(cached) " >&6 else # These are sane defaults that work on at least a few old systems. # [They come from Ultrix. What could be older than Ultrix?!! ;)] # Character class describing NM global symbol codes. symcode='[BCDEGRST]' # Regexp to match symbols that can be accessed directly from C. sympat='\([_A-Za-z][_A-Za-z0-9]*\)' # Define system-specific variables. case $host_os in aix*) symcode='[BCDT]' ;; cygwin* | mingw* | pw32* | cegcc*) symcode='[ABCDGISTW]' ;; hpux*) if test ia64 = "$host_cpu"; then symcode='[ABCDEGRST]' fi ;; irix* | nonstopux*) symcode='[BCDEGRST]' ;; osf*) symcode='[BCDEGQRST]' ;; solaris*) symcode='[BDRT]' ;; sco3.2v5*) symcode='[DT]' ;; sysv4.2uw2*) symcode='[DT]' ;; sysv5* | sco5v6* | unixware* | OpenUNIX*) symcode='[ABDT]' ;; sysv4) symcode='[DFNSTU]' ;; esac # If we're using GNU nm, then use its standard symbol codes. case `$NM -V 2>&1` in *GNU* | *'with BFD'*) symcode='[ABCDGIRSTW]' ;; esac if test "$lt_cv_nm_interface" = "MS dumpbin"; then # Gets list of data symbols to import. lt_cv_sys_global_symbol_to_import="sed -n -e 's/^I .* \(.*\)$/\1/p'" # Adjust the below global symbol transforms to fixup imported variables. lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'" lt_c_name_hook=" -e 's/^I .* \(.*\)$/ {\"\1\", (void *) 0},/p'" lt_c_name_lib_hook="\ -e 's/^I .* \(lib.*\)$/ {\"\1\", (void *) 0},/p'\ -e 's/^I .* \(.*\)$/ {\"lib\1\", (void *) 0},/p'" else # Disable hooks by default. lt_cv_sys_global_symbol_to_import= lt_cdecl_hook= lt_c_name_hook= lt_c_name_lib_hook= fi # Transform an extracted symbol line into a proper C declaration. # Some systems (esp. on ia64) link data and code symbols differently, # so use this general approach. lt_cv_sys_global_symbol_to_cdecl="sed -n"\ $lt_cdecl_hook\ " -e 's/^T .* \(.*\)$/extern int \1();/p'"\ " -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'" # Transform an extracted symbol line into symbol name and symbol address lt_cv_sys_global_symbol_to_c_name_address="sed -n"\ $lt_c_name_hook\ " -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ " -e 's/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/p'" # Transform an extracted symbol line into symbol name with lib prefix and # symbol address. lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n"\ $lt_c_name_lib_hook\ " -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ " -e 's/^$symcode$symcode* .* \(lib.*\)$/ {\"\1\", (void *) \&\1},/p'"\ " -e 's/^$symcode$symcode* .* \(.*\)$/ {\"lib\1\", (void *) \&\1},/p'" # Handle CRLF in mingw tool chain opt_cr= case $build_os in mingw*) opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp ;; esac # Try without a prefix underscore, then with it. for ac_symprfx in "" "_"; do # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol. symxfrm="\\1 $ac_symprfx\\2 \\2" # Write the raw and C identifiers. if test "$lt_cv_nm_interface" = "MS dumpbin"; then # Fake it for dumpbin and say T for any non-static function, # D for any global variable and I for any imported variable. # Also find C++ and __fastcall symbols from MSVC++, # which start with @ or ?. lt_cv_sys_global_symbol_pipe="$AWK '"\ " {last_section=section; section=\$ 3};"\ " /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\ " /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\ " /^ *Symbol name *: /{split(\$ 0,sn,\":\"); si=substr(sn[2],2)};"\ " /^ *Type *: code/{print \"T\",si,substr(si,length(prfx))};"\ " /^ *Type *: data/{print \"I\",si,substr(si,length(prfx))};"\ " \$ 0!~/External *\|/{next};"\ " / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\ " {if(hide[section]) next};"\ " {f=\"D\"}; \$ 0~/\(\).*\|/{f=\"T\"};"\ " {split(\$ 0,a,/\||\r/); split(a[2],s)};"\ " s[1]~/^[@?]/{print f,s[1],s[1]; next};"\ " s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\ " ' prfx=^$ac_symprfx" else lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" fi lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'" # Check to see that the pipe works correctly. pipe_works=no rm -f conftest* cat > conftest.$ac_ext <<_LT_EOF #ifdef __cplusplus extern "C" { #endif char nm_test_var; void nm_test_func(void); void nm_test_func(void){} #ifdef __cplusplus } #endif int main(){nm_test_var='a';nm_test_func();return(0);} _LT_EOF if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then # Now try to grab the symbols. nlist=conftest.nm if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist\""; } >&5 (eval $NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && test -s "$nlist"; then # Try sorting and uniquifying the output. if sort "$nlist" | uniq > "$nlist"T; then mv -f "$nlist"T "$nlist" else rm -f "$nlist"T fi # Make sure that we snagged all the symbols we need. if $GREP ' nm_test_var$' "$nlist" >/dev/null; then if $GREP ' nm_test_func$' "$nlist" >/dev/null; then cat <<_LT_EOF > conftest.$ac_ext /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */ #if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE /* DATA imports from DLLs on WIN32 can't be const, because runtime relocations are performed -- see ld's documentation on pseudo-relocs. */ # define LT_DLSYM_CONST #elif defined __osf__ /* This system does not cope well with relocations in const data. */ # define LT_DLSYM_CONST #else # define LT_DLSYM_CONST const #endif #ifdef __cplusplus extern "C" { #endif _LT_EOF # Now generate the symbol file. eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext' cat <<_LT_EOF >> conftest.$ac_ext /* The mapping between symbol names and symbols. */ LT_DLSYM_CONST struct { const char *name; void *address; } lt__PROGRAM__LTX_preloaded_symbols[] = { { "@PROGRAM@", (void *) 0 }, _LT_EOF $SED "s/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext cat <<\_LT_EOF >> conftest.$ac_ext {0, (void *) 0} }; /* This works around a problem in FreeBSD linker */ #ifdef FREEBSD_WORKAROUND static const void *lt_preloaded_setup() { return lt__PROGRAM__LTX_preloaded_symbols; } #endif #ifdef __cplusplus } #endif _LT_EOF # Now try linking the two files. mv conftest.$ac_objext conftstm.$ac_objext lt_globsym_save_LIBS=$LIBS lt_globsym_save_CFLAGS=$CFLAGS LIBS=conftstm.$ac_objext CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag" if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 (eval $ac_link) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && test -s conftest$ac_exeext; then pipe_works=yes fi LIBS=$lt_globsym_save_LIBS CFLAGS=$lt_globsym_save_CFLAGS else echo "cannot find nm_test_func in $nlist" >&5 fi else echo "cannot find nm_test_var in $nlist" >&5 fi else echo "cannot run $lt_cv_sys_global_symbol_pipe" >&5 fi else echo "$progname: failed program was:" >&5 cat conftest.$ac_ext >&5 fi rm -rf conftest* conftst* # Do not use the global_symbol_pipe unless it works. if test yes = "$pipe_works"; then break else lt_cv_sys_global_symbol_pipe= fi done fi if test -z "$lt_cv_sys_global_symbol_pipe"; then lt_cv_sys_global_symbol_to_cdecl= fi if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: failed" >&5 $as_echo "failed" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5 $as_echo "ok" >&6; } fi # Response file support. if test "$lt_cv_nm_interface" = "MS dumpbin"; then nm_file_list_spec='@' elif $NM --help 2>/dev/null | grep '[@]FILE' >/dev/null; then nm_file_list_spec='@' fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5 $as_echo_n "checking for sysroot... " >&6; } # Check whether --with-sysroot was given. if test "${with_sysroot+set}" = set; then : withval=$with_sysroot; else with_sysroot=no fi lt_sysroot= case $with_sysroot in #( yes) if test yes = "$GCC"; then lt_sysroot=`$CC --print-sysroot 2>/dev/null` fi ;; #( /*) lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"` ;; #( no|'') ;; #( *) { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_sysroot" >&5 $as_echo "$with_sysroot" >&6; } as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5 ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&5 $as_echo "${lt_sysroot:-no}" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a working dd" >&5 $as_echo_n "checking for a working dd... " >&6; } if ${ac_cv_path_lt_DD+:} false; then : $as_echo_n "(cached) " >&6 else printf 0123456789abcdef0123456789abcdef >conftest.i cat conftest.i conftest.i >conftest2.i : ${lt_DD:=$DD} if test -z "$lt_DD"; then ac_path_lt_DD_found=false # Loop through the user's path and test for each of PROGNAME-LIST as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_prog in dd; do for ac_exec_ext in '' $ac_executable_extensions; do ac_path_lt_DD="$as_dir/$ac_prog$ac_exec_ext" as_fn_executable_p "$ac_path_lt_DD" || continue if "$ac_path_lt_DD" bs=32 count=1 conftest.out 2>/dev/null; then cmp -s conftest.i conftest.out \ && ac_cv_path_lt_DD="$ac_path_lt_DD" ac_path_lt_DD_found=: fi $ac_path_lt_DD_found && break 3 done done done IFS=$as_save_IFS if test -z "$ac_cv_path_lt_DD"; then : fi else ac_cv_path_lt_DD=$lt_DD fi rm -f conftest.i conftest2.i conftest.out fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_lt_DD" >&5 $as_echo "$ac_cv_path_lt_DD" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to truncate binary pipes" >&5 $as_echo_n "checking how to truncate binary pipes... " >&6; } if ${lt_cv_truncate_bin+:} false; then : $as_echo_n "(cached) " >&6 else printf 0123456789abcdef0123456789abcdef >conftest.i cat conftest.i conftest.i >conftest2.i lt_cv_truncate_bin= if "$ac_cv_path_lt_DD" bs=32 count=1 conftest.out 2>/dev/null; then cmp -s conftest.i conftest.out \ && lt_cv_truncate_bin="$ac_cv_path_lt_DD bs=4096 count=1" fi rm -f conftest.i conftest2.i conftest.out test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q" fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_truncate_bin" >&5 $as_echo "$lt_cv_truncate_bin" >&6; } # Calculate cc_basename. Skip known compiler wrappers and cross-prefix. func_cc_basename () { for cc_temp in $*""; do case $cc_temp in compile | *[\\/]compile | ccache | *[\\/]ccache ) ;; distcc | *[\\/]distcc | purify | *[\\/]purify ) ;; \-*) ;; *) break;; esac done func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` } # Check whether --enable-libtool-lock was given. if test "${enable_libtool_lock+set}" = set; then : enableval=$enable_libtool_lock; fi test no = "$enable_libtool_lock" || enable_libtool_lock=yes # Some flags need to be propagated to the compiler or linker for good # libtool support. case $host in ia64-*-hpux*) # Find out what ABI is being produced by ac_compile, and set mode # options accordingly. echo 'int i;' > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then case `/usr/bin/file conftest.$ac_objext` in *ELF-32*) HPUX_IA64_MODE=32 ;; *ELF-64*) HPUX_IA64_MODE=64 ;; esac fi rm -rf conftest* ;; *-*-irix6*) # Find out what ABI is being produced by ac_compile, and set linker # options accordingly. echo '#line '$LINENO' "configure"' > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then if test yes = "$lt_cv_prog_gnu_ld"; then case `/usr/bin/file conftest.$ac_objext` in *32-bit*) LD="${LD-ld} -melf32bsmip" ;; *N32*) LD="${LD-ld} -melf32bmipn32" ;; *64-bit*) LD="${LD-ld} -melf64bmip" ;; esac else case `/usr/bin/file conftest.$ac_objext` in *32-bit*) LD="${LD-ld} -32" ;; *N32*) LD="${LD-ld} -n32" ;; *64-bit*) LD="${LD-ld} -64" ;; esac fi fi rm -rf conftest* ;; mips64*-*linux*) # Find out what ABI is being produced by ac_compile, and set linker # options accordingly. echo '#line '$LINENO' "configure"' > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then emul=elf case `/usr/bin/file conftest.$ac_objext` in *32-bit*) emul="${emul}32" ;; *64-bit*) emul="${emul}64" ;; esac case `/usr/bin/file conftest.$ac_objext` in *MSB*) emul="${emul}btsmip" ;; *LSB*) emul="${emul}ltsmip" ;; esac case `/usr/bin/file conftest.$ac_objext` in *N32*) emul="${emul}n32" ;; esac LD="${LD-ld} -m $emul" fi rm -rf conftest* ;; x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \ s390*-*linux*|s390*-*tpf*|sparc*-*linux*) # Find out what ABI is being produced by ac_compile, and set linker # options accordingly. Note that the listed cases only cover the # situations where additional linker options are needed (such as when # doing 32-bit compilation for a host where ld defaults to 64-bit, or # vice versa); the common cases where no linker options are needed do # not appear in the list. echo 'int i;' > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then case `/usr/bin/file conftest.o` in *32-bit*) case $host in x86_64-*kfreebsd*-gnu) LD="${LD-ld} -m elf_i386_fbsd" ;; x86_64-*linux*) case `/usr/bin/file conftest.o` in *x86-64*) LD="${LD-ld} -m elf32_x86_64" ;; *) LD="${LD-ld} -m elf_i386" ;; esac ;; powerpc64le-*linux*) LD="${LD-ld} -m elf32lppclinux" ;; powerpc64-*linux*) LD="${LD-ld} -m elf32ppclinux" ;; s390x-*linux*) LD="${LD-ld} -m elf_s390" ;; sparc64-*linux*) LD="${LD-ld} -m elf32_sparc" ;; esac ;; *64-bit*) case $host in x86_64-*kfreebsd*-gnu) LD="${LD-ld} -m elf_x86_64_fbsd" ;; x86_64-*linux*) LD="${LD-ld} -m elf_x86_64" ;; powerpcle-*linux*) LD="${LD-ld} -m elf64lppc" ;; powerpc-*linux*) LD="${LD-ld} -m elf64ppc" ;; s390*-*linux*|s390*-*tpf*) LD="${LD-ld} -m elf64_s390" ;; sparc*-*linux*) LD="${LD-ld} -m elf64_sparc" ;; esac ;; esac fi rm -rf conftest* ;; *-*-sco3.2v5*) # On SCO OpenServer 5, we need -belf to get full-featured binaries. SAVE_CFLAGS=$CFLAGS CFLAGS="$CFLAGS -belf" { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&5 $as_echo_n "checking whether the C compiler needs -belf... " >&6; } if ${lt_cv_cc_needs_belf+:} false; then : $as_echo_n "(cached) " >&6 else ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : lt_cv_cc_needs_belf=yes else lt_cv_cc_needs_belf=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_cc_needs_belf" >&5 $as_echo "$lt_cv_cc_needs_belf" >&6; } if test yes != "$lt_cv_cc_needs_belf"; then # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf CFLAGS=$SAVE_CFLAGS fi ;; *-*solaris*) # Find out what ABI is being produced by ac_compile, and set linker # options accordingly. echo 'int i;' > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then case `/usr/bin/file conftest.o` in *64-bit*) case $lt_cv_prog_gnu_ld in yes*) case $host in i?86-*-solaris*|x86_64-*-solaris*) LD="${LD-ld} -m elf_x86_64" ;; sparc*-*-solaris*) LD="${LD-ld} -m elf64_sparc" ;; esac # GNU ld 2.21 introduced _sol2 emulations. Use them if available. if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then LD=${LD-ld}_sol2 fi ;; *) if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then LD="${LD-ld} -64" fi ;; esac ;; esac fi rm -rf conftest* ;; esac need_locks=$enable_libtool_lock if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}mt", so it can be a program name with args. set dummy ${ac_tool_prefix}mt; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_MANIFEST_TOOL+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$MANIFEST_TOOL"; then ac_cv_prog_MANIFEST_TOOL="$MANIFEST_TOOL" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_MANIFEST_TOOL="${ac_tool_prefix}mt" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi MANIFEST_TOOL=$ac_cv_prog_MANIFEST_TOOL if test -n "$MANIFEST_TOOL"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MANIFEST_TOOL" >&5 $as_echo "$MANIFEST_TOOL" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_MANIFEST_TOOL"; then ac_ct_MANIFEST_TOOL=$MANIFEST_TOOL # Extract the first word of "mt", so it can be a program name with args. set dummy mt; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_MANIFEST_TOOL+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_MANIFEST_TOOL"; then ac_cv_prog_ac_ct_MANIFEST_TOOL="$ac_ct_MANIFEST_TOOL" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_MANIFEST_TOOL="mt" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_MANIFEST_TOOL=$ac_cv_prog_ac_ct_MANIFEST_TOOL if test -n "$ac_ct_MANIFEST_TOOL"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_MANIFEST_TOOL" >&5 $as_echo "$ac_ct_MANIFEST_TOOL" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_MANIFEST_TOOL" = x; then MANIFEST_TOOL=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac MANIFEST_TOOL=$ac_ct_MANIFEST_TOOL fi else MANIFEST_TOOL="$ac_cv_prog_MANIFEST_TOOL" fi test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $MANIFEST_TOOL is a manifest tool" >&5 $as_echo_n "checking if $MANIFEST_TOOL is a manifest tool... " >&6; } if ${lt_cv_path_mainfest_tool+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_path_mainfest_tool=no echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&5 $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out cat conftest.err >&5 if $GREP 'Manifest Tool' conftest.out > /dev/null; then lt_cv_path_mainfest_tool=yes fi rm -f conftest* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_mainfest_tool" >&5 $as_echo "$lt_cv_path_mainfest_tool" >&6; } if test yes != "$lt_cv_path_mainfest_tool"; then MANIFEST_TOOL=: fi case $host_os in rhapsody* | darwin*) if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}dsymutil", so it can be a program name with args. set dummy ${ac_tool_prefix}dsymutil; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_DSYMUTIL+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$DSYMUTIL"; then ac_cv_prog_DSYMUTIL="$DSYMUTIL" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_DSYMUTIL="${ac_tool_prefix}dsymutil" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi DSYMUTIL=$ac_cv_prog_DSYMUTIL if test -n "$DSYMUTIL"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DSYMUTIL" >&5 $as_echo "$DSYMUTIL" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_DSYMUTIL"; then ac_ct_DSYMUTIL=$DSYMUTIL # Extract the first word of "dsymutil", so it can be a program name with args. set dummy dsymutil; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_DSYMUTIL+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_DSYMUTIL"; then ac_cv_prog_ac_ct_DSYMUTIL="$ac_ct_DSYMUTIL" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_DSYMUTIL="dsymutil" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_DSYMUTIL=$ac_cv_prog_ac_ct_DSYMUTIL if test -n "$ac_ct_DSYMUTIL"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DSYMUTIL" >&5 $as_echo "$ac_ct_DSYMUTIL" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_DSYMUTIL" = x; then DSYMUTIL=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac DSYMUTIL=$ac_ct_DSYMUTIL fi else DSYMUTIL="$ac_cv_prog_DSYMUTIL" fi if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}nmedit", so it can be a program name with args. set dummy ${ac_tool_prefix}nmedit; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_NMEDIT+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$NMEDIT"; then ac_cv_prog_NMEDIT="$NMEDIT" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_NMEDIT="${ac_tool_prefix}nmedit" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi NMEDIT=$ac_cv_prog_NMEDIT if test -n "$NMEDIT"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NMEDIT" >&5 $as_echo "$NMEDIT" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_NMEDIT"; then ac_ct_NMEDIT=$NMEDIT # Extract the first word of "nmedit", so it can be a program name with args. set dummy nmedit; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_NMEDIT+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_NMEDIT"; then ac_cv_prog_ac_ct_NMEDIT="$ac_ct_NMEDIT" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_NMEDIT="nmedit" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_NMEDIT=$ac_cv_prog_ac_ct_NMEDIT if test -n "$ac_ct_NMEDIT"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_NMEDIT" >&5 $as_echo "$ac_ct_NMEDIT" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_NMEDIT" = x; then NMEDIT=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac NMEDIT=$ac_ct_NMEDIT fi else NMEDIT="$ac_cv_prog_NMEDIT" fi if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}lipo", so it can be a program name with args. set dummy ${ac_tool_prefix}lipo; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_LIPO+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$LIPO"; then ac_cv_prog_LIPO="$LIPO" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_LIPO="${ac_tool_prefix}lipo" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi LIPO=$ac_cv_prog_LIPO if test -n "$LIPO"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIPO" >&5 $as_echo "$LIPO" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_LIPO"; then ac_ct_LIPO=$LIPO # Extract the first word of "lipo", so it can be a program name with args. set dummy lipo; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_LIPO+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_LIPO"; then ac_cv_prog_ac_ct_LIPO="$ac_ct_LIPO" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_LIPO="lipo" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_LIPO=$ac_cv_prog_ac_ct_LIPO if test -n "$ac_ct_LIPO"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_LIPO" >&5 $as_echo "$ac_ct_LIPO" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_LIPO" = x; then LIPO=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac LIPO=$ac_ct_LIPO fi else LIPO="$ac_cv_prog_LIPO" fi if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}otool", so it can be a program name with args. set dummy ${ac_tool_prefix}otool; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_OTOOL+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$OTOOL"; then ac_cv_prog_OTOOL="$OTOOL" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_OTOOL="${ac_tool_prefix}otool" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi OTOOL=$ac_cv_prog_OTOOL if test -n "$OTOOL"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL" >&5 $as_echo "$OTOOL" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_OTOOL"; then ac_ct_OTOOL=$OTOOL # Extract the first word of "otool", so it can be a program name with args. set dummy otool; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_OTOOL+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_OTOOL"; then ac_cv_prog_ac_ct_OTOOL="$ac_ct_OTOOL" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_OTOOL="otool" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_OTOOL=$ac_cv_prog_ac_ct_OTOOL if test -n "$ac_ct_OTOOL"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL" >&5 $as_echo "$ac_ct_OTOOL" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_OTOOL" = x; then OTOOL=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac OTOOL=$ac_ct_OTOOL fi else OTOOL="$ac_cv_prog_OTOOL" fi if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}otool64", so it can be a program name with args. set dummy ${ac_tool_prefix}otool64; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_OTOOL64+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$OTOOL64"; then ac_cv_prog_OTOOL64="$OTOOL64" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_OTOOL64="${ac_tool_prefix}otool64" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi OTOOL64=$ac_cv_prog_OTOOL64 if test -n "$OTOOL64"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL64" >&5 $as_echo "$OTOOL64" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_OTOOL64"; then ac_ct_OTOOL64=$OTOOL64 # Extract the first word of "otool64", so it can be a program name with args. set dummy otool64; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_OTOOL64+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_OTOOL64"; then ac_cv_prog_ac_ct_OTOOL64="$ac_ct_OTOOL64" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_OTOOL64="otool64" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_OTOOL64=$ac_cv_prog_ac_ct_OTOOL64 if test -n "$ac_ct_OTOOL64"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL64" >&5 $as_echo "$ac_ct_OTOOL64" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_OTOOL64" = x; then OTOOL64=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac OTOOL64=$ac_ct_OTOOL64 fi else OTOOL64="$ac_cv_prog_OTOOL64" fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -single_module linker flag" >&5 $as_echo_n "checking for -single_module linker flag... " >&6; } if ${lt_cv_apple_cc_single_mod+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_apple_cc_single_mod=no if test -z "$LT_MULTI_MODULE"; then # By default we will add the -single_module flag. You can override # by either setting the environment variable LT_MULTI_MODULE # non-empty at configure time, or by adding -multi_module to the # link flags. rm -rf libconftest.dylib* echo "int foo(void){return 1;}" > conftest.c echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ -dynamiclib -Wl,-single_module conftest.c" >&5 $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ -dynamiclib -Wl,-single_module conftest.c 2>conftest.err _lt_result=$? # If there is a non-empty error log, and "single_module" # appears in it, assume the flag caused a linker warning if test -s conftest.err && $GREP single_module conftest.err; then cat conftest.err >&5 # Otherwise, if the output was created with a 0 exit code from # the compiler, it worked. elif test -f libconftest.dylib && test 0 = "$_lt_result"; then lt_cv_apple_cc_single_mod=yes else cat conftest.err >&5 fi rm -rf libconftest.dylib* rm -f conftest.* fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_apple_cc_single_mod" >&5 $as_echo "$lt_cv_apple_cc_single_mod" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -exported_symbols_list linker flag" >&5 $as_echo_n "checking for -exported_symbols_list linker flag... " >&6; } if ${lt_cv_ld_exported_symbols_list+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_ld_exported_symbols_list=no save_LDFLAGS=$LDFLAGS echo "_main" > conftest.sym LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : lt_cv_ld_exported_symbols_list=yes else lt_cv_ld_exported_symbols_list=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LDFLAGS=$save_LDFLAGS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_exported_symbols_list" >&5 $as_echo "$lt_cv_ld_exported_symbols_list" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -force_load linker flag" >&5 $as_echo_n "checking for -force_load linker flag... " >&6; } if ${lt_cv_ld_force_load+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_ld_force_load=no cat > conftest.c << _LT_EOF int forced_loaded() { return 2;} _LT_EOF echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&5 $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5 echo "$AR cru libconftest.a conftest.o" >&5 $AR cru libconftest.a conftest.o 2>&5 echo "$RANLIB libconftest.a" >&5 $RANLIB libconftest.a 2>&5 cat > conftest.c << _LT_EOF int main() { return 0;} _LT_EOF echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&5 $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err _lt_result=$? if test -s conftest.err && $GREP force_load conftest.err; then cat conftest.err >&5 elif test -f conftest && test 0 = "$_lt_result" && $GREP forced_load conftest >/dev/null 2>&1; then lt_cv_ld_force_load=yes else cat conftest.err >&5 fi rm -f conftest.err libconftest.a conftest conftest.c rm -rf conftest.dSYM fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_force_load" >&5 $as_echo "$lt_cv_ld_force_load" >&6; } case $host_os in rhapsody* | darwin1.[012]) _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;; darwin1.*) _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; darwin*) # darwin 5.x on # if running on 10.5 or later, the deployment target defaults # to the OS version, if on x86, and 10.4, the deployment # target defaults to 10.4. Don't you love it? case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in 10.0,*86*-darwin8*|10.0,*-darwin[91]*) _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; 10.[012][,.]*) _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; 10.*) _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; esac ;; esac if test yes = "$lt_cv_apple_cc_single_mod"; then _lt_dar_single_mod='$single_module' fi if test yes = "$lt_cv_ld_exported_symbols_list"; then _lt_dar_export_syms=' $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym' else _lt_dar_export_syms='~$NMEDIT -s $output_objdir/$libname-symbols.expsym $lib' fi if test : != "$DSYMUTIL" && test no = "$lt_cv_ld_force_load"; then _lt_dsymutil='~$DSYMUTIL $lib || :' else _lt_dsymutil= fi ;; esac # func_munge_path_list VARIABLE PATH # ----------------------------------- # VARIABLE is name of variable containing _space_ separated list of # directories to be munged by the contents of PATH, which is string # having a format: # "DIR[:DIR]:" # string "DIR[ DIR]" will be prepended to VARIABLE # ":DIR[:DIR]" # string "DIR[ DIR]" will be appended to VARIABLE # "DIRP[:DIRP]::[DIRA:]DIRA" # string "DIRP[ DIRP]" will be prepended to VARIABLE and string # "DIRA[ DIRA]" will be appended to VARIABLE # "DIR[:DIR]" # VARIABLE will be replaced by "DIR[ DIR]" func_munge_path_list () { case x$2 in x) ;; *:) eval $1=\"`$ECHO $2 | $SED 's/:/ /g'` \$$1\" ;; x:*) eval $1=\"\$$1 `$ECHO $2 | $SED 's/:/ /g'`\" ;; *::*) eval $1=\"\$$1\ `$ECHO $2 | $SED -e 's/.*:://' -e 's/:/ /g'`\" eval $1=\"`$ECHO $2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \$$1\" ;; *) eval $1=\"`$ECHO $2 | $SED 's/:/ /g'`\" ;; esac } ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5 $as_echo_n "checking how to run the C preprocessor... " >&6; } # On Suns, sometimes $CPP names a directory. if test -n "$CPP" && test -d "$CPP"; then CPP= fi if test -z "$CPP"; then if ${ac_cv_prog_CPP+:} false; then : $as_echo_n "(cached) " >&6 else # Double quotes because CPP needs to be expanded for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" do ac_preproc_ok=false for ac_c_preproc_warn_flag in '' yes do # Use a header file that comes with gcc, so configuring glibc # with a fresh cross-compiler works. # Prefer to if __STDC__ is defined, since # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifdef __STDC__ # include #else # include #endif Syntax error _ACEOF if ac_fn_c_try_cpp "$LINENO"; then : else # Broken: fails on valid input. continue fi rm -f conftest.err conftest.i conftest.$ac_ext # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if ac_fn_c_try_cpp "$LINENO"; then : # Broken: success on invalid input. continue else # Passes both tests. ac_preproc_ok=: break fi rm -f conftest.err conftest.i conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.i conftest.err conftest.$ac_ext if $ac_preproc_ok; then : break fi done ac_cv_prog_CPP=$CPP fi CPP=$ac_cv_prog_CPP else ac_cv_prog_CPP=$CPP fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5 $as_echo "$CPP" >&6; } ac_preproc_ok=false for ac_c_preproc_warn_flag in '' yes do # Use a header file that comes with gcc, so configuring glibc # with a fresh cross-compiler works. # Prefer to if __STDC__ is defined, since # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifdef __STDC__ # include #else # include #endif Syntax error _ACEOF if ac_fn_c_try_cpp "$LINENO"; then : else # Broken: fails on valid input. continue fi rm -f conftest.err conftest.i conftest.$ac_ext # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if ac_fn_c_try_cpp "$LINENO"; then : # Broken: success on invalid input. continue else # Passes both tests. ac_preproc_ok=: break fi rm -f conftest.err conftest.i conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.i conftest.err conftest.$ac_ext if $ac_preproc_ok; then : else { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "C preprocessor \"$CPP\" fails sanity check See \`config.log' for more details" "$LINENO" 5; } fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 $as_echo_n "checking for ANSI C header files... " >&6; } if ${ac_cv_header_stdc+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include #include #include int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_cv_header_stdc=yes else ac_cv_header_stdc=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext if test $ac_cv_header_stdc = yes; then # SunOS 4.x string.h does not declare mem*, contrary to ANSI. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | $EGREP "memchr" >/dev/null 2>&1; then : else ac_cv_header_stdc=no fi rm -f conftest* fi if test $ac_cv_header_stdc = yes; then # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | $EGREP "free" >/dev/null 2>&1; then : else ac_cv_header_stdc=no fi rm -f conftest* fi if test $ac_cv_header_stdc = yes; then # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. if test "$cross_compiling" = yes; then : : else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include #if ((' ' & 0x0FF) == 0x020) # define ISLOWER(c) ('a' <= (c) && (c) <= 'z') # define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) #else # define ISLOWER(c) \ (('a' <= (c) && (c) <= 'i') \ || ('j' <= (c) && (c) <= 'r') \ || ('s' <= (c) && (c) <= 'z')) # define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) #endif #define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) int main () { int i; for (i = 0; i < 256; i++) if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) return 2; return 0; } _ACEOF if ac_fn_c_try_run "$LINENO"; then : else ac_cv_header_stdc=no fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5 $as_echo "$ac_cv_header_stdc" >&6; } if test $ac_cv_header_stdc = yes; then $as_echo "#define STDC_HEADERS 1" >>confdefs.h fi # On IRIX 5.3, sys/types and inttypes.h are conflicting. for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ inttypes.h stdint.h unistd.h do : as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default " if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : cat >>confdefs.h <<_ACEOF #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF fi done for ac_header in dlfcn.h do : ac_fn_c_check_header_compile "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default " if test "x$ac_cv_header_dlfcn_h" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_DLFCN_H 1 _ACEOF fi done # Set options enable_dlopen=no enable_win32_dll=no # Check whether --enable-shared was given. if test "${enable_shared+set}" = set; then : enableval=$enable_shared; p=${PACKAGE-default} case $enableval in yes) enable_shared=yes ;; no) enable_shared=no ;; *) enable_shared=no # Look at the argument we got. We use all the common list separators. lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, for pkg in $enableval; do IFS=$lt_save_ifs if test "X$pkg" = "X$p"; then enable_shared=yes fi done IFS=$lt_save_ifs ;; esac else enable_shared=yes fi # Check whether --enable-static was given. if test "${enable_static+set}" = set; then : enableval=$enable_static; p=${PACKAGE-default} case $enableval in yes) enable_static=yes ;; no) enable_static=no ;; *) enable_static=no # Look at the argument we got. We use all the common list separators. lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, for pkg in $enableval; do IFS=$lt_save_ifs if test "X$pkg" = "X$p"; then enable_static=yes fi done IFS=$lt_save_ifs ;; esac else enable_static=yes fi # Check whether --with-pic was given. if test "${with_pic+set}" = set; then : withval=$with_pic; lt_p=${PACKAGE-default} case $withval in yes|no) pic_mode=$withval ;; *) pic_mode=default # Look at the argument we got. We use all the common list separators. lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, for lt_pkg in $withval; do IFS=$lt_save_ifs if test "X$lt_pkg" = "X$lt_p"; then pic_mode=yes fi done IFS=$lt_save_ifs ;; esac else pic_mode=default fi # Check whether --enable-fast-install was given. if test "${enable_fast_install+set}" = set; then : enableval=$enable_fast_install; p=${PACKAGE-default} case $enableval in yes) enable_fast_install=yes ;; no) enable_fast_install=no ;; *) enable_fast_install=no # Look at the argument we got. We use all the common list separators. lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, for pkg in $enableval; do IFS=$lt_save_ifs if test "X$pkg" = "X$p"; then enable_fast_install=yes fi done IFS=$lt_save_ifs ;; esac else enable_fast_install=yes fi shared_archive_member_spec= case $host,$enable_shared in power*-*-aix[5-9]*,yes) { $as_echo "$as_me:${as_lineno-$LINENO}: checking which variant of shared library versioning to provide" >&5 $as_echo_n "checking which variant of shared library versioning to provide... " >&6; } # Check whether --with-aix-soname was given. if test "${with_aix_soname+set}" = set; then : withval=$with_aix_soname; case $withval in aix|svr4|both) ;; *) as_fn_error $? "Unknown argument to --with-aix-soname" "$LINENO" 5 ;; esac lt_cv_with_aix_soname=$with_aix_soname else if ${lt_cv_with_aix_soname+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_with_aix_soname=aix fi with_aix_soname=$lt_cv_with_aix_soname fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_aix_soname" >&5 $as_echo "$with_aix_soname" >&6; } if test aix != "$with_aix_soname"; then # For the AIX way of multilib, we name the shared archive member # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o', # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File. # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag, # the AIX toolchain works better with OBJECT_MODE set (default 32). if test 64 = "${OBJECT_MODE-32}"; then shared_archive_member_spec=shr_64 else shared_archive_member_spec=shr fi fi ;; *) with_aix_soname=aix ;; esac # This can be used to rebuild libtool when needed LIBTOOL_DEPS=$ltmain # Always use our own libtool. LIBTOOL='$(SHELL) $(top_builddir)/libtool' test -z "$LN_S" && LN_S="ln -s" if test -n "${ZSH_VERSION+set}"; then setopt NO_GLOB_SUBST fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for objdir" >&5 $as_echo_n "checking for objdir... " >&6; } if ${lt_cv_objdir+:} false; then : $as_echo_n "(cached) " >&6 else rm -f .libs 2>/dev/null mkdir .libs 2>/dev/null if test -d .libs; then lt_cv_objdir=.libs else # MS-DOS does not allow filenames that begin with a dot. lt_cv_objdir=_libs fi rmdir .libs 2>/dev/null fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_objdir" >&5 $as_echo "$lt_cv_objdir" >&6; } objdir=$lt_cv_objdir cat >>confdefs.h <<_ACEOF #define LT_OBJDIR "$lt_cv_objdir/" _ACEOF case $host_os in aix3*) # AIX sometimes has problems with the GCC collect2 program. For some # reason, if we set the COLLECT_NAMES environment variable, the problems # vanish in a puff of smoke. if test set != "${COLLECT_NAMES+set}"; then COLLECT_NAMES= export COLLECT_NAMES fi ;; esac # Global variables: ofile=libtool can_build_shared=yes # All known linkers require a '.a' archive for static linking (except MSVC, # which needs '.lib'). libext=a with_gnu_ld=$lt_cv_prog_gnu_ld old_CC=$CC old_CFLAGS=$CFLAGS # Set sane defaults for various variables test -z "$CC" && CC=cc test -z "$LTCC" && LTCC=$CC test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS test -z "$LD" && LD=ld test -z "$ac_objext" && ac_objext=o func_cc_basename $compiler cc_basename=$func_cc_basename_result # Only perform the check for file, if the check method requires it test -z "$MAGIC_CMD" && MAGIC_CMD=file case $deplibs_check_method in file_magic*) if test "$file_magic_cmd" = '$MAGIC_CMD'; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${ac_tool_prefix}file" >&5 $as_echo_n "checking for ${ac_tool_prefix}file... " >&6; } if ${lt_cv_path_MAGIC_CMD+:} false; then : $as_echo_n "(cached) " >&6 else case $MAGIC_CMD in [\\/*] | ?:[\\/]*) lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path. ;; *) lt_save_MAGIC_CMD=$MAGIC_CMD lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR ac_dummy="/usr/bin$PATH_SEPARATOR$PATH" for ac_dir in $ac_dummy; do IFS=$lt_save_ifs test -z "$ac_dir" && ac_dir=. if test -f "$ac_dir/${ac_tool_prefix}file"; then lt_cv_path_MAGIC_CMD=$ac_dir/"${ac_tool_prefix}file" if test -n "$file_magic_test_file"; then case $deplibs_check_method in "file_magic "*) file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"` MAGIC_CMD=$lt_cv_path_MAGIC_CMD if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | $EGREP "$file_magic_regex" > /dev/null; then : else cat <<_LT_EOF 1>&2 *** Warning: the command libtool uses to detect shared libraries, *** $file_magic_cmd, produces output that libtool cannot recognize. *** The result is that libtool may fail to recognize shared libraries *** as such. This will affect the creation of libtool libraries that *** depend on shared libraries, but programs linked with such libtool *** libraries will work regardless of this problem. Nevertheless, you *** may want to report the problem to your system manager and/or to *** bug-libtool@gnu.org _LT_EOF fi ;; esac fi break fi done IFS=$lt_save_ifs MAGIC_CMD=$lt_save_MAGIC_CMD ;; esac fi MAGIC_CMD=$lt_cv_path_MAGIC_CMD if test -n "$MAGIC_CMD"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5 $as_echo "$MAGIC_CMD" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test -z "$lt_cv_path_MAGIC_CMD"; then if test -n "$ac_tool_prefix"; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for file" >&5 $as_echo_n "checking for file... " >&6; } if ${lt_cv_path_MAGIC_CMD+:} false; then : $as_echo_n "(cached) " >&6 else case $MAGIC_CMD in [\\/*] | ?:[\\/]*) lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path. ;; *) lt_save_MAGIC_CMD=$MAGIC_CMD lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR ac_dummy="/usr/bin$PATH_SEPARATOR$PATH" for ac_dir in $ac_dummy; do IFS=$lt_save_ifs test -z "$ac_dir" && ac_dir=. if test -f "$ac_dir/file"; then lt_cv_path_MAGIC_CMD=$ac_dir/"file" if test -n "$file_magic_test_file"; then case $deplibs_check_method in "file_magic "*) file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"` MAGIC_CMD=$lt_cv_path_MAGIC_CMD if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | $EGREP "$file_magic_regex" > /dev/null; then : else cat <<_LT_EOF 1>&2 *** Warning: the command libtool uses to detect shared libraries, *** $file_magic_cmd, produces output that libtool cannot recognize. *** The result is that libtool may fail to recognize shared libraries *** as such. This will affect the creation of libtool libraries that *** depend on shared libraries, but programs linked with such libtool *** libraries will work regardless of this problem. Nevertheless, you *** may want to report the problem to your system manager and/or to *** bug-libtool@gnu.org _LT_EOF fi ;; esac fi break fi done IFS=$lt_save_ifs MAGIC_CMD=$lt_save_MAGIC_CMD ;; esac fi MAGIC_CMD=$lt_cv_path_MAGIC_CMD if test -n "$MAGIC_CMD"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5 $as_echo "$MAGIC_CMD" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi else MAGIC_CMD=: fi fi fi ;; esac # Use C for the default configuration in the libtool script lt_save_CC=$CC ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu # Source file extension for C test sources. ac_ext=c # Object file extension for compiled C test sources. objext=o objext=$objext # Code to be used in simple compile tests lt_simple_compile_test_code="int some_variable = 0;" # Code to be used in simple link tests lt_simple_link_test_code='int main(){return(0);}' # If no C compiler was specified, use CC. LTCC=${LTCC-"$CC"} # If no C compiler flags were specified, use CFLAGS. LTCFLAGS=${LTCFLAGS-"$CFLAGS"} # Allow CC to be a program name with arguments. compiler=$CC # Save the default compiler, since it gets overwritten when the other # tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP. compiler_DEFAULT=$CC # save warnings/boilerplate of simple test code ac_outfile=conftest.$ac_objext echo "$lt_simple_compile_test_code" >conftest.$ac_ext eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err _lt_compiler_boilerplate=`cat conftest.err` $RM conftest* ac_outfile=conftest.$ac_objext echo "$lt_simple_link_test_code" >conftest.$ac_ext eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err _lt_linker_boilerplate=`cat conftest.err` $RM -r conftest* if test -n "$compiler"; then lt_prog_compiler_no_builtin_flag= if test yes = "$GCC"; then case $cc_basename in nvcc*) lt_prog_compiler_no_builtin_flag=' -Xcompiler -fno-builtin' ;; *) lt_prog_compiler_no_builtin_flag=' -fno-builtin' ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -fno-rtti -fno-exceptions" >&5 $as_echo_n "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; } if ${lt_cv_prog_compiler_rtti_exceptions+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_rtti_exceptions=no ac_outfile=conftest.$ac_objext echo "$lt_simple_compile_test_code" > conftest.$ac_ext lt_compiler_flag="-fno-rtti -fno-exceptions" ## exclude from sc_useless_quotes_in_assignment # Insert the option either (1) after the last *FLAGS variable, or # (2) before a word containing "conftest.", or (3) at the end. # Note that $ac_compile itself does not contain backslashes and begins # with a dollar sign (not a hyphen), so the echo should work correctly. # The option is referenced via a variable to avoid confusing sed. lt_compile=`echo "$ac_compile" | $SED \ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then lt_cv_prog_compiler_rtti_exceptions=yes fi fi $RM conftest* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&5 $as_echo "$lt_cv_prog_compiler_rtti_exceptions" >&6; } if test yes = "$lt_cv_prog_compiler_rtti_exceptions"; then lt_prog_compiler_no_builtin_flag="$lt_prog_compiler_no_builtin_flag -fno-rtti -fno-exceptions" else : fi fi lt_prog_compiler_wl= lt_prog_compiler_pic= lt_prog_compiler_static= if test yes = "$GCC"; then lt_prog_compiler_wl='-Wl,' lt_prog_compiler_static='-static' case $host_os in aix*) # All AIX code is PIC. if test ia64 = "$host_cpu"; then # AIX 5 now supports IA64 processor lt_prog_compiler_static='-Bstatic' fi lt_prog_compiler_pic='-fPIC' ;; amigaos*) case $host_cpu in powerpc) # see comment about AmigaOS4 .so support lt_prog_compiler_pic='-fPIC' ;; m68k) # FIXME: we need at least 68020 code to build shared libraries, but # adding the '-m68020' flag to GCC prevents building anything better, # like '-m68040'. lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4' ;; esac ;; beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) # PIC is the default for these OSes. ;; mingw* | cygwin* | pw32* | os2* | cegcc*) # This hack is so that the source file can tell whether it is being # built for inclusion in a dll (and should export symbols for example). # Although the cygwin gcc ignores -fPIC, still need this for old-style # (--disable-auto-import) libraries lt_prog_compiler_pic='-DDLL_EXPORT' case $host_os in os2*) lt_prog_compiler_static='$wl-static' ;; esac ;; darwin* | rhapsody*) # PIC is the default on this platform # Common symbols not allowed in MH_DYLIB files lt_prog_compiler_pic='-fno-common' ;; haiku*) # PIC is the default for Haiku. # The "-static" flag exists, but is broken. lt_prog_compiler_static= ;; hpux*) # PIC is the default for 64-bit PA HP-UX, but not for 32-bit # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag # sets the default TLS model and affects inlining. case $host_cpu in hppa*64*) # +Z the default ;; *) lt_prog_compiler_pic='-fPIC' ;; esac ;; interix[3-9]*) # Interix 3.x gcc -fpic/-fPIC options generate broken code. # Instead, we relocate shared libraries at runtime. ;; msdosdjgpp*) # Just because we use GCC doesn't mean we suddenly get shared libraries # on systems that don't support them. lt_prog_compiler_can_build_shared=no enable_shared=no ;; *nto* | *qnx*) # QNX uses GNU C++, but need to define -shared option too, otherwise # it will coredump. lt_prog_compiler_pic='-fPIC -shared' ;; sysv4*MP*) if test -d /usr/nec; then lt_prog_compiler_pic=-Kconform_pic fi ;; *) lt_prog_compiler_pic='-fPIC' ;; esac case $cc_basename in nvcc*) # Cuda Compiler Driver 2.2 lt_prog_compiler_wl='-Xlinker ' if test -n "$lt_prog_compiler_pic"; then lt_prog_compiler_pic="-Xcompiler $lt_prog_compiler_pic" fi ;; esac else # PORTME Check for flag to pass linker flags through the system compiler. case $host_os in aix*) lt_prog_compiler_wl='-Wl,' if test ia64 = "$host_cpu"; then # AIX 5 now supports IA64 processor lt_prog_compiler_static='-Bstatic' else lt_prog_compiler_static='-bnso -bI:/lib/syscalls.exp' fi ;; darwin* | rhapsody*) # PIC is the default on this platform # Common symbols not allowed in MH_DYLIB files lt_prog_compiler_pic='-fno-common' case $cc_basename in nagfor*) # NAG Fortran compiler lt_prog_compiler_wl='-Wl,-Wl,,' lt_prog_compiler_pic='-PIC' lt_prog_compiler_static='-Bstatic' ;; esac ;; mingw* | cygwin* | pw32* | os2* | cegcc*) # This hack is so that the source file can tell whether it is being # built for inclusion in a dll (and should export symbols for example). lt_prog_compiler_pic='-DDLL_EXPORT' case $host_os in os2*) lt_prog_compiler_static='$wl-static' ;; esac ;; hpux9* | hpux10* | hpux11*) lt_prog_compiler_wl='-Wl,' # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but # not for PA HP-UX. case $host_cpu in hppa*64*|ia64*) # +Z the default ;; *) lt_prog_compiler_pic='+Z' ;; esac # Is there a better lt_prog_compiler_static that works with the bundled CC? lt_prog_compiler_static='$wl-a ${wl}archive' ;; irix5* | irix6* | nonstopux*) lt_prog_compiler_wl='-Wl,' # PIC (with -KPIC) is the default. lt_prog_compiler_static='-non_shared' ;; linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) case $cc_basename in # old Intel for x86_64, which still supported -KPIC. ecc*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-static' ;; # icc used to be incompatible with GCC. # ICC 10 doesn't accept -KPIC any more. icc* | ifort*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-fPIC' lt_prog_compiler_static='-static' ;; # Lahey Fortran 8.1. lf95*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='--shared' lt_prog_compiler_static='--static' ;; nagfor*) # NAG Fortran compiler lt_prog_compiler_wl='-Wl,-Wl,,' lt_prog_compiler_pic='-PIC' lt_prog_compiler_static='-Bstatic' ;; tcc*) # Fabrice Bellard et al's Tiny C Compiler lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-fPIC' lt_prog_compiler_static='-static' ;; pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*) # Portland Group compilers (*not* the Pentium gcc compiler, # which looks to be a dead project) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-fpic' lt_prog_compiler_static='-Bstatic' ;; ccc*) lt_prog_compiler_wl='-Wl,' # All Alpha code is PIC. lt_prog_compiler_static='-non_shared' ;; xl* | bgxl* | bgf* | mpixl*) # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-qpic' lt_prog_compiler_static='-qstaticlink' ;; *) case `$CC -V 2>&1 | sed 5q` in *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [1-7].* | *Sun*Fortran*\ 8.[0-3]*) # Sun Fortran 8.3 passes all unrecognized flags to the linker lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-Bstatic' lt_prog_compiler_wl='' ;; *Sun\ F* | *Sun*Fortran*) lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-Bstatic' lt_prog_compiler_wl='-Qoption ld ' ;; *Sun\ C*) # Sun C 5.9 lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-Bstatic' lt_prog_compiler_wl='-Wl,' ;; *Intel*\ [CF]*Compiler*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-fPIC' lt_prog_compiler_static='-static' ;; *Portland\ Group*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-fpic' lt_prog_compiler_static='-Bstatic' ;; esac ;; esac ;; newsos6) lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-Bstatic' ;; *nto* | *qnx*) # QNX uses GNU C++, but need to define -shared option too, otherwise # it will coredump. lt_prog_compiler_pic='-fPIC -shared' ;; osf3* | osf4* | osf5*) lt_prog_compiler_wl='-Wl,' # All OSF/1 code is PIC. lt_prog_compiler_static='-non_shared' ;; rdos*) lt_prog_compiler_static='-non_shared' ;; solaris*) lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-Bstatic' case $cc_basename in f77* | f90* | f95* | sunf77* | sunf90* | sunf95*) lt_prog_compiler_wl='-Qoption ld ';; *) lt_prog_compiler_wl='-Wl,';; esac ;; sunos4*) lt_prog_compiler_wl='-Qoption ld ' lt_prog_compiler_pic='-PIC' lt_prog_compiler_static='-Bstatic' ;; sysv4 | sysv4.2uw2* | sysv4.3*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-Bstatic' ;; sysv4*MP*) if test -d /usr/nec; then lt_prog_compiler_pic='-Kconform_pic' lt_prog_compiler_static='-Bstatic' fi ;; sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-Bstatic' ;; unicos*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_can_build_shared=no ;; uts4*) lt_prog_compiler_pic='-pic' lt_prog_compiler_static='-Bstatic' ;; *) lt_prog_compiler_can_build_shared=no ;; esac fi case $host_os in # For platforms that do not support PIC, -DPIC is meaningless: *djgpp*) lt_prog_compiler_pic= ;; *) lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC" ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5 $as_echo_n "checking for $compiler option to produce PIC... " >&6; } if ${lt_cv_prog_compiler_pic+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_pic=$lt_prog_compiler_pic fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic" >&5 $as_echo "$lt_cv_prog_compiler_pic" >&6; } lt_prog_compiler_pic=$lt_cv_prog_compiler_pic # # Check to make sure the PIC flag actually works. # if test -n "$lt_prog_compiler_pic"; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5 $as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; } if ${lt_cv_prog_compiler_pic_works+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_pic_works=no ac_outfile=conftest.$ac_objext echo "$lt_simple_compile_test_code" > conftest.$ac_ext lt_compiler_flag="$lt_prog_compiler_pic -DPIC" ## exclude from sc_useless_quotes_in_assignment # Insert the option either (1) after the last *FLAGS variable, or # (2) before a word containing "conftest.", or (3) at the end. # Note that $ac_compile itself does not contain backslashes and begins # with a dollar sign (not a hyphen), so the echo should work correctly. # The option is referenced via a variable to avoid confusing sed. lt_compile=`echo "$ac_compile" | $SED \ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then lt_cv_prog_compiler_pic_works=yes fi fi $RM conftest* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works" >&5 $as_echo "$lt_cv_prog_compiler_pic_works" >&6; } if test yes = "$lt_cv_prog_compiler_pic_works"; then case $lt_prog_compiler_pic in "" | " "*) ;; *) lt_prog_compiler_pic=" $lt_prog_compiler_pic" ;; esac else lt_prog_compiler_pic= lt_prog_compiler_can_build_shared=no fi fi # # Check to make sure the static flag actually works. # wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\" { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5 $as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; } if ${lt_cv_prog_compiler_static_works+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_static_works=no save_LDFLAGS=$LDFLAGS LDFLAGS="$LDFLAGS $lt_tmp_static_flag" echo "$lt_simple_link_test_code" > conftest.$ac_ext if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then # The linker can only warn and ignore the option if not recognized # So say no if there are warnings if test -s conftest.err; then # Append any errors to the config.log. cat conftest.err 1>&5 $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 if diff conftest.exp conftest.er2 >/dev/null; then lt_cv_prog_compiler_static_works=yes fi else lt_cv_prog_compiler_static_works=yes fi fi $RM -r conftest* LDFLAGS=$save_LDFLAGS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works" >&5 $as_echo "$lt_cv_prog_compiler_static_works" >&6; } if test yes = "$lt_cv_prog_compiler_static_works"; then : else lt_prog_compiler_static= fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 $as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; } if ${lt_cv_prog_compiler_c_o+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_c_o=no $RM -r conftest 2>/dev/null mkdir conftest cd conftest mkdir out echo "$lt_simple_compile_test_code" > conftest.$ac_ext lt_compiler_flag="-o out/conftest2.$ac_objext" # Insert the option either (1) after the last *FLAGS variable, or # (2) before a word containing "conftest.", or (3) at the end. # Note that $ac_compile itself does not contain backslashes and begins # with a dollar sign (not a hyphen), so the echo should work correctly. lt_compile=`echo "$ac_compile" | $SED \ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then lt_cv_prog_compiler_c_o=yes fi fi chmod u+w . 2>&5 $RM conftest* # SGI C++ compiler will create directory out/ii_files/ for # template instantiation test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files $RM out/* && rmdir out cd .. $RM -r conftest $RM conftest* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5 $as_echo "$lt_cv_prog_compiler_c_o" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 $as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; } if ${lt_cv_prog_compiler_c_o+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_c_o=no $RM -r conftest 2>/dev/null mkdir conftest cd conftest mkdir out echo "$lt_simple_compile_test_code" > conftest.$ac_ext lt_compiler_flag="-o out/conftest2.$ac_objext" # Insert the option either (1) after the last *FLAGS variable, or # (2) before a word containing "conftest.", or (3) at the end. # Note that $ac_compile itself does not contain backslashes and begins # with a dollar sign (not a hyphen), so the echo should work correctly. lt_compile=`echo "$ac_compile" | $SED \ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then lt_cv_prog_compiler_c_o=yes fi fi chmod u+w . 2>&5 $RM conftest* # SGI C++ compiler will create directory out/ii_files/ for # template instantiation test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files $RM out/* && rmdir out cd .. $RM -r conftest $RM conftest* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5 $as_echo "$lt_cv_prog_compiler_c_o" >&6; } hard_links=nottested if test no = "$lt_cv_prog_compiler_c_o" && test no != "$need_locks"; then # do not overwrite the value of need_locks provided by the user { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5 $as_echo_n "checking if we can lock with hard links... " >&6; } hard_links=yes $RM conftest* ln conftest.a conftest.b 2>/dev/null && hard_links=no touch conftest.a ln conftest.a conftest.b 2>&5 || hard_links=no ln conftest.a conftest.b 2>/dev/null && hard_links=no { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5 $as_echo "$hard_links" >&6; } if test no = "$hard_links"; then { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&5 $as_echo "$as_me: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&2;} need_locks=warn fi else need_locks=no fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5 $as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; } runpath_var= allow_undefined_flag= always_export_symbols=no archive_cmds= archive_expsym_cmds= compiler_needs_object=no enable_shared_with_static_runtimes=no export_dynamic_flag_spec= export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' hardcode_automatic=no hardcode_direct=no hardcode_direct_absolute=no hardcode_libdir_flag_spec= hardcode_libdir_separator= hardcode_minus_L=no hardcode_shlibpath_var=unsupported inherit_rpath=no link_all_deplibs=unknown module_cmds= module_expsym_cmds= old_archive_from_new_cmds= old_archive_from_expsyms_cmds= thread_safe_flag_spec= whole_archive_flag_spec= # include_expsyms should be a list of space-separated symbols to be *always* # included in the symbol list include_expsyms= # exclude_expsyms can be an extended regexp of symbols to exclude # it will be wrapped by ' (' and ')$', so one must not match beginning or # end of line. Example: 'a|bc|.*d.*' will exclude the symbols 'a' and 'bc', # as well as any symbol that contains 'd'. exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*' # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out # platforms (ab)use it in PIC code, but their linkers get confused if # the symbol is explicitly referenced. Since portable code cannot # rely on this symbol name, it's probably fine to never include it in # preloaded symbol tables. # Exclude shared library initialization/finalization symbols. extract_expsyms_cmds= case $host_os in cygwin* | mingw* | pw32* | cegcc*) # FIXME: the MSVC++ port hasn't been tested in a loooong time # When not using gcc, we currently assume that we are using # Microsoft Visual C++. if test yes != "$GCC"; then with_gnu_ld=no fi ;; interix*) # we just hope/assume this is gcc and not c89 (= MSVC++) with_gnu_ld=yes ;; openbsd* | bitrig*) with_gnu_ld=no ;; linux* | k*bsd*-gnu | gnu*) link_all_deplibs=no ;; esac ld_shlibs=yes # On some targets, GNU ld is compatible enough with the native linker # that we're better off using the native interface for both. lt_use_gnu_ld_interface=no if test yes = "$with_gnu_ld"; then case $host_os in aix*) # The AIX port of GNU ld has always aspired to compatibility # with the native linker. However, as the warning in the GNU ld # block says, versions before 2.19.5* couldn't really create working # shared libraries, regardless of the interface used. case `$LD -v 2>&1` in *\ \(GNU\ Binutils\)\ 2.19.5*) ;; *\ \(GNU\ Binutils\)\ 2.[2-9]*) ;; *\ \(GNU\ Binutils\)\ [3-9]*) ;; *) lt_use_gnu_ld_interface=yes ;; esac ;; *) lt_use_gnu_ld_interface=yes ;; esac fi if test yes = "$lt_use_gnu_ld_interface"; then # If archive_cmds runs LD, not CC, wlarc should be empty wlarc='$wl' # Set some defaults for GNU ld with shared library support. These # are reset later if shared libraries are not supported. Putting them # here allows them to be overridden if necessary. runpath_var=LD_RUN_PATH hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' export_dynamic_flag_spec='$wl--export-dynamic' # ancient GNU ld didn't support --whole-archive et. al. if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then whole_archive_flag_spec=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive' else whole_archive_flag_spec= fi supports_anon_versioning=no case `$LD -v | $SED -e 's/(^)\+)\s\+//' 2>&1` in *GNU\ gold*) supports_anon_versioning=yes ;; *\ [01].* | *\ 2.[0-9].* | *\ 2.10.*) ;; # catch versions < 2.11 *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ... *\ 2.11.*) ;; # other 2.11 versions *) supports_anon_versioning=yes ;; esac # See if GNU ld supports shared libraries. case $host_os in aix[3-9]*) # On AIX/PPC, the GNU linker is very broken if test ia64 != "$host_cpu"; then ld_shlibs=no cat <<_LT_EOF 1>&2 *** Warning: the GNU linker, at least up to release 2.19, is reported *** to be unable to reliably create shared libraries on AIX. *** Therefore, libtool is disabling shared libraries support. If you *** really care for shared libraries, you may want to install binutils *** 2.20 or above, or modify your PATH so that a non-GNU linker is found. *** You will then need to restart the configuration process. _LT_EOF fi ;; amigaos*) case $host_cpu in powerpc) # see comment about AmigaOS4 .so support archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' archive_expsym_cmds='' ;; m68k) archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' hardcode_libdir_flag_spec='-L$libdir' hardcode_minus_L=yes ;; esac ;; beos*) if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then allow_undefined_flag=unsupported # Joseph Beckenbach says some releases of gcc # support --undefined. This deserves some investigation. FIXME archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' else ld_shlibs=no fi ;; cygwin* | mingw* | pw32* | cegcc*) # _LT_TAGVAR(hardcode_libdir_flag_spec, ) is actually meaningless, # as there is no search path for DLLs. hardcode_libdir_flag_spec='-L$libdir' export_dynamic_flag_spec='$wl--export-all-symbols' allow_undefined_flag=unsupported always_export_symbols=no enable_shared_with_static_runtimes=yes export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/;s/^.*[ ]__nm__\([^ ]*\)[ ][^ ]*/\1 DATA/;/^I[ ]/d;/^[AITW][ ]/s/.* //'\'' | sort | uniq > $export_symbols' exclude_expsyms='[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname' if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' # If the export-symbols file already is a .def file, use it as # is; otherwise, prepend EXPORTS... archive_expsym_cmds='if test DEF = "`$SED -n -e '\''s/^[ ]*//'\'' -e '\''/^\(;.*\)*$/d'\'' -e '\''s/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p'\'' -e q $export_symbols`" ; then cp $export_symbols $output_objdir/$soname.def; else echo EXPORTS > $output_objdir/$soname.def; cat $export_symbols >> $output_objdir/$soname.def; fi~ $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' else ld_shlibs=no fi ;; haiku*) archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' link_all_deplibs=yes ;; os2*) hardcode_libdir_flag_spec='-L$libdir' hardcode_minus_L=yes allow_undefined_flag=unsupported shrext_cmds=.dll archive_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ $ECHO EXPORTS >> $output_objdir/$libname.def~ emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ emximp -o $lib $output_objdir/$libname.def' archive_expsym_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ $ECHO EXPORTS >> $output_objdir/$libname.def~ prefix_cmds="$SED"~ if test EXPORTS = "`$SED 1q $export_symbols`"; then prefix_cmds="$prefix_cmds -e 1d"; fi~ prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ emximp -o $lib $output_objdir/$libname.def' old_archive_From_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' enable_shared_with_static_runtimes=yes ;; interix[3-9]*) hardcode_direct=no hardcode_shlibpath_var=no hardcode_libdir_flag_spec='$wl-rpath,$libdir' export_dynamic_flag_spec='$wl-E' # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. # Instead, shared libraries are loaded at an image base (0x10000000 by # default) and relocated if they conflict, which is a slow very memory # consuming and fragmenting process. To avoid this, we pick a random, # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link # time. Moving up from 0x10000000 also allows more sbrk(2) space. archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' archive_expsym_cmds='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' ;; gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu) tmp_diet=no if test linux-dietlibc = "$host_os"; then case $cc_basename in diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn) esac fi if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \ && test no = "$tmp_diet" then tmp_addflag=' $pic_flag' tmp_sharedflag='-shared' case $cc_basename,$host_cpu in pgcc*) # Portland Group C compiler whole_archive_flag_spec='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' tmp_addflag=' $pic_flag' ;; pgf77* | pgf90* | pgf95* | pgfortran*) # Portland Group f77 and f90 compilers whole_archive_flag_spec='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' tmp_addflag=' $pic_flag -Mnomain' ;; ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64 tmp_addflag=' -i_dynamic' ;; efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64 tmp_addflag=' -i_dynamic -nofor_main' ;; ifc* | ifort*) # Intel Fortran compiler tmp_addflag=' -nofor_main' ;; lf95*) # Lahey Fortran 8.1 whole_archive_flag_spec= tmp_sharedflag='--shared' ;; nagfor*) # NAGFOR 5.3 tmp_sharedflag='-Wl,-shared' ;; xl[cC]* | bgxl[cC]* | mpixl[cC]*) # IBM XL C 8.0 on PPC (deal with xlf below) tmp_sharedflag='-qmkshrobj' tmp_addflag= ;; nvcc*) # Cuda Compiler Driver 2.2 whole_archive_flag_spec='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' compiler_needs_object=yes ;; esac case `$CC -V 2>&1 | sed 5q` in *Sun\ C*) # Sun C 5.9 whole_archive_flag_spec='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' compiler_needs_object=yes tmp_sharedflag='-G' ;; *Sun\ F*) # Sun Fortran 8.3 tmp_sharedflag='-G' ;; esac archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' if test yes = "$supports_anon_versioning"; then archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~ cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ echo "local: *; };" >> $output_objdir/$libname.ver~ $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib' fi case $cc_basename in tcc*) export_dynamic_flag_spec='-rdynamic' ;; xlf* | bgf* | bgxlf* | mpixlf*) # IBM XL Fortran 10.1 on PPC cannot create shared libs itself whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive' hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib' if test yes = "$supports_anon_versioning"; then archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~ cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ echo "local: *; };" >> $output_objdir/$libname.ver~ $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib' fi ;; esac else ld_shlibs=no fi ;; netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' wlarc= else archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' fi ;; solaris*) if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then ld_shlibs=no cat <<_LT_EOF 1>&2 *** Warning: The releases 2.8.* of the GNU linker cannot reliably *** create shared libraries on Solaris systems. Therefore, libtool *** is disabling shared libraries support. We urge you to upgrade GNU *** binutils to release 2.9.1 or newer. Another option is to modify *** your PATH or compiler configuration so that the native linker is *** used, and then restart. _LT_EOF elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' else ld_shlibs=no fi ;; sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*) case `$LD -v 2>&1` in *\ [01].* | *\ 2.[0-9].* | *\ 2.1[0-5].*) ld_shlibs=no cat <<_LT_EOF 1>&2 *** Warning: Releases of the GNU linker prior to 2.16.91.0.3 cannot *** reliably create shared libraries on SCO systems. Therefore, libtool *** is disabling shared libraries support. We urge you to upgrade GNU *** binutils to release 2.16.91.0.3 or newer. Another option is to modify *** your PATH or compiler configuration so that the native linker is *** used, and then restart. _LT_EOF ;; *) # For security reasons, it is highly recommended that you always # use absolute paths for naming shared libraries, and exclude the # DT_RUNPATH tag from executables and libraries. But doing so # requires that you compile everything twice, which is a pain. if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' else ld_shlibs=no fi ;; esac ;; sunos4*) archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' wlarc= hardcode_direct=yes hardcode_shlibpath_var=no ;; *) if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' else ld_shlibs=no fi ;; esac if test no = "$ld_shlibs"; then runpath_var= hardcode_libdir_flag_spec= export_dynamic_flag_spec= whole_archive_flag_spec= fi else # PORTME fill in a description of your system's linker (not GNU ld) case $host_os in aix3*) allow_undefined_flag=unsupported always_export_symbols=yes archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' # Note: this linker hardcodes the directories in LIBPATH if there # are no directories specified by -L. hardcode_minus_L=yes if test yes = "$GCC" && test -z "$lt_prog_compiler_static"; then # Neither direct hardcoding nor static linking is supported with a # broken collect2. hardcode_direct=unsupported fi ;; aix[4-9]*) if test ia64 = "$host_cpu"; then # On IA64, the linker does run time linking by default, so we don't # have to do anything special. aix_use_runtimelinking=no exp_sym_flag='-Bexport' no_entry_flag= else # If we're using GNU nm, then we don't want the "-C" option. # -C means demangle to GNU nm, but means don't demangle to AIX nm. # Without the "-l" option, or with the "-B" option, AIX nm treats # weak defined symbols like other global defined symbols, whereas # GNU nm marks them as "W". # While the 'weak' keyword is ignored in the Export File, we need # it in the Import File for the 'aix-soname' feature, so we have # to replace the "-B" option with "-P" for AIX nm. if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && (substr(\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols' else export_symbols_cmds='`func_echo_all $NM | $SED -e '\''s/B\([^B]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && (substr(\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols' fi aix_use_runtimelinking=no # Test if we are trying to use run time linking or normal # AIX style linking. If -brtl is somewhere in LDFLAGS, we # have runtime linking enabled, and use it for executables. # For shared libraries, we enable/disable runtime linking # depending on the kind of the shared library created - # when "with_aix_soname,aix_use_runtimelinking" is: # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables # "aix,yes" lib.so shared, rtl:yes, for executables # lib.a static archive # "both,no" lib.so.V(shr.o) shared, rtl:yes # lib.a(lib.so.V) shared, rtl:no, for executables # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables # lib.a(lib.so.V) shared, rtl:no # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables # lib.a static archive case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*) for ld_flag in $LDFLAGS; do if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then aix_use_runtimelinking=yes break fi done if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then # With aix-soname=svr4, we create the lib.so.V shared archives only, # so we don't have lib.a shared libs to link our executables. # We have to force runtime linking in this case. aix_use_runtimelinking=yes LDFLAGS="$LDFLAGS -Wl,-brtl" fi ;; esac exp_sym_flag='-bexport' no_entry_flag='-bnoentry' fi # When large executables or shared objects are built, AIX ld can # have problems creating the table of contents. If linking a library # or program results in "error TOC overflow" add -mminimal-toc to # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. archive_cmds='' hardcode_direct=yes hardcode_direct_absolute=yes hardcode_libdir_separator=':' link_all_deplibs=yes file_list_spec='$wl-f,' case $with_aix_soname,$aix_use_runtimelinking in aix,*) ;; # traditional, no import file svr4,* | *,yes) # use import file # The Import File defines what to hardcode. hardcode_direct=no hardcode_direct_absolute=no ;; esac if test yes = "$GCC"; then case $host_os in aix4.[012]|aix4.[012].*) # We only want to do this on AIX 4.2 and lower, the check # below for broken collect2 doesn't work under 4.3+ collect2name=`$CC -print-prog-name=collect2` if test -f "$collect2name" && strings "$collect2name" | $GREP resolve_lib_name >/dev/null then # We have reworked collect2 : else # We have old collect2 hardcode_direct=unsupported # It fails to find uninstalled libraries when the uninstalled # path is not listed in the libpath. Setting hardcode_minus_L # to unsupported forces relinking hardcode_minus_L=yes hardcode_libdir_flag_spec='-L$libdir' hardcode_libdir_separator= fi ;; esac shared_flag='-shared' if test yes = "$aix_use_runtimelinking"; then shared_flag="$shared_flag "'$wl-G' fi # Need to ensure runtime linking is disabled for the traditional # shared library, or the linker may eventually find shared libraries # /with/ Import File - we do not want to mix them. shared_flag_aix='-shared' shared_flag_svr4='-shared $wl-G' else # not using gcc if test ia64 = "$host_cpu"; then # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release # chokes on -Wl,-G. The following line is correct: shared_flag='-G' else if test yes = "$aix_use_runtimelinking"; then shared_flag='$wl-G' else shared_flag='$wl-bM:SRE' fi shared_flag_aix='$wl-bM:SRE' shared_flag_svr4='$wl-G' fi fi export_dynamic_flag_spec='$wl-bexpall' # It seems that -bexpall does not export symbols beginning with # underscore (_), so it is better to generate a list of symbols to export. always_export_symbols=yes if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then # Warning - without using the other runtime loading flags (-brtl), # -berok will link without error, but may produce a broken library. allow_undefined_flag='-berok' # Determine the default libpath from the value encoded in an # empty executable. if test set = "${lt_cv_aix_libpath+set}"; then aix_libpath=$lt_cv_aix_libpath else if ${lt_cv_aix_libpath_+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : lt_aix_libpath_sed=' /Import File Strings/,/^$/ { /^0/ { s/^0 *\([^ ]*\) *$/\1/ p } }' lt_cv_aix_libpath_=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` # Check for a 64-bit object if we didn't find anything. if test -z "$lt_cv_aix_libpath_"; then lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` fi fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext if test -z "$lt_cv_aix_libpath_"; then lt_cv_aix_libpath_=/usr/lib:/lib fi fi aix_libpath=$lt_cv_aix_libpath_ fi hardcode_libdir_flag_spec='$wl-blibpath:$libdir:'"$aix_libpath" archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag else if test ia64 = "$host_cpu"; then hardcode_libdir_flag_spec='$wl-R $libdir:/usr/lib:/lib' allow_undefined_flag="-z nodefs" archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\$wl$no_entry_flag"' $compiler_flags $wl$allow_undefined_flag '"\$wl$exp_sym_flag:\$export_symbols" else # Determine the default libpath from the value encoded in an # empty executable. if test set = "${lt_cv_aix_libpath+set}"; then aix_libpath=$lt_cv_aix_libpath else if ${lt_cv_aix_libpath_+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : lt_aix_libpath_sed=' /Import File Strings/,/^$/ { /^0/ { s/^0 *\([^ ]*\) *$/\1/ p } }' lt_cv_aix_libpath_=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` # Check for a 64-bit object if we didn't find anything. if test -z "$lt_cv_aix_libpath_"; then lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` fi fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext if test -z "$lt_cv_aix_libpath_"; then lt_cv_aix_libpath_=/usr/lib:/lib fi fi aix_libpath=$lt_cv_aix_libpath_ fi hardcode_libdir_flag_spec='$wl-blibpath:$libdir:'"$aix_libpath" # Warning - without using the other run time loading flags, # -berok will link without error, but may produce a broken library. no_undefined_flag=' $wl-bernotok' allow_undefined_flag=' $wl-berok' if test yes = "$with_gnu_ld"; then # We only use this code for GNU lds that support --whole-archive. whole_archive_flag_spec='$wl--whole-archive$convenience $wl--no-whole-archive' else # Exported symbols can be pulled into shared objects from archives whole_archive_flag_spec='$convenience' fi archive_cmds_need_lc=yes archive_expsym_cmds='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d' # -brtl affects multiple linker settings, -berok does not and is overridden later compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([, ]\\)%-berok\\1%g"`' if test svr4 != "$with_aix_soname"; then # This is similar to how AIX traditionally builds its shared libraries. archive_expsym_cmds="$archive_expsym_cmds"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname' fi if test aix != "$with_aix_soname"; then archive_expsym_cmds="$archive_expsym_cmds"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp' else # used by -dlpreopen to get the symbols archive_expsym_cmds="$archive_expsym_cmds"'~$MV $output_objdir/$realname.d/$soname $output_objdir' fi archive_expsym_cmds="$archive_expsym_cmds"'~$RM -r $output_objdir/$realname.d' fi fi ;; amigaos*) case $host_cpu in powerpc) # see comment about AmigaOS4 .so support archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' archive_expsym_cmds='' ;; m68k) archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' hardcode_libdir_flag_spec='-L$libdir' hardcode_minus_L=yes ;; esac ;; bsdi[45]*) export_dynamic_flag_spec=-rdynamic ;; cygwin* | mingw* | pw32* | cegcc*) # When not using gcc, we currently assume that we are using # Microsoft Visual C++. # hardcode_libdir_flag_spec is actually meaningless, as there is # no search path for DLLs. case $cc_basename in cl*) # Native MSVC hardcode_libdir_flag_spec=' ' allow_undefined_flag=unsupported always_export_symbols=yes file_list_spec='@' # Tell ltmain to make .lib files, not .a files. libext=lib # Tell ltmain to make .dll files, not .so files. shrext_cmds=.dll # FIXME: Setting linknames here is a bad hack. archive_cmds='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames=' archive_expsym_cmds='if test DEF = "`$SED -n -e '\''s/^[ ]*//'\'' -e '\''/^\(;.*\)*$/d'\'' -e '\''s/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p'\'' -e q $export_symbols`" ; then cp "$export_symbols" "$output_objdir/$soname.def"; echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp"; else $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp; fi~ $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ linknames=' # The linker will not automatically build a static lib if we build a DLL. # _LT_TAGVAR(old_archive_from_new_cmds, )='true' enable_shared_with_static_runtimes=yes exclude_expsyms='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*' export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1,DATA/'\'' | $SED -e '\''/^[AITW][ ]/s/.*[ ]//'\'' | sort | uniq > $export_symbols' # Don't use ranlib old_postinstall_cmds='chmod 644 $oldlib' postlink_cmds='lt_outputfile="@OUTPUT@"~ lt_tool_outputfile="@TOOL_OUTPUT@"~ case $lt_outputfile in *.exe|*.EXE) ;; *) lt_outputfile=$lt_outputfile.exe lt_tool_outputfile=$lt_tool_outputfile.exe ;; esac~ if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; $RM "$lt_outputfile.manifest"; fi' ;; *) # Assume MSVC wrapper hardcode_libdir_flag_spec=' ' allow_undefined_flag=unsupported # Tell ltmain to make .lib files, not .a files. libext=lib # Tell ltmain to make .dll files, not .so files. shrext_cmds=.dll # FIXME: Setting linknames here is a bad hack. archive_cmds='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames=' # The linker will automatically build a .lib file if we build a DLL. old_archive_from_new_cmds='true' # FIXME: Should let the user specify the lib program. old_archive_cmds='lib -OUT:$oldlib$oldobjs$old_deplibs' enable_shared_with_static_runtimes=yes ;; esac ;; darwin* | rhapsody*) archive_cmds_need_lc=no hardcode_direct=no hardcode_automatic=yes hardcode_shlibpath_var=unsupported if test yes = "$lt_cv_ld_force_load"; then whole_archive_flag_spec='`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience $wl-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`' else whole_archive_flag_spec='' fi link_all_deplibs=yes allow_undefined_flag=$_lt_dar_allow_undefined case $cc_basename in ifort*|nagfor*) _lt_dar_can_shared=yes ;; *) _lt_dar_can_shared=$GCC ;; esac if test yes = "$_lt_dar_can_shared"; then output_verbose_link_cmd=func_echo_all archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil" module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil" archive_expsym_cmds="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil" module_expsym_cmds="sed -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil" else ld_shlibs=no fi ;; dgux*) archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' hardcode_libdir_flag_spec='-L$libdir' hardcode_shlibpath_var=no ;; # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor # support. Future versions do this automatically, but an explicit c++rt0.o # does not break anything, and helps significantly (at the cost of a little # extra space). freebsd2.2*) archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' hardcode_libdir_flag_spec='-R$libdir' hardcode_direct=yes hardcode_shlibpath_var=no ;; # Unfortunately, older versions of FreeBSD 2 do not have this feature. freebsd2.*) archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' hardcode_direct=yes hardcode_minus_L=yes hardcode_shlibpath_var=no ;; # FreeBSD 3 and greater uses gcc -shared to do shared libraries. freebsd* | dragonfly*) archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' hardcode_libdir_flag_spec='-R$libdir' hardcode_direct=yes hardcode_shlibpath_var=no ;; hpux9*) if test yes = "$GCC"; then archive_cmds='$RM $output_objdir/$soname~$CC -shared $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' else archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' fi hardcode_libdir_flag_spec='$wl+b $wl$libdir' hardcode_libdir_separator=: hardcode_direct=yes # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. hardcode_minus_L=yes export_dynamic_flag_spec='$wl-E' ;; hpux10*) if test yes,no = "$GCC,$with_gnu_ld"; then archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags' else archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' fi if test no = "$with_gnu_ld"; then hardcode_libdir_flag_spec='$wl+b $wl$libdir' hardcode_libdir_separator=: hardcode_direct=yes hardcode_direct_absolute=yes export_dynamic_flag_spec='$wl-E' # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. hardcode_minus_L=yes fi ;; hpux11*) if test yes,no = "$GCC,$with_gnu_ld"; then case $host_cpu in hppa*64*) archive_cmds='$CC -shared $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' ;; ia64*) archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' ;; *) archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags' ;; esac else case $host_cpu in hppa*64*) archive_cmds='$CC -b $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' ;; ia64*) archive_cmds='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' ;; *) # Older versions of the 11.00 compiler do not understand -b yet # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does) { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC understands -b" >&5 $as_echo_n "checking if $CC understands -b... " >&6; } if ${lt_cv_prog_compiler__b+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler__b=no save_LDFLAGS=$LDFLAGS LDFLAGS="$LDFLAGS -b" echo "$lt_simple_link_test_code" > conftest.$ac_ext if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then # The linker can only warn and ignore the option if not recognized # So say no if there are warnings if test -s conftest.err; then # Append any errors to the config.log. cat conftest.err 1>&5 $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 if diff conftest.exp conftest.er2 >/dev/null; then lt_cv_prog_compiler__b=yes fi else lt_cv_prog_compiler__b=yes fi fi $RM -r conftest* LDFLAGS=$save_LDFLAGS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler__b" >&5 $as_echo "$lt_cv_prog_compiler__b" >&6; } if test yes = "$lt_cv_prog_compiler__b"; then archive_cmds='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags' else archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' fi ;; esac fi if test no = "$with_gnu_ld"; then hardcode_libdir_flag_spec='$wl+b $wl$libdir' hardcode_libdir_separator=: case $host_cpu in hppa*64*|ia64*) hardcode_direct=no hardcode_shlibpath_var=no ;; *) hardcode_direct=yes hardcode_direct_absolute=yes export_dynamic_flag_spec='$wl-E' # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. hardcode_minus_L=yes ;; esac fi ;; irix5* | irix6* | nonstopux*) if test yes = "$GCC"; then archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' # Try to use the -exported_symbol ld option, if it does not # work, assume that -exports_file does not work either and # implicitly export all symbols. # This should be the same for all languages, so no per-tag cache variable. { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $host_os linker accepts -exported_symbol" >&5 $as_echo_n "checking whether the $host_os linker accepts -exported_symbol... " >&6; } if ${lt_cv_irix_exported_symbol+:} false; then : $as_echo_n "(cached) " >&6 else save_LDFLAGS=$LDFLAGS LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int foo (void) { return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : lt_cv_irix_exported_symbol=yes else lt_cv_irix_exported_symbol=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LDFLAGS=$save_LDFLAGS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_irix_exported_symbol" >&5 $as_echo "$lt_cv_irix_exported_symbol" >&6; } if test yes = "$lt_cv_irix_exported_symbol"; then archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations $wl-exports_file $wl$export_symbols -o $lib' fi link_all_deplibs=no else archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -exports_file $export_symbols -o $lib' fi archive_cmds_need_lc='no' hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' hardcode_libdir_separator=: inherit_rpath=yes link_all_deplibs=yes ;; linux*) case $cc_basename in tcc*) # Fabrice Bellard et al's Tiny C Compiler ld_shlibs=yes archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' ;; esac ;; netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out else archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF fi hardcode_libdir_flag_spec='-R$libdir' hardcode_direct=yes hardcode_shlibpath_var=no ;; newsos6) archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' hardcode_direct=yes hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' hardcode_libdir_separator=: hardcode_shlibpath_var=no ;; *nto* | *qnx*) ;; openbsd* | bitrig*) if test -f /usr/libexec/ld.so; then hardcode_direct=yes hardcode_shlibpath_var=no hardcode_direct_absolute=yes if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-retain-symbols-file,$export_symbols' hardcode_libdir_flag_spec='$wl-rpath,$libdir' export_dynamic_flag_spec='$wl-E' else archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' hardcode_libdir_flag_spec='$wl-rpath,$libdir' fi else ld_shlibs=no fi ;; os2*) hardcode_libdir_flag_spec='-L$libdir' hardcode_minus_L=yes allow_undefined_flag=unsupported shrext_cmds=.dll archive_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ $ECHO EXPORTS >> $output_objdir/$libname.def~ emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ emximp -o $lib $output_objdir/$libname.def' archive_expsym_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ $ECHO EXPORTS >> $output_objdir/$libname.def~ prefix_cmds="$SED"~ if test EXPORTS = "`$SED 1q $export_symbols`"; then prefix_cmds="$prefix_cmds -e 1d"; fi~ prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ emximp -o $lib $output_objdir/$libname.def' old_archive_From_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' enable_shared_with_static_runtimes=yes ;; osf3*) if test yes = "$GCC"; then allow_undefined_flag=' $wl-expect_unresolved $wl\*' archive_cmds='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' else allow_undefined_flag=' -expect_unresolved \*' archive_cmds='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' fi archive_cmds_need_lc='no' hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' hardcode_libdir_separator=: ;; osf4* | osf5*) # as osf3* with the addition of -msym flag if test yes = "$GCC"; then allow_undefined_flag=' $wl-expect_unresolved $wl\*' archive_cmds='$CC -shared$allow_undefined_flag $pic_flag $libobjs $deplibs $compiler_flags $wl-msym $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' else allow_undefined_flag=' -expect_unresolved \*' archive_cmds='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' archive_expsym_cmds='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~ $CC -shared$allow_undefined_flag $wl-input $wl$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib~$RM $lib.exp' # Both c and cxx compiler support -rpath directly hardcode_libdir_flag_spec='-rpath $libdir' fi archive_cmds_need_lc='no' hardcode_libdir_separator=: ;; solaris*) no_undefined_flag=' -z defs' if test yes = "$GCC"; then wlarc='$wl' archive_cmds='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ $CC -shared $pic_flag $wl-z ${wl}text $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' else case `$CC -V 2>&1` in *"Compilers 5.0"*) wlarc='' archive_cmds='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags' archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ $LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp' ;; *) wlarc='$wl' archive_cmds='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags' archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ $CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' ;; esac fi hardcode_libdir_flag_spec='-R$libdir' hardcode_shlibpath_var=no case $host_os in solaris2.[0-5] | solaris2.[0-5].*) ;; *) # The compiler driver will combine and reorder linker options, # but understands '-z linker_flag'. GCC discards it without '$wl', # but is careful enough not to reorder. # Supported since Solaris 2.6 (maybe 2.5.1?) if test yes = "$GCC"; then whole_archive_flag_spec='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract' else whole_archive_flag_spec='-z allextract$convenience -z defaultextract' fi ;; esac link_all_deplibs=yes ;; sunos4*) if test sequent = "$host_vendor"; then # Use $CC to link under sequent, because it throws in some extra .o # files that make .init and .fini sections work. archive_cmds='$CC -G $wl-h $soname -o $lib $libobjs $deplibs $compiler_flags' else archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' fi hardcode_libdir_flag_spec='-L$libdir' hardcode_direct=yes hardcode_minus_L=yes hardcode_shlibpath_var=no ;; sysv4) case $host_vendor in sni) archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' hardcode_direct=yes # is this really true??? ;; siemens) ## LD is ld it makes a PLAMLIB ## CC just makes a GrossModule. archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags' reload_cmds='$CC -r -o $output$reload_objs' hardcode_direct=no ;; motorola) archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' hardcode_direct=no #Motorola manual says yes, but my tests say they lie ;; esac runpath_var='LD_RUN_PATH' hardcode_shlibpath_var=no ;; sysv4.3*) archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' hardcode_shlibpath_var=no export_dynamic_flag_spec='-Bexport' ;; sysv4*MP*) if test -d /usr/nec; then archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' hardcode_shlibpath_var=no runpath_var=LD_RUN_PATH hardcode_runpath_var=yes ld_shlibs=yes fi ;; sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*) no_undefined_flag='$wl-z,text' archive_cmds_need_lc=no hardcode_shlibpath_var=no runpath_var='LD_RUN_PATH' if test yes = "$GCC"; then archive_cmds='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' archive_expsym_cmds='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' else archive_cmds='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' archive_expsym_cmds='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' fi ;; sysv5* | sco3.2v5* | sco5v6*) # Note: We CANNOT use -z defs as we might desire, because we do not # link with -lc, and that would cause any symbols used from libc to # always be unresolved, which means just about no library would # ever link correctly. If we're not using GNU ld we use -z text # though, which does catch some bad symbols but isn't as heavy-handed # as -z defs. no_undefined_flag='$wl-z,text' allow_undefined_flag='$wl-z,nodefs' archive_cmds_need_lc=no hardcode_shlibpath_var=no hardcode_libdir_flag_spec='$wl-R,$libdir' hardcode_libdir_separator=':' link_all_deplibs=yes export_dynamic_flag_spec='$wl-Bexport' runpath_var='LD_RUN_PATH' if test yes = "$GCC"; then archive_cmds='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' archive_expsym_cmds='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' else archive_cmds='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' archive_expsym_cmds='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' fi ;; uts4*) archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' hardcode_libdir_flag_spec='-L$libdir' hardcode_shlibpath_var=no ;; *) ld_shlibs=no ;; esac if test sni = "$host_vendor"; then case $host in sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) export_dynamic_flag_spec='$wl-Blargedynsym' ;; esac fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs" >&5 $as_echo "$ld_shlibs" >&6; } test no = "$ld_shlibs" && can_build_shared=no with_gnu_ld=$with_gnu_ld # # Do we need to explicitly link libc? # case "x$archive_cmds_need_lc" in x|xyes) # Assume -lc should be added archive_cmds_need_lc=yes if test yes,yes = "$GCC,$enable_shared"; then case $archive_cmds in *'~'*) # FIXME: we may have to deal with multi-command sequences. ;; '$CC '*) # Test whether the compiler implicitly links with -lc since on some # systems, -lgcc has to come before -lc. If gcc already passes -lc # to ld, don't add -lc before -lgcc. { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5 $as_echo_n "checking whether -lc should be explicitly linked in... " >&6; } if ${lt_cv_archive_cmds_need_lc+:} false; then : $as_echo_n "(cached) " >&6 else $RM conftest* echo "$lt_simple_compile_test_code" > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } 2>conftest.err; then soname=conftest lib=conftest libobjs=conftest.$ac_objext deplibs= wl=$lt_prog_compiler_wl pic_flag=$lt_prog_compiler_pic compiler_flags=-v linker_flags=-v verstring= output_objdir=. libname=conftest lt_save_allow_undefined_flag=$allow_undefined_flag allow_undefined_flag= if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&5 (eval $archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } then lt_cv_archive_cmds_need_lc=no else lt_cv_archive_cmds_need_lc=yes fi allow_undefined_flag=$lt_save_allow_undefined_flag else cat conftest.err 1>&5 fi $RM conftest* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc" >&5 $as_echo "$lt_cv_archive_cmds_need_lc" >&6; } archive_cmds_need_lc=$lt_cv_archive_cmds_need_lc ;; esac fi ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5 $as_echo_n "checking dynamic linker characteristics... " >&6; } if test yes = "$GCC"; then case $host_os in darwin*) lt_awk_arg='/^libraries:/,/LR/' ;; *) lt_awk_arg='/^libraries:/' ;; esac case $host_os in mingw* | cegcc*) lt_sed_strip_eq='s|=\([A-Za-z]:\)|\1|g' ;; *) lt_sed_strip_eq='s|=/|/|g' ;; esac lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq` case $lt_search_path_spec in *\;*) # if the path contains ";" then we assume it to be the separator # otherwise default to the standard path separator (i.e. ":") - it is # assumed that no part of a normal pathname contains ";" but that should # okay in the real world where ";" in dirpaths is itself problematic. lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'` ;; *) lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"` ;; esac # Ok, now we have the path, separated by spaces, we can step through it # and add multilib dir if necessary... lt_tmp_lt_search_path_spec= lt_multi_os_dir=/`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null` # ...but if some path component already ends with the multilib dir we assume # that all is fine and trust -print-search-dirs as is (GCC 4.2? or newer). case "$lt_multi_os_dir; $lt_search_path_spec " in "/; "* | "/.; "* | "/./; "* | *"$lt_multi_os_dir "* | *"$lt_multi_os_dir/ "*) lt_multi_os_dir= ;; esac for lt_sys_path in $lt_search_path_spec; do if test -d "$lt_sys_path$lt_multi_os_dir"; then lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path$lt_multi_os_dir" elif test -n "$lt_multi_os_dir"; then test -d "$lt_sys_path" && \ lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path" fi done lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk ' BEGIN {RS = " "; FS = "/|\n";} { lt_foo = ""; lt_count = 0; for (lt_i = NF; lt_i > 0; lt_i--) { if ($lt_i != "" && $lt_i != ".") { if ($lt_i == "..") { lt_count++; } else { if (lt_count == 0) { lt_foo = "/" $lt_i lt_foo; } else { lt_count--; } } } } if (lt_foo != "") { lt_freq[lt_foo]++; } if (lt_freq[lt_foo] == 1) { print lt_foo; } }'` # AWK program above erroneously prepends '/' to C:/dos/paths # for these hosts. case $host_os in mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\ $SED 's|/\([A-Za-z]:\)|\1|g'` ;; esac sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP` else sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" fi library_names_spec= libname_spec='lib$name' soname_spec= shrext_cmds=.so postinstall_cmds= postuninstall_cmds= finish_cmds= finish_eval= shlibpath_var= shlibpath_overrides_runpath=unknown version_type=none dynamic_linker="$host_os ld.so" sys_lib_dlsearch_path_spec="/lib /usr/lib" need_lib_prefix=unknown hardcode_into_libs=no # when you set need_version to no, make sure it does not cause -set_version # flags to be left without arguments need_version=unknown case $host_os in aix3*) version_type=linux # correct to gnu/linux during the next big refactor library_names_spec='$libname$release$shared_ext$versuffix $libname.a' shlibpath_var=LIBPATH # AIX 3 has no versioning support, so we append a major version to the name. soname_spec='$libname$release$shared_ext$major' ;; aix[4-9]*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no hardcode_into_libs=yes if test ia64 = "$host_cpu"; then # AIX 5 supports IA64 library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext' shlibpath_var=LD_LIBRARY_PATH else # With GCC up to 2.95.x, collect2 would create an import file # for dependence libraries. The import file would start with # the line '#! .'. This would cause the generated library to # depend on '.', always an invalid library. This was fixed in # development snapshots of GCC prior to 3.0. case $host_os in aix4 | aix4.[01] | aix4.[01].*) if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' echo ' yes ' echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then : else can_build_shared=no fi ;; esac # Using Import Files as archive members, it is possible to support # filename-based versioning of shared library archives on AIX. While # this would work for both with and without runtime linking, it will # prevent static linking of such archives. So we do filename-based # shared library versioning with .so extension only, which is used # when both runtime linking and shared linking is enabled. # Unfortunately, runtime linking may impact performance, so we do # not want this to be the default eventually. Also, we use the # versioned .so libs for executables only if there is the -brtl # linker flag in LDFLAGS as well, or --with-aix-soname=svr4 only. # To allow for filename-based versioning support, we need to create # libNAME.so.V as an archive file, containing: # *) an Import File, referring to the versioned filename of the # archive as well as the shared archive member, telling the # bitwidth (32 or 64) of that shared object, and providing the # list of exported symbols of that shared object, eventually # decorated with the 'weak' keyword # *) the shared object with the F_LOADONLY flag set, to really avoid # it being seen by the linker. # At run time we better use the real file rather than another symlink, # but for link time we create the symlink libNAME.so -> libNAME.so.V case $with_aix_soname,$aix_use_runtimelinking in # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct # soname into executable. Probably we can add versioning support to # collect2, so additional links can be useful in future. aix,yes) # traditional libtool dynamic_linker='AIX unversionable lib.so' # If using run time linking (on AIX 4.2 or later) use lib.so # instead of lib.a to let people know that these are not # typical AIX shared libraries. library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' ;; aix,no) # traditional AIX only dynamic_linker='AIX lib.a(lib.so.V)' # We preserve .a as extension for shared libraries through AIX4.2 # and later when we are not doing run time linking. library_names_spec='$libname$release.a $libname.a' soname_spec='$libname$release$shared_ext$major' ;; svr4,*) # full svr4 only dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o)" library_names_spec='$libname$release$shared_ext$major $libname$shared_ext' # We do not specify a path in Import Files, so LIBPATH fires. shlibpath_overrides_runpath=yes ;; *,yes) # both, prefer svr4 dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o), lib.a(lib.so.V)" library_names_spec='$libname$release$shared_ext$major $libname$shared_ext' # unpreferred sharedlib libNAME.a needs extra handling postinstall_cmds='test -n "$linkname" || linkname="$realname"~func_stripname "" ".so" "$linkname"~$install_shared_prog "$dir/$func_stripname_result.$libext" "$destdir/$func_stripname_result.$libext"~test -z "$tstripme" || test -z "$striplib" || $striplib "$destdir/$func_stripname_result.$libext"' postuninstall_cmds='for n in $library_names $old_library; do :; done~func_stripname "" ".so" "$n"~test "$func_stripname_result" = "$n" || func_append rmfiles " $odir/$func_stripname_result.$libext"' # We do not specify a path in Import Files, so LIBPATH fires. shlibpath_overrides_runpath=yes ;; *,no) # both, prefer aix dynamic_linker="AIX lib.a(lib.so.V), lib.so.V($shared_archive_member_spec.o)" library_names_spec='$libname$release.a $libname.a' soname_spec='$libname$release$shared_ext$major' # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling postinstall_cmds='test -z "$dlname" || $install_shared_prog $dir/$dlname $destdir/$dlname~test -z "$tstripme" || test -z "$striplib" || $striplib $destdir/$dlname~test -n "$linkname" || linkname=$realname~func_stripname "" ".a" "$linkname"~(cd "$destdir" && $LN_S -f $dlname $func_stripname_result.so)' postuninstall_cmds='test -z "$dlname" || func_append rmfiles " $odir/$dlname"~for n in $old_library $library_names; do :; done~func_stripname "" ".a" "$n"~func_append rmfiles " $odir/$func_stripname_result.so"' ;; esac shlibpath_var=LIBPATH fi ;; amigaos*) case $host_cpu in powerpc) # Since July 2007 AmigaOS4 officially supports .so libraries. # When compiling the executable, add -use-dynld -Lsobjs: to the compileline. library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' ;; m68k) library_names_spec='$libname.ixlibrary $libname.a' # Create ${libname}_ixlibrary.a entries in /sys/libs. finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' ;; esac ;; beos*) library_names_spec='$libname$shared_ext' dynamic_linker="$host_os ld.so" shlibpath_var=LIBRARY_PATH ;; bsdi[45]*) version_type=linux # correct to gnu/linux during the next big refactor need_version=no library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' soname_spec='$libname$release$shared_ext$major' finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' shlibpath_var=LD_LIBRARY_PATH sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" # the default ld.so.conf also contains /usr/contrib/lib and # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow # libtool to hard-code these into programs ;; cygwin* | mingw* | pw32* | cegcc*) version_type=windows shrext_cmds=.dll need_version=no need_lib_prefix=no case $GCC,$cc_basename in yes,*) # gcc library_names_spec='$libname.dll.a' # DLL is installed to $(libdir)/../bin by postinstall_cmds postinstall_cmds='base_file=`basename \$file`~ dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~ dldir=$destdir/`dirname \$dlpath`~ test -d \$dldir || mkdir -p \$dldir~ $install_prog $dir/$dlname \$dldir/$dlname~ chmod a+x \$dldir/$dlname~ if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; fi' postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ dlpath=$dir/\$dldll~ $RM \$dlpath' shlibpath_overrides_runpath=yes case $host_os in cygwin*) # Cygwin DLLs use 'cyg' prefix rather than 'lib' soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api" ;; mingw* | cegcc*) # MinGW DLLs use traditional 'lib' prefix soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' ;; pw32*) # pw32 DLLs use 'pw' prefix rather than 'lib' library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' ;; esac dynamic_linker='Win32 ld.exe' ;; *,cl*) # Native MSVC libname_spec='$name' soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' library_names_spec='$libname.dll.lib' case $build_os in mingw*) sys_lib_search_path_spec= lt_save_ifs=$IFS IFS=';' for lt_path in $LIB do IFS=$lt_save_ifs # Let DOS variable expansion print the short 8.3 style file name. lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"` sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path" done IFS=$lt_save_ifs # Convert to MSYS style. sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([a-zA-Z]\\):| /\\1|g' -e 's|^ ||'` ;; cygwin*) # Convert to unix form, then to dos form, then back to unix form # but this time dos style (no spaces!) so that the unix form looks # like /cygdrive/c/PROGRA~1:/cygdr... sys_lib_search_path_spec=`cygpath --path --unix "$LIB"` sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null` sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` ;; *) sys_lib_search_path_spec=$LIB if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then # It is most probably a Windows format PATH. sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` else sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` fi # FIXME: find the short name or the path components, as spaces are # common. (e.g. "Program Files" -> "PROGRA~1") ;; esac # DLL is installed to $(libdir)/../bin by postinstall_cmds postinstall_cmds='base_file=`basename \$file`~ dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~ dldir=$destdir/`dirname \$dlpath`~ test -d \$dldir || mkdir -p \$dldir~ $install_prog $dir/$dlname \$dldir/$dlname' postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ dlpath=$dir/\$dldll~ $RM \$dlpath' shlibpath_overrides_runpath=yes dynamic_linker='Win32 link.exe' ;; *) # Assume MSVC wrapper library_names_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext $libname.lib' dynamic_linker='Win32 ld.exe' ;; esac # FIXME: first we should search . and the directory the executable is in shlibpath_var=PATH ;; darwin* | rhapsody*) dynamic_linker="$host_os dyld" version_type=darwin need_lib_prefix=no need_version=no library_names_spec='$libname$release$major$shared_ext $libname$shared_ext' soname_spec='$libname$release$major$shared_ext' shlibpath_overrides_runpath=yes shlibpath_var=DYLD_LIBRARY_PATH shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`' sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib" sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib' ;; dgux*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' soname_spec='$libname$release$shared_ext$major' shlibpath_var=LD_LIBRARY_PATH ;; freebsd* | dragonfly*) # DragonFly does not have aout. When/if they implement a new # versioning mechanism, adjust this. if test -x /usr/bin/objformat; then objformat=`/usr/bin/objformat` else case $host_os in freebsd[23].*) objformat=aout ;; *) objformat=elf ;; esac fi version_type=freebsd-$objformat case $version_type in freebsd-elf*) library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' soname_spec='$libname$release$shared_ext$major' need_version=no need_lib_prefix=no ;; freebsd-*) library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' need_version=yes ;; esac shlibpath_var=LD_LIBRARY_PATH case $host_os in freebsd2.*) shlibpath_overrides_runpath=yes ;; freebsd3.[01]* | freebsdelf3.[01]*) shlibpath_overrides_runpath=yes hardcode_into_libs=yes ;; freebsd3.[2-9]* | freebsdelf3.[2-9]* | \ freebsd4.[0-5] | freebsdelf4.[0-5] | freebsd4.1.1 | freebsdelf4.1.1) shlibpath_overrides_runpath=no hardcode_into_libs=yes ;; *) # from 4.6 on, and DragonFly shlibpath_overrides_runpath=yes hardcode_into_libs=yes ;; esac ;; haiku*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no dynamic_linker="$host_os runtime_loader" library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' soname_spec='$libname$release$shared_ext$major' shlibpath_var=LIBRARY_PATH shlibpath_overrides_runpath=no sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib' hardcode_into_libs=yes ;; hpux9* | hpux10* | hpux11*) # Give a soname corresponding to the major version so that dld.sl refuses to # link against other versions. version_type=sunos need_lib_prefix=no need_version=no case $host_cpu in ia64*) shrext_cmds='.so' hardcode_into_libs=yes dynamic_linker="$host_os dld.so" shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' soname_spec='$libname$release$shared_ext$major' if test 32 = "$HPUX_IA64_MODE"; then sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" sys_lib_dlsearch_path_spec=/usr/lib/hpux32 else sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" sys_lib_dlsearch_path_spec=/usr/lib/hpux64 fi ;; hppa*64*) shrext_cmds='.sl' hardcode_into_libs=yes dynamic_linker="$host_os dld.sl" shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' soname_spec='$libname$release$shared_ext$major' sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec ;; *) shrext_cmds='.sl' dynamic_linker="$host_os dld.sl" shlibpath_var=SHLIB_PATH shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' soname_spec='$libname$release$shared_ext$major' ;; esac # HP-UX runs *really* slowly unless shared libraries are mode 555, ... postinstall_cmds='chmod 555 $lib' # or fails outright, so override atomically: install_override_mode=555 ;; interix[3-9]*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' soname_spec='$libname$release$shared_ext$major' dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes ;; irix5* | irix6* | nonstopux*) case $host_os in nonstopux*) version_type=nonstopux ;; *) if test yes = "$lt_cv_prog_gnu_ld"; then version_type=linux # correct to gnu/linux during the next big refactor else version_type=irix fi ;; esac need_lib_prefix=no need_version=no soname_spec='$libname$release$shared_ext$major' library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext' case $host_os in irix5* | nonstopux*) libsuff= shlibsuff= ;; *) case $LD in # libtool.m4 will add one of these switches to LD *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") libsuff= shlibsuff= libmagic=32-bit;; *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") libsuff=32 shlibsuff=N32 libmagic=N32;; *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") libsuff=64 shlibsuff=64 libmagic=64-bit;; *) libsuff= shlibsuff= libmagic=never-match;; esac ;; esac shlibpath_var=LD_LIBRARY${shlibsuff}_PATH shlibpath_overrides_runpath=no sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff" sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff" hardcode_into_libs=yes ;; # No shared lib support for Linux oldld, aout, or coff. linux*oldld* | linux*aout* | linux*coff*) dynamic_linker=no ;; linux*android*) version_type=none # Android doesn't support versioned libraries. need_lib_prefix=no need_version=no library_names_spec='$libname$release$shared_ext' soname_spec='$libname$release$shared_ext' finish_cmds= shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes # This implies no fast_install, which is unacceptable. # Some rework will be needed to allow for fast_install # before this can be enabled. hardcode_into_libs=yes dynamic_linker='Android linker' # Don't embed -rpath directories since the linker doesn't support them. hardcode_libdir_flag_spec='-L$libdir' ;; # This must be glibc/ELF. linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' soname_spec='$libname$release$shared_ext$major' finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no # Some binutils ld are patched to set DT_RUNPATH if ${lt_cv_shlibpath_overrides_runpath+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_shlibpath_overrides_runpath=no save_LDFLAGS=$LDFLAGS save_libdir=$libdir eval "libdir=/foo; wl=\"$lt_prog_compiler_wl\"; \ LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec\"" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : if ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then : lt_cv_shlibpath_overrides_runpath=yes fi fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LDFLAGS=$save_LDFLAGS libdir=$save_libdir fi shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath # This implies no fast_install, which is unacceptable. # Some rework will be needed to allow for fast_install # before this can be enabled. hardcode_into_libs=yes # Ideally, we could use ldconfig to report *all* directores which are # searched for libraries, however this is still not possible. Aside from not # being certain /sbin/ldconfig is available, command # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64, # even though it is searched at run-time. Try to do the best guess by # appending ld.so.conf contents (and includes) to the search path. if test -f /etc/ld.so.conf; then lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '` sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" fi # We used to test for /lib/ld.so.1 and disable shared libraries on # powerpc, because MkLinux only supported shared libraries with the # GNU dynamic linker. Since this was broken with cross compilers, # most powerpc-linux boxes support dynamic linking these days and # people can always --disable-shared, the test was removed, and we # assume the GNU/Linux dynamic linker is in use. dynamic_linker='GNU/Linux ld.so' ;; netbsdelf*-gnu) version_type=linux need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes dynamic_linker='NetBSD ld.elf_so' ;; netbsd*) version_type=sunos need_lib_prefix=no need_version=no if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' dynamic_linker='NetBSD (a.out) ld.so' else library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' soname_spec='$libname$release$shared_ext$major' dynamic_linker='NetBSD ld.elf_so' fi shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes hardcode_into_libs=yes ;; newsos6) version_type=linux # correct to gnu/linux during the next big refactor library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes ;; *nto* | *qnx*) version_type=qnx need_lib_prefix=no need_version=no library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' soname_spec='$libname$release$shared_ext$major' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes dynamic_linker='ldqnx.so' ;; openbsd* | bitrig*) version_type=sunos sys_lib_dlsearch_path_spec=/usr/lib need_lib_prefix=no if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then need_version=no else need_version=yes fi library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes ;; os2*) libname_spec='$name' version_type=windows shrext_cmds=.dll need_version=no need_lib_prefix=no # OS/2 can only load a DLL with a base name of 8 characters or less. soname_spec='`test -n "$os2dllname" && libname="$os2dllname"; v=$($ECHO $release$versuffix | tr -d .-); n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _); $ECHO $n$v`$shared_ext' library_names_spec='${libname}_dll.$libext' dynamic_linker='OS/2 ld.exe' shlibpath_var=BEGINLIBPATH sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec postinstall_cmds='base_file=`basename \$file`~ dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~ dldir=$destdir/`dirname \$dlpath`~ test -d \$dldir || mkdir -p \$dldir~ $install_prog $dir/$dlname \$dldir/$dlname~ chmod a+x \$dldir/$dlname~ if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; fi' postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~ dlpath=$dir/\$dldll~ $RM \$dlpath' ;; osf3* | osf4* | osf5*) version_type=osf need_lib_prefix=no need_version=no soname_spec='$libname$release$shared_ext$major' library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' shlibpath_var=LD_LIBRARY_PATH sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec ;; rdos*) dynamic_linker=no ;; solaris*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' soname_spec='$libname$release$shared_ext$major' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes hardcode_into_libs=yes # ldd complains unless libraries are executable postinstall_cmds='chmod +x $lib' ;; sunos4*) version_type=sunos library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes if test yes = "$with_gnu_ld"; then need_lib_prefix=no fi need_version=yes ;; sysv4 | sysv4.3*) version_type=linux # correct to gnu/linux during the next big refactor library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' soname_spec='$libname$release$shared_ext$major' shlibpath_var=LD_LIBRARY_PATH case $host_vendor in sni) shlibpath_overrides_runpath=no need_lib_prefix=no runpath_var=LD_RUN_PATH ;; siemens) need_lib_prefix=no ;; motorola) need_lib_prefix=no need_version=no shlibpath_overrides_runpath=no sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' ;; esac ;; sysv4*MP*) if test -d /usr/nec; then version_type=linux # correct to gnu/linux during the next big refactor library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext' soname_spec='$libname$shared_ext.$major' shlibpath_var=LD_LIBRARY_PATH fi ;; sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) version_type=sco need_lib_prefix=no need_version=no library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext' soname_spec='$libname$release$shared_ext$major' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes hardcode_into_libs=yes if test yes = "$with_gnu_ld"; then sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib' else sys_lib_search_path_spec='/usr/ccs/lib /usr/lib' case $host_os in sco3.2v5*) sys_lib_search_path_spec="$sys_lib_search_path_spec /lib" ;; esac fi sys_lib_dlsearch_path_spec='/usr/lib' ;; tpf*) # TPF is a cross-target only. Preferred cross-host = GNU/Linux. version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes ;; uts4*) version_type=linux # correct to gnu/linux during the next big refactor library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' soname_spec='$libname$release$shared_ext$major' shlibpath_var=LD_LIBRARY_PATH ;; *) dynamic_linker=no ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5 $as_echo "$dynamic_linker" >&6; } test no = "$dynamic_linker" && can_build_shared=no variables_saved_for_relink="PATH $shlibpath_var $runpath_var" if test yes = "$GCC"; then variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" fi if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec fi if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec fi # remember unaugmented sys_lib_dlsearch_path content for libtool script decls... configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec # ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH" # to be used as default LT_SYS_LIBRARY_PATH value in generated libtool configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5 $as_echo_n "checking how to hardcode library paths into programs... " >&6; } hardcode_action= if test -n "$hardcode_libdir_flag_spec" || test -n "$runpath_var" || test yes = "$hardcode_automatic"; then # We can hardcode non-existent directories. if test no != "$hardcode_direct" && # If the only mechanism to avoid hardcoding is shlibpath_var, we # have to relink, otherwise we might link with an installed library # when we should be linking with a yet-to-be-installed one ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, )" && test no != "$hardcode_minus_L"; then # Linking always hardcodes the temporary library directory. hardcode_action=relink else # We can link without hardcoding, and we can hardcode nonexisting dirs. hardcode_action=immediate fi else # We cannot hardcode anything, or else we can only hardcode existing # directories. hardcode_action=unsupported fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action" >&5 $as_echo "$hardcode_action" >&6; } if test relink = "$hardcode_action" || test yes = "$inherit_rpath"; then # Fast installation is not supported enable_fast_install=no elif test yes = "$shlibpath_overrides_runpath" || test no = "$enable_shared"; then # Fast installation is not necessary enable_fast_install=needless fi if test yes != "$enable_dlopen"; then enable_dlopen=unknown enable_dlopen_self=unknown enable_dlopen_self_static=unknown else lt_cv_dlopen=no lt_cv_dlopen_libs= case $host_os in beos*) lt_cv_dlopen=load_add_on lt_cv_dlopen_libs= lt_cv_dlopen_self=yes ;; mingw* | pw32* | cegcc*) lt_cv_dlopen=LoadLibrary lt_cv_dlopen_libs= ;; cygwin*) lt_cv_dlopen=dlopen lt_cv_dlopen_libs= ;; darwin*) # if libdl is installed we need to link against it { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 $as_echo_n "checking for dlopen in -ldl... " >&6; } if ${ac_cv_lib_dl_dlopen+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-ldl $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char dlopen (); int main () { return dlopen (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_dl_dlopen=yes else ac_cv_lib_dl_dlopen=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 $as_echo "$ac_cv_lib_dl_dlopen" >&6; } if test "x$ac_cv_lib_dl_dlopen" = xyes; then : lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl else lt_cv_dlopen=dyld lt_cv_dlopen_libs= lt_cv_dlopen_self=yes fi ;; tpf*) # Don't try to run any link tests for TPF. We know it's impossible # because TPF is a cross-compiler, and we know how we open DSOs. lt_cv_dlopen=dlopen lt_cv_dlopen_libs= lt_cv_dlopen_self=no ;; *) ac_fn_c_check_func "$LINENO" "shl_load" "ac_cv_func_shl_load" if test "x$ac_cv_func_shl_load" = xyes; then : lt_cv_dlopen=shl_load else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5 $as_echo_n "checking for shl_load in -ldld... " >&6; } if ${ac_cv_lib_dld_shl_load+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-ldld $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char shl_load (); int main () { return shl_load (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_dld_shl_load=yes else ac_cv_lib_dld_shl_load=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5 $as_echo "$ac_cv_lib_dld_shl_load" >&6; } if test "x$ac_cv_lib_dld_shl_load" = xyes; then : lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld else ac_fn_c_check_func "$LINENO" "dlopen" "ac_cv_func_dlopen" if test "x$ac_cv_func_dlopen" = xyes; then : lt_cv_dlopen=dlopen else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 $as_echo_n "checking for dlopen in -ldl... " >&6; } if ${ac_cv_lib_dl_dlopen+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-ldl $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char dlopen (); int main () { return dlopen (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_dl_dlopen=yes else ac_cv_lib_dl_dlopen=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 $as_echo "$ac_cv_lib_dl_dlopen" >&6; } if test "x$ac_cv_lib_dl_dlopen" = xyes; then : lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5 $as_echo_n "checking for dlopen in -lsvld... " >&6; } if ${ac_cv_lib_svld_dlopen+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lsvld $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char dlopen (); int main () { return dlopen (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_svld_dlopen=yes else ac_cv_lib_svld_dlopen=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5 $as_echo "$ac_cv_lib_svld_dlopen" >&6; } if test "x$ac_cv_lib_svld_dlopen" = xyes; then : lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5 $as_echo_n "checking for dld_link in -ldld... " >&6; } if ${ac_cv_lib_dld_dld_link+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-ldld $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char dld_link (); int main () { return dld_link (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_dld_dld_link=yes else ac_cv_lib_dld_dld_link=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5 $as_echo "$ac_cv_lib_dld_dld_link" >&6; } if test "x$ac_cv_lib_dld_dld_link" = xyes; then : lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld fi fi fi fi fi fi ;; esac if test no = "$lt_cv_dlopen"; then enable_dlopen=no else enable_dlopen=yes fi case $lt_cv_dlopen in dlopen) save_CPPFLAGS=$CPPFLAGS test yes = "$ac_cv_header_dlfcn_h" && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" save_LDFLAGS=$LDFLAGS wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" save_LIBS=$LIBS LIBS="$lt_cv_dlopen_libs $LIBS" { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5 $as_echo_n "checking whether a program can dlopen itself... " >&6; } if ${lt_cv_dlopen_self+:} false; then : $as_echo_n "(cached) " >&6 else if test yes = "$cross_compiling"; then : lt_cv_dlopen_self=cross else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF #line $LINENO "configure" #include "confdefs.h" #if HAVE_DLFCN_H #include #endif #include #ifdef RTLD_GLOBAL # define LT_DLGLOBAL RTLD_GLOBAL #else # ifdef DL_GLOBAL # define LT_DLGLOBAL DL_GLOBAL # else # define LT_DLGLOBAL 0 # endif #endif /* We may have to define LT_DLLAZY_OR_NOW in the command line if we find out it does not work in some platform. */ #ifndef LT_DLLAZY_OR_NOW # ifdef RTLD_LAZY # define LT_DLLAZY_OR_NOW RTLD_LAZY # else # ifdef DL_LAZY # define LT_DLLAZY_OR_NOW DL_LAZY # else # ifdef RTLD_NOW # define LT_DLLAZY_OR_NOW RTLD_NOW # else # ifdef DL_NOW # define LT_DLLAZY_OR_NOW DL_NOW # else # define LT_DLLAZY_OR_NOW 0 # endif # endif # endif # endif #endif /* When -fvisibility=hidden is used, assume the code has been annotated correspondingly for the symbols needed. */ #if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) int fnord () __attribute__((visibility("default"))); #endif int fnord () { return 42; } int main () { void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); int status = $lt_dlunknown; if (self) { if (dlsym (self,"fnord")) status = $lt_dlno_uscore; else { if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; else puts (dlerror ()); } /* dlclose (self); */ } else puts (dlerror ()); return status; } _LT_EOF if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 (eval $ac_link) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then (./conftest; exit; ) >&5 2>/dev/null lt_status=$? case x$lt_status in x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;; x$lt_dlneed_uscore) lt_cv_dlopen_self=yes ;; x$lt_dlunknown|x*) lt_cv_dlopen_self=no ;; esac else : # compilation failed lt_cv_dlopen_self=no fi fi rm -fr conftest* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5 $as_echo "$lt_cv_dlopen_self" >&6; } if test yes = "$lt_cv_dlopen_self"; then wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\" { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5 $as_echo_n "checking whether a statically linked program can dlopen itself... " >&6; } if ${lt_cv_dlopen_self_static+:} false; then : $as_echo_n "(cached) " >&6 else if test yes = "$cross_compiling"; then : lt_cv_dlopen_self_static=cross else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF #line $LINENO "configure" #include "confdefs.h" #if HAVE_DLFCN_H #include #endif #include #ifdef RTLD_GLOBAL # define LT_DLGLOBAL RTLD_GLOBAL #else # ifdef DL_GLOBAL # define LT_DLGLOBAL DL_GLOBAL # else # define LT_DLGLOBAL 0 # endif #endif /* We may have to define LT_DLLAZY_OR_NOW in the command line if we find out it does not work in some platform. */ #ifndef LT_DLLAZY_OR_NOW # ifdef RTLD_LAZY # define LT_DLLAZY_OR_NOW RTLD_LAZY # else # ifdef DL_LAZY # define LT_DLLAZY_OR_NOW DL_LAZY # else # ifdef RTLD_NOW # define LT_DLLAZY_OR_NOW RTLD_NOW # else # ifdef DL_NOW # define LT_DLLAZY_OR_NOW DL_NOW # else # define LT_DLLAZY_OR_NOW 0 # endif # endif # endif # endif #endif /* When -fvisibility=hidden is used, assume the code has been annotated correspondingly for the symbols needed. */ #if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) int fnord () __attribute__((visibility("default"))); #endif int fnord () { return 42; } int main () { void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); int status = $lt_dlunknown; if (self) { if (dlsym (self,"fnord")) status = $lt_dlno_uscore; else { if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; else puts (dlerror ()); } /* dlclose (self); */ } else puts (dlerror ()); return status; } _LT_EOF if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 (eval $ac_link) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then (./conftest; exit; ) >&5 2>/dev/null lt_status=$? case x$lt_status in x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;; x$lt_dlneed_uscore) lt_cv_dlopen_self_static=yes ;; x$lt_dlunknown|x*) lt_cv_dlopen_self_static=no ;; esac else : # compilation failed lt_cv_dlopen_self_static=no fi fi rm -fr conftest* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self_static" >&5 $as_echo "$lt_cv_dlopen_self_static" >&6; } fi CPPFLAGS=$save_CPPFLAGS LDFLAGS=$save_LDFLAGS LIBS=$save_LIBS ;; esac case $lt_cv_dlopen_self in yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; *) enable_dlopen_self=unknown ;; esac case $lt_cv_dlopen_self_static in yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; *) enable_dlopen_self_static=unknown ;; esac fi striplib= old_striplib= { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5 $as_echo_n "checking whether stripping libraries is possible... " >&6; } if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" test -z "$striplib" && striplib="$STRIP --strip-unneeded" { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } else # FIXME - insert some real tests, host_os isn't really good enough case $host_os in darwin*) if test -n "$STRIP"; then striplib="$STRIP -x" old_striplib="$STRIP -S" { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi ;; *) { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } ;; esac fi # Report what library types will actually be built { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&5 $as_echo_n "checking if libtool supports shared libraries... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&5 $as_echo "$can_build_shared" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&5 $as_echo_n "checking whether to build shared libraries... " >&6; } test no = "$can_build_shared" && enable_shared=no # On AIX, shared libraries and static libraries use the same namespace, and # are all built from PIC. case $host_os in aix3*) test yes = "$enable_shared" && enable_static=no if test -n "$RANLIB"; then archive_cmds="$archive_cmds~\$RANLIB \$lib" postinstall_cmds='$RANLIB $lib' fi ;; aix[4-9]*) if test ia64 != "$host_cpu"; then case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in yes,aix,yes) ;; # shared object as lib.so file only yes,svr4,*) ;; # shared object as lib.so archive member only yes,*) enable_static=no ;; # shared object in lib.a archive as well esac fi ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_shared" >&5 $as_echo "$enable_shared" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&5 $as_echo_n "checking whether to build static libraries... " >&6; } # Make sure either enable_shared or enable_static is yes. test yes = "$enable_shared" || enable_static=yes { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&5 $as_echo "$enable_static" >&6; } fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu CC=$lt_save_CC ac_config_commands="$ac_config_commands libtool" # Only expand once: if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args. set dummy ${ac_tool_prefix}pkg-config; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_PKG_CONFIG+:} false; then : $as_echo_n "(cached) " >&6 else case $PKG_CONFIG in [\\/]* | ?:[\\/]*) ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi PKG_CONFIG=$ac_cv_path_PKG_CONFIG if test -n "$PKG_CONFIG"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5 $as_echo "$PKG_CONFIG" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_path_PKG_CONFIG"; then ac_pt_PKG_CONFIG=$PKG_CONFIG # Extract the first word of "pkg-config", so it can be a program name with args. set dummy pkg-config; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_ac_pt_PKG_CONFIG+:} false; then : $as_echo_n "(cached) " >&6 else case $ac_pt_PKG_CONFIG in [\\/]* | ?:[\\/]*) ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_ac_pt_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG if test -n "$ac_pt_PKG_CONFIG"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKG_CONFIG" >&5 $as_echo "$ac_pt_PKG_CONFIG" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_pt_PKG_CONFIG" = x; then PKG_CONFIG="" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac PKG_CONFIG=$ac_pt_PKG_CONFIG fi else PKG_CONFIG="$ac_cv_path_PKG_CONFIG" fi fi if test -n "$PKG_CONFIG"; then _pkg_min_version=0.9.0 { $as_echo "$as_me:${as_lineno-$LINENO}: checking pkg-config is at least version $_pkg_min_version" >&5 $as_echo_n "checking pkg-config is at least version $_pkg_min_version... " >&6; } if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } PKG_CONFIG="" fi fi pkg_failed=no { $as_echo "$as_me:${as_lineno-$LINENO}: checking for X11" >&5 $as_echo_n "checking for X11... " >&6; } if test -n "$X11_CFLAGS"; then pkg_cv_X11_CFLAGS="$X11_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"x11\""; } >&5 ($PKG_CONFIG --exists --print-errors "x11") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_X11_CFLAGS=`$PKG_CONFIG --cflags "x11" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$X11_LIBS"; then pkg_cv_X11_LIBS="$X11_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"x11\""; } >&5 ($PKG_CONFIG --exists --print-errors "x11") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_X11_LIBS=`$PKG_CONFIG --libs "x11" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then X11_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "x11" 2>&1` else X11_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "x11" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$X11_PKG_ERRORS" >&5 as_fn_error $? "Package requirements (x11) were not met: $X11_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables X11_CFLAGS and X11_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details." "$LINENO" 5 elif test $pkg_failed = untried; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. Alternatively, you may set the environment variables X11_CFLAGS and X11_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. To get pkg-config, see . See \`config.log' for more details" "$LINENO" 5; } else X11_CFLAGS=$pkg_cv_X11_CFLAGS X11_LIBS=$pkg_cv_X11_LIBS { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } fi pkg_failed=no { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XMU" >&5 $as_echo_n "checking for XMU... " >&6; } if test -n "$XMU_CFLAGS"; then pkg_cv_XMU_CFLAGS="$XMU_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"xmu\""; } >&5 ($PKG_CONFIG --exists --print-errors "xmu") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_XMU_CFLAGS=`$PKG_CONFIG --cflags "xmu" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$XMU_LIBS"; then pkg_cv_XMU_LIBS="$XMU_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"xmu\""; } >&5 ($PKG_CONFIG --exists --print-errors "xmu") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_XMU_LIBS=`$PKG_CONFIG --libs "xmu" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then XMU_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "xmu" 2>&1` else XMU_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "xmu" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$XMU_PKG_ERRORS" >&5 as_fn_error $? "Package requirements (xmu) were not met: $XMU_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables XMU_CFLAGS and XMU_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details." "$LINENO" 5 elif test $pkg_failed = untried; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. Alternatively, you may set the environment variables XMU_CFLAGS and XMU_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. To get pkg-config, see . See \`config.log' for more details" "$LINENO" 5; } else XMU_CFLAGS=$pkg_cv_XMU_CFLAGS XMU_LIBS=$pkg_cv_XMU_LIBS { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } fi pkg_failed=no { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XT" >&5 $as_echo_n "checking for XT... " >&6; } if test -n "$XT_CFLAGS"; then pkg_cv_XT_CFLAGS="$XT_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"xt\""; } >&5 ($PKG_CONFIG --exists --print-errors "xt") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_XT_CFLAGS=`$PKG_CONFIG --cflags "xt" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$XT_LIBS"; then pkg_cv_XT_LIBS="$XT_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"xt\""; } >&5 ($PKG_CONFIG --exists --print-errors "xt") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_XT_LIBS=`$PKG_CONFIG --libs "xt" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then XT_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "xt" 2>&1` else XT_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "xt" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$XT_PKG_ERRORS" >&5 as_fn_error $? "Package requirements (xt) were not met: $XT_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables XT_CFLAGS and XT_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details." "$LINENO" 5 elif test $pkg_failed = untried; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. Alternatively, you may set the environment variables XT_CFLAGS and XT_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. To get pkg-config, see . See \`config.log' for more details" "$LINENO" 5; } else XT_CFLAGS=$pkg_cv_XT_CFLAGS XT_LIBS=$pkg_cv_XT_LIBS { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } fi pkg_failed=no { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XFT" >&5 $as_echo_n "checking for XFT... " >&6; } if test -n "$XFT_CFLAGS"; then pkg_cv_XFT_CFLAGS="$XFT_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"xft\""; } >&5 ($PKG_CONFIG --exists --print-errors "xft") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_XFT_CFLAGS=`$PKG_CONFIG --cflags "xft" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$XFT_LIBS"; then pkg_cv_XFT_LIBS="$XFT_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"xft\""; } >&5 ($PKG_CONFIG --exists --print-errors "xft") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_XFT_LIBS=`$PKG_CONFIG --libs "xft" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then XFT_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "xft" 2>&1` else XFT_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "xft" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$XFT_PKG_ERRORS" >&5 as_fn_error $? "Package requirements (xft) were not met: $XFT_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables XFT_CFLAGS and XFT_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details." "$LINENO" 5 elif test $pkg_failed = untried; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. Alternatively, you may set the environment variables XFT_CFLAGS and XFT_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. To get pkg-config, see . See \`config.log' for more details" "$LINENO" 5; } else XFT_CFLAGS=$pkg_cv_XFT_CFLAGS XFT_LIBS=$pkg_cv_XFT_LIBS { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } fi pkg_failed=no { $as_echo "$as_me:${as_lineno-$LINENO}: checking for FC" >&5 $as_echo_n "checking for FC... " >&6; } if test -n "$FC_CFLAGS"; then pkg_cv_FC_CFLAGS="$FC_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"fontconfig\""; } >&5 ($PKG_CONFIG --exists --print-errors "fontconfig") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_FC_CFLAGS=`$PKG_CONFIG --cflags "fontconfig" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$FC_LIBS"; then pkg_cv_FC_LIBS="$FC_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"fontconfig\""; } >&5 ($PKG_CONFIG --exists --print-errors "fontconfig") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_FC_LIBS=`$PKG_CONFIG --libs "fontconfig" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then FC_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "fontconfig" 2>&1` else FC_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "fontconfig" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$FC_PKG_ERRORS" >&5 as_fn_error $? "Package requirements (fontconfig) were not met: $FC_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables FC_CFLAGS and FC_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details." "$LINENO" 5 elif test $pkg_failed = untried; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. Alternatively, you may set the environment variables FC_CFLAGS and FC_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. To get pkg-config, see . See \`config.log' for more details" "$LINENO" 5; } else FC_CFLAGS=$pkg_cv_FC_CFLAGS FC_LIBS=$pkg_cv_FC_LIBS { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } fi # Checks for header files. # Checks for typedefs, structures, and compiler characteristics. ############################################################################### # # Function to check whether gettimeofday() exists, and how to call it. # This may define HAVE_GETTIMEOFDAY and GETTIMEOFDAY_TWO_ARGS. # ############################################################################### { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to call gettimeofday" >&5 $as_echo_n "checking how to call gettimeofday... " >&6; } if ${ac_cv_gettimeofday_args+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include int main () { struct timeval tv; struct timezone tzp; gettimeofday(&tv, &tzp); ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_gettimeofday_args=2 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include int main () { struct timeval tv; gettimeofday(&tv); ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_gettimeofday_args=1 else ac_gettimeofday_args=0 fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_gettimeofday_args=$ac_gettimeofday_args fi ac_gettimeofday_args=$ac_cv_gettimeofday_args if test "$ac_gettimeofday_args" = 1 ; then $as_echo "#define HAVE_GETTIMEOFDAY 1" >>confdefs.h { $as_echo "$as_me:${as_lineno-$LINENO}: result: one argument" >&5 $as_echo "one argument" >&6; } elif test "$ac_gettimeofday_args" = 2 ; then $as_echo "#define HAVE_GETTIMEOFDAY 1" >>confdefs.h $as_echo "#define GETTIMEOFDAY_TWO_ARGS 1" >>confdefs.h { $as_echo "$as_me:${as_lineno-$LINENO}: result: two arguments" >&5 $as_echo "two arguments" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: unknown" >&5 $as_echo "unknown" >&6; } fi # Checks for library functions. ac_config_files="$ac_config_files Makefile" cat >confcache <<\_ACEOF # This file is a shell script that caches the results of configure # tests run on this system so they can be shared between configure # scripts and configure runs, see configure's option --config-cache. # It is not useful on other systems. If it contains results you don't # want to keep, you may remove or edit it. # # config.status only pays attention to the cache file if you give it # the --recheck option to rerun configure. # # `ac_cv_env_foo' variables (set or unset) will be overridden when # loading this file, other *unset* `ac_cv_foo' will be assigned the # following values. _ACEOF # The following way of writing the cache mishandles newlines in values, # but we know of no workaround that is simple, portable, and efficient. # So, we kill variables containing newlines. # Ultrix sh set writes to stderr and can't be redirected directly, # and sets the high bit in the cache file unless we assign to the vars. ( for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do eval ac_val=\$$ac_var case $ac_val in #( *${as_nl}*) case $ac_var in #( *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; esac case $ac_var in #( _ | IFS | as_nl) ;; #( BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( *) { eval $ac_var=; unset $ac_var;} ;; esac ;; esac done (set) 2>&1 | case $as_nl`(ac_space=' '; set) 2>&1` in #( *${as_nl}ac_space=\ *) # `set' does not quote correctly, so add quotes: double-quote # substitution turns \\\\ into \\, and sed turns \\ into \. sed -n \ "s/'/'\\\\''/g; s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" ;; #( *) # `set' quotes correctly as required by POSIX, so do not add quotes. sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" ;; esac | sort ) | sed ' /^ac_cv_env_/b end t clear :clear s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ t end s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ :end' >>confcache if diff "$cache_file" confcache >/dev/null 2>&1; then :; else if test -w "$cache_file"; then if test "x$cache_file" != "x/dev/null"; then { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5 $as_echo "$as_me: updating cache $cache_file" >&6;} if test ! -f "$cache_file" || test -h "$cache_file"; then cat confcache >"$cache_file" else case $cache_file in #( */* | ?:*) mv -f confcache "$cache_file"$$ && mv -f "$cache_file"$$ "$cache_file" ;; #( *) mv -f confcache "$cache_file" ;; esac fi fi else { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5 $as_echo "$as_me: not updating unwritable cache $cache_file" >&6;} fi fi rm -f confcache test "x$prefix" = xNONE && prefix=$ac_default_prefix # Let make expand exec_prefix. test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' DEFS=-DHAVE_CONFIG_H ac_libobjs= ac_ltlibobjs= U= for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue # 1. Remove the extension, and $U if already installed. ac_script='s/\$U\././;s/\.o$//;s/\.obj$//' ac_i=`$as_echo "$ac_i" | sed "$ac_script"` # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR # will be set to the directory where LIBOBJS objects are built. as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext" as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo' done LIBOBJS=$ac_libobjs LTLIBOBJS=$ac_ltlibobjs { $as_echo "$as_me:${as_lineno-$LINENO}: checking that generated files are newer than configure" >&5 $as_echo_n "checking that generated files are newer than configure... " >&6; } if test -n "$am_sleep_pid"; then # Hide warnings about reused PIDs. wait $am_sleep_pid 2>/dev/null fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: done" >&5 $as_echo "done" >&6; } if test -n "$EXEEXT"; then am__EXEEXT_TRUE= am__EXEEXT_FALSE='#' else am__EXEEXT_TRUE='#' am__EXEEXT_FALSE= fi if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then as_fn_error $? "conditional \"AMDEP\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then as_fn_error $? "conditional \"am__fastdepCC\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then as_fn_error $? "conditional \"am__fastdepCC\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi : "${CONFIG_STATUS=./config.status}" ac_write_fail=0 ac_clean_files_save=$ac_clean_files ac_clean_files="$ac_clean_files $CONFIG_STATUS" { $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5 $as_echo "$as_me: creating $CONFIG_STATUS" >&6;} as_write_fail=0 cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1 #! $SHELL # Generated by $as_me. # Run this file to recreate the current configuration. # Compiler output produced by configure, useful for debugging # configure, is in config.log if it exists. debug=false ac_cs_recheck=false ac_cs_silent=false SHELL=\${CONFIG_SHELL-$SHELL} export SHELL _ASEOF cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1 ## -------------------- ## ## M4sh Initialization. ## ## -------------------- ## # Be more Bourne compatible DUALCASE=1; export DUALCASE # for MKS sh if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : emulate sh NULLCMD=: # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' setopt NO_GLOB_SUBST else case `(set -o) 2>/dev/null` in #( *posix*) : set -o posix ;; #( *) : ;; esac fi as_nl=' ' export as_nl # Printing a long string crashes Solaris 7 /usr/bin/printf. as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo # Prefer a ksh shell builtin over an external printf program on Solaris, # but without wasting forks for bash or zsh. if test -z "$BASH_VERSION$ZSH_VERSION" \ && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then as_echo='print -r --' as_echo_n='print -rn --' elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then as_echo='printf %s\n' as_echo_n='printf %s' else if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' as_echo_n='/usr/ucb/echo -n' else as_echo_body='eval expr "X$1" : "X\\(.*\\)"' as_echo_n_body='eval arg=$1; case $arg in #( *"$as_nl"*) expr "X$arg" : "X\\(.*\\)$as_nl"; arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; esac; expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" ' export as_echo_n_body as_echo_n='sh -c $as_echo_n_body as_echo' fi export as_echo_body as_echo='sh -c $as_echo_body as_echo' fi # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then PATH_SEPARATOR=: (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || PATH_SEPARATOR=';' } fi # IFS # We need space, tab and new line, in precisely that order. Quoting is # there to prevent editors from complaining about space-tab. # (If _AS_PATH_WALK were called with IFS unset, it would disable word # splitting by setting IFS to empty value.) IFS=" "" $as_nl" # Find who we are. Look in the path if we contain no directory separator. as_myself= case $0 in #(( *[\\/]* ) as_myself=$0 ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break done IFS=$as_save_IFS ;; esac # We did not find ourselves, most probably we were run as `sh COMMAND' # in which case we are not to be found in the path. if test "x$as_myself" = x; then as_myself=$0 fi if test ! -f "$as_myself"; then $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 exit 1 fi # Unset variables that we do not need and which cause bugs (e.g. in # pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" # suppresses any "Segmentation fault" message there. '((' could # trigger a bug in pdksh 5.2.14. for as_var in BASH_ENV ENV MAIL MAILPATH do eval test x\${$as_var+set} = xset \ && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : done PS1='$ ' PS2='> ' PS4='+ ' # NLS nuisances. LC_ALL=C export LC_ALL LANGUAGE=C export LANGUAGE # CDPATH. (unset CDPATH) >/dev/null 2>&1 && unset CDPATH # as_fn_error STATUS ERROR [LINENO LOG_FD] # ---------------------------------------- # Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are # provided, also output the error to LOG_FD, referencing LINENO. Then exit the # script with STATUS, using 1 if that was 0. as_fn_error () { as_status=$1; test $as_status -eq 0 && as_status=1 if test "$4"; then as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 fi $as_echo "$as_me: error: $2" >&2 as_fn_exit $as_status } # as_fn_error # as_fn_set_status STATUS # ----------------------- # Set $? to STATUS, without forking. as_fn_set_status () { return $1 } # as_fn_set_status # as_fn_exit STATUS # ----------------- # Exit the shell with STATUS, even in a "trap 0" or "set -e" context. as_fn_exit () { set +e as_fn_set_status $1 exit $1 } # as_fn_exit # as_fn_unset VAR # --------------- # Portably unset VAR. as_fn_unset () { { eval $1=; unset $1;} } as_unset=as_fn_unset # as_fn_append VAR VALUE # ---------------------- # Append the text in VALUE to the end of the definition contained in VAR. Take # advantage of any shell optimizations that allow amortized linear growth over # repeated appends, instead of the typical quadratic growth present in naive # implementations. if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : eval 'as_fn_append () { eval $1+=\$2 }' else as_fn_append () { eval $1=\$$1\$2 } fi # as_fn_append # as_fn_arith ARG... # ------------------ # Perform arithmetic evaluation on the ARGs, and store the result in the # global $as_val. Take advantage of shells that can avoid forks. The arguments # must be portable across $(()) and expr. if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : eval 'as_fn_arith () { as_val=$(( $* )) }' else as_fn_arith () { as_val=`expr "$@" || test $? -eq 1` } fi # as_fn_arith if expr a : '\(a\)' >/dev/null 2>&1 && test "X`expr 00001 : '.*\(...\)'`" = X001; then as_expr=expr else as_expr=false fi if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then as_basename=basename else as_basename=false fi if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then as_dirname=dirname else as_dirname=false fi as_me=`$as_basename -- "$0" || $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ X"$0" : 'X\(//\)$' \| \ X"$0" : 'X\(/\)' \| . 2>/dev/null || $as_echo X/"$0" | sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/ q } /^X\/\(\/\/\)$/{ s//\1/ q } /^X\/\(\/\).*/{ s//\1/ q } s/.*/./; q'` # Avoid depending upon Character Ranges. as_cr_letters='abcdefghijklmnopqrstuvwxyz' as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' as_cr_Letters=$as_cr_letters$as_cr_LETTERS as_cr_digits='0123456789' as_cr_alnum=$as_cr_Letters$as_cr_digits ECHO_C= ECHO_N= ECHO_T= case `echo -n x` in #((((( -n*) case `echo 'xy\c'` in *c*) ECHO_T=' ';; # ECHO_T is single tab character. xy) ECHO_C='\c';; *) echo `echo ksh88 bug on AIX 6.1` > /dev/null ECHO_T=' ';; esac;; *) ECHO_N='-n';; esac rm -f conf$$ conf$$.exe conf$$.file if test -d conf$$.dir; then rm -f conf$$.dir/conf$$.file else rm -f conf$$.dir mkdir conf$$.dir 2>/dev/null fi if (echo >conf$$.file) 2>/dev/null; then if ln -s conf$$.file conf$$ 2>/dev/null; then as_ln_s='ln -s' # ... but there are two gotchas: # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. # In both cases, we have to default to `cp -pR'. ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || as_ln_s='cp -pR' elif ln conf$$.file conf$$ 2>/dev/null; then as_ln_s=ln else as_ln_s='cp -pR' fi else as_ln_s='cp -pR' fi rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file rmdir conf$$.dir 2>/dev/null # as_fn_mkdir_p # ------------- # Create "$as_dir" as a directory, including parents if necessary. as_fn_mkdir_p () { case $as_dir in #( -*) as_dir=./$as_dir;; esac test -d "$as_dir" || eval $as_mkdir_p || { as_dirs= while :; do case $as_dir in #( *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( *) as_qdir=$as_dir;; esac as_dirs="'$as_qdir' $as_dirs" as_dir=`$as_dirname -- "$as_dir" || $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$as_dir" : 'X\(//\)[^/]' \| \ X"$as_dir" : 'X\(//\)$' \| \ X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$as_dir" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` test -d "$as_dir" && break done test -z "$as_dirs" || eval "mkdir $as_dirs" } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" } # as_fn_mkdir_p if mkdir -p . 2>/dev/null; then as_mkdir_p='mkdir -p "$as_dir"' else test -d ./-p && rmdir ./-p as_mkdir_p=false fi # as_fn_executable_p FILE # ----------------------- # Test if FILE is an executable regular file. as_fn_executable_p () { test -f "$1" && test -x "$1" } # as_fn_executable_p as_test_x='test -x' as_executable_p=as_fn_executable_p # Sed expression to map a string onto a valid CPP name. as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" # Sed expression to map a string onto a valid variable name. as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" exec 6>&1 ## ----------------------------------- ## ## Main body of $CONFIG_STATUS script. ## ## ----------------------------------- ## _ASEOF test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1 cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # Save the log message, to keep $0 and so on meaningful, and to # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" This file was extended by unicode-screensaver $as_me 0.5.1, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES CONFIG_HEADERS = $CONFIG_HEADERS CONFIG_LINKS = $CONFIG_LINKS CONFIG_COMMANDS = $CONFIG_COMMANDS $ $0 $@ on `(hostname || uname -n) 2>/dev/null | sed 1q` " _ACEOF case $ac_config_files in *" "*) set x $ac_config_files; shift; ac_config_files=$*;; esac case $ac_config_headers in *" "*) set x $ac_config_headers; shift; ac_config_headers=$*;; esac cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 # Files that config.status was made for. config_files="$ac_config_files" config_headers="$ac_config_headers" config_commands="$ac_config_commands" _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 ac_cs_usage="\ \`$as_me' instantiates files and other configuration actions from templates according to the current configuration. Unless the files and actions are specified as TAGs, all are instantiated by default. Usage: $0 [OPTION]... [TAG]... -h, --help print this help, then exit -V, --version print version number and configuration settings, then exit --config print configuration, then exit -q, --quiet, --silent do not print progress messages -d, --debug don't remove temporary files --recheck update $as_me by reconfiguring in the same conditions --file=FILE[:TEMPLATE] instantiate the configuration file FILE --header=FILE[:TEMPLATE] instantiate the configuration header FILE Configuration files: $config_files Configuration headers: $config_headers Configuration commands: $config_commands Report bugs to ." _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ unicode-screensaver config.status 0.5.1 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" Copyright (C) 2012 Free Software Foundation, Inc. This config.status script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it." ac_pwd='$ac_pwd' srcdir='$srcdir' INSTALL='$INSTALL' MKDIR_P='$MKDIR_P' AWK='$AWK' test -n "\$AWK" || AWK=awk _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # The default lists apply if the user does not specify any file. ac_need_defaults=: while test $# != 0 do case $1 in --*=?*) ac_option=`expr "X$1" : 'X\([^=]*\)='` ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` ac_shift=: ;; --*=) ac_option=`expr "X$1" : 'X\([^=]*\)='` ac_optarg= ac_shift=: ;; *) ac_option=$1 ac_optarg=$2 ac_shift=shift ;; esac case $ac_option in # Handling of the options. -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) ac_cs_recheck=: ;; --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) $as_echo "$ac_cs_version"; exit ;; --config | --confi | --conf | --con | --co | --c ) $as_echo "$ac_cs_config"; exit ;; --debug | --debu | --deb | --de | --d | -d ) debug=: ;; --file | --fil | --fi | --f ) $ac_shift case $ac_optarg in *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; '') as_fn_error $? "missing file argument" ;; esac as_fn_append CONFIG_FILES " '$ac_optarg'" ac_need_defaults=false;; --header | --heade | --head | --hea ) $ac_shift case $ac_optarg in *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; esac as_fn_append CONFIG_HEADERS " '$ac_optarg'" ac_need_defaults=false;; --he | --h) # Conflict between --help and --header as_fn_error $? "ambiguous option: \`$1' Try \`$0 --help' for more information.";; --help | --hel | -h ) $as_echo "$ac_cs_usage"; exit ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil | --si | --s) ac_cs_silent=: ;; # This is an error. -*) as_fn_error $? "unrecognized option: \`$1' Try \`$0 --help' for more information." ;; *) as_fn_append ac_config_targets " $1" ac_need_defaults=false ;; esac shift done ac_configure_extra_args= if $ac_cs_silent; then exec 6>/dev/null ac_configure_extra_args="$ac_configure_extra_args --silent" fi _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 if \$ac_cs_recheck; then set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion shift \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6 CONFIG_SHELL='$SHELL' export CONFIG_SHELL exec "\$@" fi _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 exec 5>>config.log { echo sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX ## Running $as_me. ## _ASBOX $as_echo "$ac_log" } >&5 _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 # # INIT-COMMANDS # AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir" # The HP-UX ksh and POSIX shell print the target directory to stdout # if CDPATH is set. (unset CDPATH) >/dev/null 2>&1 && unset CDPATH sed_quote_subst='$sed_quote_subst' double_quote_subst='$double_quote_subst' delay_variable_subst='$delay_variable_subst' macro_version='`$ECHO "$macro_version" | $SED "$delay_single_quote_subst"`' macro_revision='`$ECHO "$macro_revision" | $SED "$delay_single_quote_subst"`' enable_shared='`$ECHO "$enable_shared" | $SED "$delay_single_quote_subst"`' enable_static='`$ECHO "$enable_static" | $SED "$delay_single_quote_subst"`' pic_mode='`$ECHO "$pic_mode" | $SED "$delay_single_quote_subst"`' enable_fast_install='`$ECHO "$enable_fast_install" | $SED "$delay_single_quote_subst"`' shared_archive_member_spec='`$ECHO "$shared_archive_member_spec" | $SED "$delay_single_quote_subst"`' SHELL='`$ECHO "$SHELL" | $SED "$delay_single_quote_subst"`' ECHO='`$ECHO "$ECHO" | $SED "$delay_single_quote_subst"`' PATH_SEPARATOR='`$ECHO "$PATH_SEPARATOR" | $SED "$delay_single_quote_subst"`' host_alias='`$ECHO "$host_alias" | $SED "$delay_single_quote_subst"`' host='`$ECHO "$host" | $SED "$delay_single_quote_subst"`' host_os='`$ECHO "$host_os" | $SED "$delay_single_quote_subst"`' build_alias='`$ECHO "$build_alias" | $SED "$delay_single_quote_subst"`' build='`$ECHO "$build" | $SED "$delay_single_quote_subst"`' build_os='`$ECHO "$build_os" | $SED "$delay_single_quote_subst"`' SED='`$ECHO "$SED" | $SED "$delay_single_quote_subst"`' Xsed='`$ECHO "$Xsed" | $SED "$delay_single_quote_subst"`' GREP='`$ECHO "$GREP" | $SED "$delay_single_quote_subst"`' EGREP='`$ECHO "$EGREP" | $SED "$delay_single_quote_subst"`' FGREP='`$ECHO "$FGREP" | $SED "$delay_single_quote_subst"`' LD='`$ECHO "$LD" | $SED "$delay_single_quote_subst"`' NM='`$ECHO "$NM" | $SED "$delay_single_quote_subst"`' LN_S='`$ECHO "$LN_S" | $SED "$delay_single_quote_subst"`' max_cmd_len='`$ECHO "$max_cmd_len" | $SED "$delay_single_quote_subst"`' ac_objext='`$ECHO "$ac_objext" | $SED "$delay_single_quote_subst"`' exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`' lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`' lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`' lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`' lt_cv_to_host_file_cmd='`$ECHO "$lt_cv_to_host_file_cmd" | $SED "$delay_single_quote_subst"`' lt_cv_to_tool_file_cmd='`$ECHO "$lt_cv_to_tool_file_cmd" | $SED "$delay_single_quote_subst"`' reload_flag='`$ECHO "$reload_flag" | $SED "$delay_single_quote_subst"`' reload_cmds='`$ECHO "$reload_cmds" | $SED "$delay_single_quote_subst"`' OBJDUMP='`$ECHO "$OBJDUMP" | $SED "$delay_single_quote_subst"`' deplibs_check_method='`$ECHO "$deplibs_check_method" | $SED "$delay_single_quote_subst"`' file_magic_cmd='`$ECHO "$file_magic_cmd" | $SED "$delay_single_quote_subst"`' file_magic_glob='`$ECHO "$file_magic_glob" | $SED "$delay_single_quote_subst"`' want_nocaseglob='`$ECHO "$want_nocaseglob" | $SED "$delay_single_quote_subst"`' DLLTOOL='`$ECHO "$DLLTOOL" | $SED "$delay_single_quote_subst"`' sharedlib_from_linklib_cmd='`$ECHO "$sharedlib_from_linklib_cmd" | $SED "$delay_single_quote_subst"`' AR='`$ECHO "$AR" | $SED "$delay_single_quote_subst"`' AR_FLAGS='`$ECHO "$AR_FLAGS" | $SED "$delay_single_quote_subst"`' archiver_list_spec='`$ECHO "$archiver_list_spec" | $SED "$delay_single_quote_subst"`' STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`' RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`' old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`' old_postuninstall_cmds='`$ECHO "$old_postuninstall_cmds" | $SED "$delay_single_quote_subst"`' old_archive_cmds='`$ECHO "$old_archive_cmds" | $SED "$delay_single_quote_subst"`' lock_old_archive_extraction='`$ECHO "$lock_old_archive_extraction" | $SED "$delay_single_quote_subst"`' CC='`$ECHO "$CC" | $SED "$delay_single_quote_subst"`' CFLAGS='`$ECHO "$CFLAGS" | $SED "$delay_single_quote_subst"`' compiler='`$ECHO "$compiler" | $SED "$delay_single_quote_subst"`' GCC='`$ECHO "$GCC" | $SED "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_to_import='`$ECHO "$lt_cv_sys_global_symbol_to_import" | $SED "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`' lt_cv_nm_interface='`$ECHO "$lt_cv_nm_interface" | $SED "$delay_single_quote_subst"`' nm_file_list_spec='`$ECHO "$nm_file_list_spec" | $SED "$delay_single_quote_subst"`' lt_sysroot='`$ECHO "$lt_sysroot" | $SED "$delay_single_quote_subst"`' lt_cv_truncate_bin='`$ECHO "$lt_cv_truncate_bin" | $SED "$delay_single_quote_subst"`' objdir='`$ECHO "$objdir" | $SED "$delay_single_quote_subst"`' MAGIC_CMD='`$ECHO "$MAGIC_CMD" | $SED "$delay_single_quote_subst"`' lt_prog_compiler_no_builtin_flag='`$ECHO "$lt_prog_compiler_no_builtin_flag" | $SED "$delay_single_quote_subst"`' lt_prog_compiler_pic='`$ECHO "$lt_prog_compiler_pic" | $SED "$delay_single_quote_subst"`' lt_prog_compiler_wl='`$ECHO "$lt_prog_compiler_wl" | $SED "$delay_single_quote_subst"`' lt_prog_compiler_static='`$ECHO "$lt_prog_compiler_static" | $SED "$delay_single_quote_subst"`' lt_cv_prog_compiler_c_o='`$ECHO "$lt_cv_prog_compiler_c_o" | $SED "$delay_single_quote_subst"`' need_locks='`$ECHO "$need_locks" | $SED "$delay_single_quote_subst"`' MANIFEST_TOOL='`$ECHO "$MANIFEST_TOOL" | $SED "$delay_single_quote_subst"`' DSYMUTIL='`$ECHO "$DSYMUTIL" | $SED "$delay_single_quote_subst"`' NMEDIT='`$ECHO "$NMEDIT" | $SED "$delay_single_quote_subst"`' LIPO='`$ECHO "$LIPO" | $SED "$delay_single_quote_subst"`' OTOOL='`$ECHO "$OTOOL" | $SED "$delay_single_quote_subst"`' OTOOL64='`$ECHO "$OTOOL64" | $SED "$delay_single_quote_subst"`' libext='`$ECHO "$libext" | $SED "$delay_single_quote_subst"`' shrext_cmds='`$ECHO "$shrext_cmds" | $SED "$delay_single_quote_subst"`' extract_expsyms_cmds='`$ECHO "$extract_expsyms_cmds" | $SED "$delay_single_quote_subst"`' archive_cmds_need_lc='`$ECHO "$archive_cmds_need_lc" | $SED "$delay_single_quote_subst"`' enable_shared_with_static_runtimes='`$ECHO "$enable_shared_with_static_runtimes" | $SED "$delay_single_quote_subst"`' export_dynamic_flag_spec='`$ECHO "$export_dynamic_flag_spec" | $SED "$delay_single_quote_subst"`' whole_archive_flag_spec='`$ECHO "$whole_archive_flag_spec" | $SED "$delay_single_quote_subst"`' compiler_needs_object='`$ECHO "$compiler_needs_object" | $SED "$delay_single_quote_subst"`' old_archive_from_new_cmds='`$ECHO "$old_archive_from_new_cmds" | $SED "$delay_single_quote_subst"`' old_archive_from_expsyms_cmds='`$ECHO "$old_archive_from_expsyms_cmds" | $SED "$delay_single_quote_subst"`' archive_cmds='`$ECHO "$archive_cmds" | $SED "$delay_single_quote_subst"`' archive_expsym_cmds='`$ECHO "$archive_expsym_cmds" | $SED "$delay_single_quote_subst"`' module_cmds='`$ECHO "$module_cmds" | $SED "$delay_single_quote_subst"`' module_expsym_cmds='`$ECHO "$module_expsym_cmds" | $SED "$delay_single_quote_subst"`' with_gnu_ld='`$ECHO "$with_gnu_ld" | $SED "$delay_single_quote_subst"`' allow_undefined_flag='`$ECHO "$allow_undefined_flag" | $SED "$delay_single_quote_subst"`' no_undefined_flag='`$ECHO "$no_undefined_flag" | $SED "$delay_single_quote_subst"`' hardcode_libdir_flag_spec='`$ECHO "$hardcode_libdir_flag_spec" | $SED "$delay_single_quote_subst"`' hardcode_libdir_separator='`$ECHO "$hardcode_libdir_separator" | $SED "$delay_single_quote_subst"`' hardcode_direct='`$ECHO "$hardcode_direct" | $SED "$delay_single_quote_subst"`' hardcode_direct_absolute='`$ECHO "$hardcode_direct_absolute" | $SED "$delay_single_quote_subst"`' hardcode_minus_L='`$ECHO "$hardcode_minus_L" | $SED "$delay_single_quote_subst"`' hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_quote_subst"`' hardcode_automatic='`$ECHO "$hardcode_automatic" | $SED "$delay_single_quote_subst"`' inherit_rpath='`$ECHO "$inherit_rpath" | $SED "$delay_single_quote_subst"`' link_all_deplibs='`$ECHO "$link_all_deplibs" | $SED "$delay_single_quote_subst"`' always_export_symbols='`$ECHO "$always_export_symbols" | $SED "$delay_single_quote_subst"`' export_symbols_cmds='`$ECHO "$export_symbols_cmds" | $SED "$delay_single_quote_subst"`' exclude_expsyms='`$ECHO "$exclude_expsyms" | $SED "$delay_single_quote_subst"`' include_expsyms='`$ECHO "$include_expsyms" | $SED "$delay_single_quote_subst"`' prelink_cmds='`$ECHO "$prelink_cmds" | $SED "$delay_single_quote_subst"`' postlink_cmds='`$ECHO "$postlink_cmds" | $SED "$delay_single_quote_subst"`' file_list_spec='`$ECHO "$file_list_spec" | $SED "$delay_single_quote_subst"`' variables_saved_for_relink='`$ECHO "$variables_saved_for_relink" | $SED "$delay_single_quote_subst"`' need_lib_prefix='`$ECHO "$need_lib_prefix" | $SED "$delay_single_quote_subst"`' need_version='`$ECHO "$need_version" | $SED "$delay_single_quote_subst"`' version_type='`$ECHO "$version_type" | $SED "$delay_single_quote_subst"`' runpath_var='`$ECHO "$runpath_var" | $SED "$delay_single_quote_subst"`' shlibpath_var='`$ECHO "$shlibpath_var" | $SED "$delay_single_quote_subst"`' shlibpath_overrides_runpath='`$ECHO "$shlibpath_overrides_runpath" | $SED "$delay_single_quote_subst"`' libname_spec='`$ECHO "$libname_spec" | $SED "$delay_single_quote_subst"`' library_names_spec='`$ECHO "$library_names_spec" | $SED "$delay_single_quote_subst"`' soname_spec='`$ECHO "$soname_spec" | $SED "$delay_single_quote_subst"`' install_override_mode='`$ECHO "$install_override_mode" | $SED "$delay_single_quote_subst"`' postinstall_cmds='`$ECHO "$postinstall_cmds" | $SED "$delay_single_quote_subst"`' postuninstall_cmds='`$ECHO "$postuninstall_cmds" | $SED "$delay_single_quote_subst"`' finish_cmds='`$ECHO "$finish_cmds" | $SED "$delay_single_quote_subst"`' finish_eval='`$ECHO "$finish_eval" | $SED "$delay_single_quote_subst"`' hardcode_into_libs='`$ECHO "$hardcode_into_libs" | $SED "$delay_single_quote_subst"`' sys_lib_search_path_spec='`$ECHO "$sys_lib_search_path_spec" | $SED "$delay_single_quote_subst"`' configure_time_dlsearch_path='`$ECHO "$configure_time_dlsearch_path" | $SED "$delay_single_quote_subst"`' configure_time_lt_sys_library_path='`$ECHO "$configure_time_lt_sys_library_path" | $SED "$delay_single_quote_subst"`' hardcode_action='`$ECHO "$hardcode_action" | $SED "$delay_single_quote_subst"`' enable_dlopen='`$ECHO "$enable_dlopen" | $SED "$delay_single_quote_subst"`' enable_dlopen_self='`$ECHO "$enable_dlopen_self" | $SED "$delay_single_quote_subst"`' enable_dlopen_self_static='`$ECHO "$enable_dlopen_self_static" | $SED "$delay_single_quote_subst"`' old_striplib='`$ECHO "$old_striplib" | $SED "$delay_single_quote_subst"`' striplib='`$ECHO "$striplib" | $SED "$delay_single_quote_subst"`' LTCC='$LTCC' LTCFLAGS='$LTCFLAGS' compiler='$compiler_DEFAULT' # A function that is used when there is no print builtin or printf. func_fallback_echo () { eval 'cat <<_LTECHO_EOF \$1 _LTECHO_EOF' } # Quote evaled strings. for var in SHELL \ ECHO \ PATH_SEPARATOR \ SED \ GREP \ EGREP \ FGREP \ LD \ NM \ LN_S \ lt_SP2NL \ lt_NL2SP \ reload_flag \ OBJDUMP \ deplibs_check_method \ file_magic_cmd \ file_magic_glob \ want_nocaseglob \ DLLTOOL \ sharedlib_from_linklib_cmd \ AR \ AR_FLAGS \ archiver_list_spec \ STRIP \ RANLIB \ CC \ CFLAGS \ compiler \ lt_cv_sys_global_symbol_pipe \ lt_cv_sys_global_symbol_to_cdecl \ lt_cv_sys_global_symbol_to_import \ lt_cv_sys_global_symbol_to_c_name_address \ lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \ lt_cv_nm_interface \ nm_file_list_spec \ lt_cv_truncate_bin \ lt_prog_compiler_no_builtin_flag \ lt_prog_compiler_pic \ lt_prog_compiler_wl \ lt_prog_compiler_static \ lt_cv_prog_compiler_c_o \ need_locks \ MANIFEST_TOOL \ DSYMUTIL \ NMEDIT \ LIPO \ OTOOL \ OTOOL64 \ shrext_cmds \ export_dynamic_flag_spec \ whole_archive_flag_spec \ compiler_needs_object \ with_gnu_ld \ allow_undefined_flag \ no_undefined_flag \ hardcode_libdir_flag_spec \ hardcode_libdir_separator \ exclude_expsyms \ include_expsyms \ file_list_spec \ variables_saved_for_relink \ libname_spec \ library_names_spec \ soname_spec \ install_override_mode \ finish_eval \ old_striplib \ striplib; do case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in *[\\\\\\\`\\"\\\$]*) eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes ;; *) eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" ;; esac done # Double-quote double-evaled strings. for var in reload_cmds \ old_postinstall_cmds \ old_postuninstall_cmds \ old_archive_cmds \ extract_expsyms_cmds \ old_archive_from_new_cmds \ old_archive_from_expsyms_cmds \ archive_cmds \ archive_expsym_cmds \ module_cmds \ module_expsym_cmds \ export_symbols_cmds \ prelink_cmds \ postlink_cmds \ postinstall_cmds \ postuninstall_cmds \ finish_cmds \ sys_lib_search_path_spec \ configure_time_dlsearch_path \ configure_time_lt_sys_library_path; do case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in *[\\\\\\\`\\"\\\$]*) eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes ;; *) eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" ;; esac done ac_aux_dir='$ac_aux_dir' # See if we are running on zsh, and set the options that allow our # commands through without removal of \ escapes INIT. if test -n "\${ZSH_VERSION+set}"; then setopt NO_GLOB_SUBST fi PACKAGE='$PACKAGE' VERSION='$VERSION' RM='$RM' ofile='$ofile' _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # Handling of arguments. for ac_config_target in $ac_config_targets do case $ac_config_target in "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; "libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;; "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; esac done # If the user did not use the arguments to specify the items to instantiate, # then the envvar interface is used. Set only those that are not. # We use the long form for the default assignment because of an extremely # bizarre bug on SunOS 4.1.3. if $ac_need_defaults; then test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands fi # Have a temporary directory for convenience. Make it in the build tree # simply because there is no reason against having it here, and in addition, # creating and moving files from /tmp can sometimes cause problems. # Hook for its removal unless debugging. # Note that there is a small window in which the directory will not be cleaned: # after its creation but before its name has been assigned to `$tmp'. $debug || { tmp= ac_tmp= trap 'exit_status=$? : "${ac_tmp:=$tmp}" { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status ' 0 trap 'as_fn_exit 1' 1 2 13 15 } # Create a (secure) tmp directory for tmp files. { tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && test -d "$tmp" } || { tmp=./conf$$-$RANDOM (umask 077 && mkdir "$tmp") } || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5 ac_tmp=$tmp # Set up the scripts for CONFIG_FILES section. # No need to generate them if there are no CONFIG_FILES. # This happens for instance with `./config.status config.h'. if test -n "$CONFIG_FILES"; then ac_cr=`echo X | tr X '\015'` # On cygwin, bash can eat \r inside `` if the user requested igncr. # But we know of no other shell where ac_cr would be empty at this # point, so we can use a bashism as a fallback. if test "x$ac_cr" = x; then eval ac_cr=\$\'\\r\' fi ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' /dev/null` if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then ac_cs_awk_cr='\\r' else ac_cs_awk_cr=$ac_cr fi echo 'BEGIN {' >"$ac_tmp/subs1.awk" && _ACEOF { echo "cat >conf$$subs.awk <<_ACEOF" && echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' && echo "_ACEOF" } >conf$$subs.sh || as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'` ac_delim='%!_!# ' for ac_last_try in false false false false false :; do . ./conf$$subs.sh || as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X` if test $ac_delim_n = $ac_delim_num; then break elif $ac_last_try; then as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 else ac_delim="$ac_delim!$ac_delim _$ac_delim!! " fi done rm -f conf$$subs.sh cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK && _ACEOF sed -n ' h s/^/S["/; s/!.*/"]=/ p g s/^[^!]*!// :repl t repl s/'"$ac_delim"'$// t delim :nl h s/\(.\{148\}\)..*/\1/ t more1 s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/ p n b repl :more1 s/["\\]/\\&/g; s/^/"/; s/$/"\\/ p g s/.\{148\}// t nl :delim h s/\(.\{148\}\)..*/\1/ t more2 s/["\\]/\\&/g; s/^/"/; s/$/"/ p b :more2 s/["\\]/\\&/g; s/^/"/; s/$/"\\/ p g s/.\{148\}// t delim ' >$CONFIG_STATUS || ac_write_fail=1 rm -f conf$$subs.awk cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 _ACAWK cat >>"\$ac_tmp/subs1.awk" <<_ACAWK && for (key in S) S_is_set[key] = 1 FS = "" } { line = $ 0 nfields = split(line, field, "@") substed = 0 len = length(field[1]) for (i = 2; i < nfields; i++) { key = field[i] keylen = length(key) if (S_is_set[key]) { value = S[key] line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3) len += length(value) + length(field[++i]) substed = 1 } else len += 1 + keylen } print line } _ACAWK _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g" else cat fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \ || as_fn_error $? "could not setup config files machinery" "$LINENO" 5 _ACEOF # VPATH may cause trouble with some makes, so we remove sole $(srcdir), # ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and # trailing colons and then remove the whole line if VPATH becomes empty # (actually we leave an empty line to preserve line numbers). if test "x$srcdir" = x.; then ac_vpsub='/^[ ]*VPATH[ ]*=[ ]*/{ h s/// s/^/:/ s/[ ]*$/:/ s/:\$(srcdir):/:/g s/:\${srcdir}:/:/g s/:@srcdir@:/:/g s/^:*// s/:*$// x s/\(=[ ]*\).*/\1/ G s/\n// s/^[^=]*=[ ]*$// }' fi cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 fi # test -n "$CONFIG_FILES" # Set up the scripts for CONFIG_HEADERS section. # No need to generate them if there are no CONFIG_HEADERS. # This happens for instance with `./config.status Makefile'. if test -n "$CONFIG_HEADERS"; then cat >"$ac_tmp/defines.awk" <<\_ACAWK || BEGIN { _ACEOF # Transform confdefs.h into an awk script `defines.awk', embedded as # here-document in config.status, that substitutes the proper values into # config.h.in to produce config.h. # Create a delimiter string that does not exist in confdefs.h, to ease # handling of long lines. ac_delim='%!_!# ' for ac_last_try in false false :; do ac_tt=`sed -n "/$ac_delim/p" confdefs.h` if test -z "$ac_tt"; then break elif $ac_last_try; then as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5 else ac_delim="$ac_delim!$ac_delim _$ac_delim!! " fi done # For the awk script, D is an array of macro values keyed by name, # likewise P contains macro parameters if any. Preserve backslash # newline sequences. ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]* sed -n ' s/.\{148\}/&'"$ac_delim"'/g t rset :rset s/^[ ]*#[ ]*define[ ][ ]*/ / t def d :def s/\\$// t bsnl s/["\\]/\\&/g s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ D["\1"]=" \3"/p s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2"/p d :bsnl s/["\\]/\\&/g s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ D["\1"]=" \3\\\\\\n"\\/p t cont s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p t cont d :cont n s/.\{148\}/&'"$ac_delim"'/g t clear :clear s/\\$// t bsnlc s/["\\]/\\&/g; s/^/"/; s/$/"/p d :bsnlc s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p b cont ' >$CONFIG_STATUS || ac_write_fail=1 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 for (key in D) D_is_set[key] = 1 FS = "" } /^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ { line = \$ 0 split(line, arg, " ") if (arg[1] == "#") { defundef = arg[2] mac1 = arg[3] } else { defundef = substr(arg[1], 2) mac1 = arg[2] } split(mac1, mac2, "(") #) macro = mac2[1] prefix = substr(line, 1, index(line, defundef) - 1) if (D_is_set[macro]) { # Preserve the white space surrounding the "#". print prefix "define", macro P[macro] D[macro] next } else { # Replace #undef with comments. This is necessary, for example, # in the case of _POSIX_SOURCE, which is predefined and required # on some systems where configure will not decide to define it. if (defundef == "undef") { print "/*", prefix defundef, macro, "*/" next } } } { print } _ACAWK _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 as_fn_error $? "could not setup config headers machinery" "$LINENO" 5 fi # test -n "$CONFIG_HEADERS" eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS" shift for ac_tag do case $ac_tag in :[FHLC]) ac_mode=$ac_tag; continue;; esac case $ac_mode$ac_tag in :[FHL]*:*);; :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;; :[FH]-) ac_tag=-:-;; :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; esac ac_save_IFS=$IFS IFS=: set x $ac_tag IFS=$ac_save_IFS shift ac_file=$1 shift case $ac_mode in :L) ac_source=$1;; :[FH]) ac_file_inputs= for ac_f do case $ac_f in -) ac_f="$ac_tmp/stdin";; *) # Look for the file first in the build tree, then in the source tree # (if the path is not absolute). The absolute path cannot be DOS-style, # because $ac_f cannot contain `:'. test -f "$ac_f" || case $ac_f in [\\/$]*) false;; *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; esac || as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;; esac case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac as_fn_append ac_file_inputs " '$ac_f'" done # Let's still pretend it is `configure' which instantiates (i.e., don't # use $as_me), people would be surprised to read: # /* config.h. Generated by config.status. */ configure_input='Generated from '` $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' `' by configure.' if test x"$ac_file" != x-; then configure_input="$ac_file. $configure_input" { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 $as_echo "$as_me: creating $ac_file" >&6;} fi # Neutralize special characters interpreted by sed in replacement strings. case $configure_input in #( *\&* | *\|* | *\\* ) ac_sed_conf_input=`$as_echo "$configure_input" | sed 's/[\\\\&|]/\\\\&/g'`;; #( *) ac_sed_conf_input=$configure_input;; esac case $ac_tag in *:-:* | *:-) cat >"$ac_tmp/stdin" \ || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; esac ;; esac ac_dir=`$as_dirname -- "$ac_file" || $as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$ac_file" : 'X\(//\)[^/]' \| \ X"$ac_file" : 'X\(//\)$' \| \ X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$ac_file" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` as_dir="$ac_dir"; as_fn_mkdir_p ac_builddir=. case "$ac_dir" in .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; *) ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` # A ".." for each directory in $ac_dir_suffix. ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` case $ac_top_builddir_sub in "") ac_top_builddir_sub=. ac_top_build_prefix= ;; *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; esac ;; esac ac_abs_top_builddir=$ac_pwd ac_abs_builddir=$ac_pwd$ac_dir_suffix # for backward compatibility: ac_top_builddir=$ac_top_build_prefix case $srcdir in .) # We are building in place. ac_srcdir=. ac_top_srcdir=$ac_top_builddir_sub ac_abs_top_srcdir=$ac_pwd ;; [\\/]* | ?:[\\/]* ) # Absolute name. ac_srcdir=$srcdir$ac_dir_suffix; ac_top_srcdir=$srcdir ac_abs_top_srcdir=$srcdir ;; *) # Relative name. ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix ac_top_srcdir=$ac_top_build_prefix$srcdir ac_abs_top_srcdir=$ac_pwd/$srcdir ;; esac ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix case $ac_mode in :F) # # CONFIG_FILE # case $INSTALL in [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; esac ac_MKDIR_P=$MKDIR_P case $MKDIR_P in [\\/$]* | ?:[\\/]* ) ;; */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;; esac _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # If the template does not know about datarootdir, expand it. # FIXME: This hack should be removed a few years after 2.60. ac_datarootdir_hack=; ac_datarootdir_seen= ac_sed_dataroot=' /datarootdir/ { p q } /@datadir@/p /@docdir@/p /@infodir@/p /@localedir@/p /@mandir@/p' case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in *datarootdir*) ac_datarootdir_seen=yes;; *@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 $as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_datarootdir_hack=' s&@datadir@&$datadir&g s&@docdir@&$docdir&g s&@infodir@&$infodir&g s&@localedir@&$localedir&g s&@mandir@&$mandir&g s&\\\${datarootdir}&$datarootdir&g' ;; esac _ACEOF # Neutralize VPATH when `$srcdir' = `.'. # Shell code in configure.ac might set extrasub. # FIXME: do we really want to maintain this feature? cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_sed_extra="$ac_vpsub $extrasub _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 :t /@[a-zA-Z_][a-zA-Z_0-9]*@/!b s|@configure_input@|$ac_sed_conf_input|;t t s&@top_builddir@&$ac_top_builddir_sub&;t t s&@top_build_prefix@&$ac_top_build_prefix&;t t s&@srcdir@&$ac_srcdir&;t t s&@abs_srcdir@&$ac_abs_srcdir&;t t s&@top_srcdir@&$ac_top_srcdir&;t t s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t s&@builddir@&$ac_builddir&;t t s&@abs_builddir@&$ac_abs_builddir&;t t s&@abs_top_builddir@&$ac_abs_top_builddir&;t t s&@INSTALL@&$ac_INSTALL&;t t s&@MKDIR_P@&$ac_MKDIR_P&;t t $ac_datarootdir_hack " eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \ >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5 test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } && { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \ "$ac_tmp/out"`; test -z "$ac_out"; } && { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' which seems to be undefined. Please make sure it is defined" >&5 $as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' which seems to be undefined. Please make sure it is defined" >&2;} rm -f "$ac_tmp/stdin" case $ac_file in -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";; *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";; esac \ || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; :H) # # CONFIG_HEADER # if test x"$ac_file" != x-; then { $as_echo "/* $configure_input */" \ && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" } >"$ac_tmp/config.h" \ || as_fn_error $? "could not create $ac_file" "$LINENO" 5 if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 $as_echo "$as_me: $ac_file is unchanged" >&6;} else rm -f "$ac_file" mv "$ac_tmp/config.h" "$ac_file" \ || as_fn_error $? "could not create $ac_file" "$LINENO" 5 fi else $as_echo "/* $configure_input */" \ && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \ || as_fn_error $? "could not create -" "$LINENO" 5 fi # Compute "$ac_file"'s index in $config_headers. _am_arg="$ac_file" _am_stamp_count=1 for _am_header in $config_headers :; do case $_am_header in $_am_arg | $_am_arg:* ) break ;; * ) _am_stamp_count=`expr $_am_stamp_count + 1` ;; esac done echo "timestamp for $_am_arg" >`$as_dirname -- "$_am_arg" || $as_expr X"$_am_arg" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$_am_arg" : 'X\(//\)[^/]' \| \ X"$_am_arg" : 'X\(//\)$' \| \ X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$_am_arg" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'`/stamp-h$_am_stamp_count ;; :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5 $as_echo "$as_me: executing $ac_file commands" >&6;} ;; esac case $ac_file$ac_mode in "depfiles":C) test x"$AMDEP_TRUE" != x"" || { # Older Autoconf quotes --file arguments for eval, but not when files # are listed without --file. Let's play safe and only enable the eval # if we detect the quoting. case $CONFIG_FILES in *\'*) eval set x "$CONFIG_FILES" ;; *) set x $CONFIG_FILES ;; esac shift for mf do # Strip MF so we end up with the name of the file. mf=`echo "$mf" | sed -e 's/:.*$//'` # Check whether this is an Automake generated Makefile or not. # We used to match only the files named 'Makefile.in', but # some people rename them; so instead we look at the file content. # Grep'ing the first line is not enough: some people post-process # each Makefile.in and add a new line on top of each file to say so. # Grep'ing the whole file is not good either: AIX grep has a line # limit of 2048, but all sed's we know have understand at least 4000. if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then dirpart=`$as_dirname -- "$mf" || $as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$mf" : 'X\(//\)[^/]' \| \ X"$mf" : 'X\(//\)$' \| \ X"$mf" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$mf" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` else continue fi # Extract the definition of DEPDIR, am__include, and am__quote # from the Makefile without running 'make'. DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` test -z "$DEPDIR" && continue am__include=`sed -n 's/^am__include = //p' < "$mf"` test -z "$am__include" && continue am__quote=`sed -n 's/^am__quote = //p' < "$mf"` # Find all dependency output files, they are included files with # $(DEPDIR) in their names. We invoke sed twice because it is the # simplest approach to changing $(DEPDIR) to its actual value in the # expansion. for file in `sed -n " s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do # Make sure the directory exists. test -f "$dirpart/$file" && continue fdir=`$as_dirname -- "$file" || $as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$file" : 'X\(//\)[^/]' \| \ X"$file" : 'X\(//\)$' \| \ X"$file" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$file" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` as_dir=$dirpart/$fdir; as_fn_mkdir_p # echo "creating $dirpart/$file" echo '# dummy' > "$dirpart/$file" done done } ;; "libtool":C) # See if we are running on zsh, and set the options that allow our # commands through without removal of \ escapes. if test -n "${ZSH_VERSION+set}"; then setopt NO_GLOB_SUBST fi cfgfile=${ofile}T trap "$RM \"$cfgfile\"; exit 1" 1 2 15 $RM "$cfgfile" cat <<_LT_EOF >> "$cfgfile" #! $SHELL # Generated automatically by $as_me ($PACKAGE) $VERSION # NOTE: Changes made to this file will be lost: look at ltmain.sh. # Provide generalized library-building support services. # Written by Gordon Matzigkeit, 1996 # Copyright (C) 2014 Free Software Foundation, Inc. # This is free software; see the source for copying conditions. There is NO # warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. # GNU Libtool is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of of the License, or # (at your option) any later version. # # As a special exception to the GNU General Public License, if you # distribute this file as part of a program or library that is built # using GNU Libtool, you may include this file under the same # distribution terms that you use for the rest of that program. # # GNU Libtool is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see . # The names of the tagged configurations supported by this script. available_tags='' # Configured defaults for sys_lib_dlsearch_path munging. : \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"} # ### BEGIN LIBTOOL CONFIG # Which release of libtool.m4 was used? macro_version=$macro_version macro_revision=$macro_revision # Whether or not to build shared libraries. build_libtool_libs=$enable_shared # Whether or not to build static libraries. build_old_libs=$enable_static # What type of objects to build. pic_mode=$pic_mode # Whether or not to optimize for fast installation. fast_install=$enable_fast_install # Shared archive member basename,for filename based shared library versioning on AIX. shared_archive_member_spec=$shared_archive_member_spec # Shell to use when invoking shell scripts. SHELL=$lt_SHELL # An echo program that protects backslashes. ECHO=$lt_ECHO # The PATH separator for the build system. PATH_SEPARATOR=$lt_PATH_SEPARATOR # The host system. host_alias=$host_alias host=$host host_os=$host_os # The build system. build_alias=$build_alias build=$build build_os=$build_os # A sed program that does not truncate output. SED=$lt_SED # Sed that helps us avoid accidentally triggering echo(1) options like -n. Xsed="\$SED -e 1s/^X//" # A grep program that handles long lines. GREP=$lt_GREP # An ERE matcher. EGREP=$lt_EGREP # A literal string matcher. FGREP=$lt_FGREP # A BSD- or MS-compatible name lister. NM=$lt_NM # Whether we need soft or hard links. LN_S=$lt_LN_S # What is the maximum length of a command? max_cmd_len=$max_cmd_len # Object file suffix (normally "o"). objext=$ac_objext # Executable file suffix (normally ""). exeext=$exeext # whether the shell understands "unset". lt_unset=$lt_unset # turn spaces into newlines. SP2NL=$lt_lt_SP2NL # turn newlines into spaces. NL2SP=$lt_lt_NL2SP # convert \$build file names to \$host format. to_host_file_cmd=$lt_cv_to_host_file_cmd # convert \$build files to toolchain format. to_tool_file_cmd=$lt_cv_to_tool_file_cmd # An object symbol dumper. OBJDUMP=$lt_OBJDUMP # Method to check whether dependent libraries are shared objects. deplibs_check_method=$lt_deplibs_check_method # Command to use when deplibs_check_method = "file_magic". file_magic_cmd=$lt_file_magic_cmd # How to find potential files when deplibs_check_method = "file_magic". file_magic_glob=$lt_file_magic_glob # Find potential files using nocaseglob when deplibs_check_method = "file_magic". want_nocaseglob=$lt_want_nocaseglob # DLL creation program. DLLTOOL=$lt_DLLTOOL # Command to associate shared and link libraries. sharedlib_from_linklib_cmd=$lt_sharedlib_from_linklib_cmd # The archiver. AR=$lt_AR # Flags to create an archive. AR_FLAGS=$lt_AR_FLAGS # How to feed a file listing to the archiver. archiver_list_spec=$lt_archiver_list_spec # A symbol stripping program. STRIP=$lt_STRIP # Commands used to install an old-style archive. RANLIB=$lt_RANLIB old_postinstall_cmds=$lt_old_postinstall_cmds old_postuninstall_cmds=$lt_old_postuninstall_cmds # Whether to use a lock for old archive extraction. lock_old_archive_extraction=$lock_old_archive_extraction # A C compiler. LTCC=$lt_CC # LTCC compiler flags. LTCFLAGS=$lt_CFLAGS # Take the output of nm and produce a listing of raw symbols and C names. global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe # Transform the output of nm in a proper C declaration. global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl # Transform the output of nm into a list of symbols to manually relocate. global_symbol_to_import=$lt_lt_cv_sys_global_symbol_to_import # Transform the output of nm in a C name address pair. global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address # Transform the output of nm in a C name address pair when lib prefix is needed. global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix # The name lister interface. nm_interface=$lt_lt_cv_nm_interface # Specify filename containing input files for \$NM. nm_file_list_spec=$lt_nm_file_list_spec # The root where to search for dependent libraries,and where our libraries should be installed. lt_sysroot=$lt_sysroot # Command to truncate a binary pipe. lt_truncate_bin=$lt_lt_cv_truncate_bin # The name of the directory that contains temporary libtool files. objdir=$objdir # Used to examine libraries when file_magic_cmd begins with "file". MAGIC_CMD=$MAGIC_CMD # Must we lock files when doing compilation? need_locks=$lt_need_locks # Manifest tool. MANIFEST_TOOL=$lt_MANIFEST_TOOL # Tool to manipulate archived DWARF debug symbol files on Mac OS X. DSYMUTIL=$lt_DSYMUTIL # Tool to change global to local symbols on Mac OS X. NMEDIT=$lt_NMEDIT # Tool to manipulate fat objects and archives on Mac OS X. LIPO=$lt_LIPO # ldd/readelf like tool for Mach-O binaries on Mac OS X. OTOOL=$lt_OTOOL # ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4. OTOOL64=$lt_OTOOL64 # Old archive suffix (normally "a"). libext=$libext # Shared library suffix (normally ".so"). shrext_cmds=$lt_shrext_cmds # The commands to extract the exported symbol list from a shared archive. extract_expsyms_cmds=$lt_extract_expsyms_cmds # Variables whose values should be saved in libtool wrapper scripts and # restored at link time. variables_saved_for_relink=$lt_variables_saved_for_relink # Do we need the "lib" prefix for modules? need_lib_prefix=$need_lib_prefix # Do we need a version for libraries? need_version=$need_version # Library versioning type. version_type=$version_type # Shared library runtime path variable. runpath_var=$runpath_var # Shared library path variable. shlibpath_var=$shlibpath_var # Is shlibpath searched before the hard-coded library search path? shlibpath_overrides_runpath=$shlibpath_overrides_runpath # Format of library name prefix. libname_spec=$lt_libname_spec # List of archive names. First name is the real one, the rest are links. # The last name is the one that the linker finds with -lNAME library_names_spec=$lt_library_names_spec # The coded name of the library, if different from the real name. soname_spec=$lt_soname_spec # Permission mode override for installation of shared libraries. install_override_mode=$lt_install_override_mode # Command to use after installation of a shared archive. postinstall_cmds=$lt_postinstall_cmds # Command to use after uninstallation of a shared archive. postuninstall_cmds=$lt_postuninstall_cmds # Commands used to finish a libtool library installation in a directory. finish_cmds=$lt_finish_cmds # As "finish_cmds", except a single script fragment to be evaled but # not shown. finish_eval=$lt_finish_eval # Whether we should hardcode library paths into libraries. hardcode_into_libs=$hardcode_into_libs # Compile-time system search path for libraries. sys_lib_search_path_spec=$lt_sys_lib_search_path_spec # Detected run-time system search path for libraries. sys_lib_dlsearch_path_spec=$lt_configure_time_dlsearch_path # Explicit LT_SYS_LIBRARY_PATH set during ./configure time. configure_time_lt_sys_library_path=$lt_configure_time_lt_sys_library_path # Whether dlopen is supported. dlopen_support=$enable_dlopen # Whether dlopen of programs is supported. dlopen_self=$enable_dlopen_self # Whether dlopen of statically linked programs is supported. dlopen_self_static=$enable_dlopen_self_static # Commands to strip libraries. old_striplib=$lt_old_striplib striplib=$lt_striplib # The linker used to build libraries. LD=$lt_LD # How to create reloadable object files. reload_flag=$lt_reload_flag reload_cmds=$lt_reload_cmds # Commands used to build an old-style archive. old_archive_cmds=$lt_old_archive_cmds # A language specific compiler. CC=$lt_compiler # Is the compiler the GNU compiler? with_gcc=$GCC # Compiler flag to turn off builtin functions. no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag # Additional compiler flags for building library objects. pic_flag=$lt_lt_prog_compiler_pic # How to pass a linker flag through the compiler. wl=$lt_lt_prog_compiler_wl # Compiler flag to prevent dynamic linking. link_static_flag=$lt_lt_prog_compiler_static # Does compiler simultaneously support -c and -o options? compiler_c_o=$lt_lt_cv_prog_compiler_c_o # Whether or not to add -lc for building shared libraries. build_libtool_need_lc=$archive_cmds_need_lc # Whether or not to disallow shared libs when runtime libs are static. allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes # Compiler flag to allow reflexive dlopens. export_dynamic_flag_spec=$lt_export_dynamic_flag_spec # Compiler flag to generate shared objects directly from archives. whole_archive_flag_spec=$lt_whole_archive_flag_spec # Whether the compiler copes with passing no objects directly. compiler_needs_object=$lt_compiler_needs_object # Create an old-style archive from a shared archive. old_archive_from_new_cmds=$lt_old_archive_from_new_cmds # Create a temporary old-style archive to link instead of a shared archive. old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds # Commands used to build a shared archive. archive_cmds=$lt_archive_cmds archive_expsym_cmds=$lt_archive_expsym_cmds # Commands used to build a loadable module if different from building # a shared archive. module_cmds=$lt_module_cmds module_expsym_cmds=$lt_module_expsym_cmds # Whether we are building with GNU ld or not. with_gnu_ld=$lt_with_gnu_ld # Flag that allows shared libraries with undefined symbols to be built. allow_undefined_flag=$lt_allow_undefined_flag # Flag that enforces no undefined symbols. no_undefined_flag=$lt_no_undefined_flag # Flag to hardcode \$libdir into a binary during linking. # This must work even if \$libdir does not exist hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec # Whether we need a single "-rpath" flag with a separated argument. hardcode_libdir_separator=$lt_hardcode_libdir_separator # Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes # DIR into the resulting binary. hardcode_direct=$hardcode_direct # Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes # DIR into the resulting binary and the resulting library dependency is # "absolute",i.e impossible to change by setting \$shlibpath_var if the # library is relocated. hardcode_direct_absolute=$hardcode_direct_absolute # Set to "yes" if using the -LDIR flag during linking hardcodes DIR # into the resulting binary. hardcode_minus_L=$hardcode_minus_L # Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR # into the resulting binary. hardcode_shlibpath_var=$hardcode_shlibpath_var # Set to "yes" if building a shared library automatically hardcodes DIR # into the library and all subsequent libraries and executables linked # against it. hardcode_automatic=$hardcode_automatic # Set to yes if linker adds runtime paths of dependent libraries # to runtime path list. inherit_rpath=$inherit_rpath # Whether libtool must link a program against all its dependency libraries. link_all_deplibs=$link_all_deplibs # Set to "yes" if exported symbols are required. always_export_symbols=$always_export_symbols # The commands to list exported symbols. export_symbols_cmds=$lt_export_symbols_cmds # Symbols that should not be listed in the preloaded symbols. exclude_expsyms=$lt_exclude_expsyms # Symbols that must always be exported. include_expsyms=$lt_include_expsyms # Commands necessary for linking programs (against libraries) with templates. prelink_cmds=$lt_prelink_cmds # Commands necessary for finishing linking programs. postlink_cmds=$lt_postlink_cmds # Specify filename containing input files. file_list_spec=$lt_file_list_spec # How to hardcode a shared library path into an executable. hardcode_action=$hardcode_action # ### END LIBTOOL CONFIG _LT_EOF cat <<'_LT_EOF' >> "$cfgfile" # ### BEGIN FUNCTIONS SHARED WITH CONFIGURE # func_munge_path_list VARIABLE PATH # ----------------------------------- # VARIABLE is name of variable containing _space_ separated list of # directories to be munged by the contents of PATH, which is string # having a format: # "DIR[:DIR]:" # string "DIR[ DIR]" will be prepended to VARIABLE # ":DIR[:DIR]" # string "DIR[ DIR]" will be appended to VARIABLE # "DIRP[:DIRP]::[DIRA:]DIRA" # string "DIRP[ DIRP]" will be prepended to VARIABLE and string # "DIRA[ DIRA]" will be appended to VARIABLE # "DIR[:DIR]" # VARIABLE will be replaced by "DIR[ DIR]" func_munge_path_list () { case x$2 in x) ;; *:) eval $1=\"`$ECHO $2 | $SED 's/:/ /g'` \$$1\" ;; x:*) eval $1=\"\$$1 `$ECHO $2 | $SED 's/:/ /g'`\" ;; *::*) eval $1=\"\$$1\ `$ECHO $2 | $SED -e 's/.*:://' -e 's/:/ /g'`\" eval $1=\"`$ECHO $2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \$$1\" ;; *) eval $1=\"`$ECHO $2 | $SED 's/:/ /g'`\" ;; esac } # Calculate cc_basename. Skip known compiler wrappers and cross-prefix. func_cc_basename () { for cc_temp in $*""; do case $cc_temp in compile | *[\\/]compile | ccache | *[\\/]ccache ) ;; distcc | *[\\/]distcc | purify | *[\\/]purify ) ;; \-*) ;; *) break;; esac done func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` } # ### END FUNCTIONS SHARED WITH CONFIGURE _LT_EOF case $host_os in aix3*) cat <<\_LT_EOF >> "$cfgfile" # AIX sometimes has problems with the GCC collect2 program. For some # reason, if we set the COLLECT_NAMES environment variable, the problems # vanish in a puff of smoke. if test set != "${COLLECT_NAMES+set}"; then COLLECT_NAMES= export COLLECT_NAMES fi _LT_EOF ;; esac ltmain=$ac_aux_dir/ltmain.sh # We use sed instead of cat because bash on DJGPP gets confused if # if finds mixed CR/LF and LF-only lines. Since sed operates in # text mode, it properly converts lines to CR/LF. This bash problem # is reportedly fixed, but why not run on old versions too? sed '$q' "$ltmain" >> "$cfgfile" \ || (rm -f "$cfgfile"; exit 1) mv -f "$cfgfile" "$ofile" || (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") chmod +x "$ofile" ;; esac done # for ac_tag as_fn_exit 0 _ACEOF ac_clean_files=$ac_clean_files_save test $ac_write_fail = 0 || as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5 # configure is writing to config.log, and then calls config.status. # config.status does its own redirection, appending to config.log. # Unfortunately, on DOS this fails, as config.log is still kept open # by configure, so config.status won't be able to write to it; its # output is simply discarded. So we exec the FD to /dev/null, # effectively closing config.log, so it can be properly (re)opened and # appended to by config.status. When coming back to configure, we # need to make the FD available again. if test "$no_create" != yes; then ac_cs_success=: ac_config_status_args= test "$silent" = yes && ac_config_status_args="$ac_config_status_args --quiet" exec 5>/dev/null $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false exec 5>>config.log # Use ||, not &&, to avoid exiting from the if with $? = 1, which # would make configure fail if this is the last instruction. $ac_cs_success || as_fn_exit 1 fi if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5 $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} fi unicode-screensaver-0.5.1/compile0000755000175000017500000001624513306043307013767 00000000000000#! /bin/sh # Wrapper for compilers which do not understand '-c -o'. scriptversion=2012-10-14.11; # UTC # Copyright (C) 1999-2014 Free Software Foundation, Inc. # Written by Tom Tromey . # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2, or (at your option) # any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see . # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. # This file is maintained in Automake, please report # bugs to or send patches to # . nl=' ' # We need space, tab and new line, in precisely that order. Quoting is # there to prevent tools from complaining about whitespace usage. IFS=" "" $nl" file_conv= # func_file_conv build_file lazy # Convert a $build file to $host form and store it in $file # Currently only supports Windows hosts. If the determined conversion # type is listed in (the comma separated) LAZY, no conversion will # take place. func_file_conv () { file=$1 case $file in / | /[!/]*) # absolute file, and not a UNC file if test -z "$file_conv"; then # lazily determine how to convert abs files case `uname -s` in MINGW*) file_conv=mingw ;; CYGWIN*) file_conv=cygwin ;; *) file_conv=wine ;; esac fi case $file_conv/,$2, in *,$file_conv,*) ;; mingw/*) file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'` ;; cygwin/*) file=`cygpath -m "$file" || echo "$file"` ;; wine/*) file=`winepath -w "$file" || echo "$file"` ;; esac ;; esac } # func_cl_dashL linkdir # Make cl look for libraries in LINKDIR func_cl_dashL () { func_file_conv "$1" if test -z "$lib_path"; then lib_path=$file else lib_path="$lib_path;$file" fi linker_opts="$linker_opts -LIBPATH:$file" } # func_cl_dashl library # Do a library search-path lookup for cl func_cl_dashl () { lib=$1 found=no save_IFS=$IFS IFS=';' for dir in $lib_path $LIB do IFS=$save_IFS if $shared && test -f "$dir/$lib.dll.lib"; then found=yes lib=$dir/$lib.dll.lib break fi if test -f "$dir/$lib.lib"; then found=yes lib=$dir/$lib.lib break fi if test -f "$dir/lib$lib.a"; then found=yes lib=$dir/lib$lib.a break fi done IFS=$save_IFS if test "$found" != yes; then lib=$lib.lib fi } # func_cl_wrapper cl arg... # Adjust compile command to suit cl func_cl_wrapper () { # Assume a capable shell lib_path= shared=: linker_opts= for arg do if test -n "$eat"; then eat= else case $1 in -o) # configure might choose to run compile as 'compile cc -o foo foo.c'. eat=1 case $2 in *.o | *.[oO][bB][jJ]) func_file_conv "$2" set x "$@" -Fo"$file" shift ;; *) func_file_conv "$2" set x "$@" -Fe"$file" shift ;; esac ;; -I) eat=1 func_file_conv "$2" mingw set x "$@" -I"$file" shift ;; -I*) func_file_conv "${1#-I}" mingw set x "$@" -I"$file" shift ;; -l) eat=1 func_cl_dashl "$2" set x "$@" "$lib" shift ;; -l*) func_cl_dashl "${1#-l}" set x "$@" "$lib" shift ;; -L) eat=1 func_cl_dashL "$2" ;; -L*) func_cl_dashL "${1#-L}" ;; -static) shared=false ;; -Wl,*) arg=${1#-Wl,} save_ifs="$IFS"; IFS=',' for flag in $arg; do IFS="$save_ifs" linker_opts="$linker_opts $flag" done IFS="$save_ifs" ;; -Xlinker) eat=1 linker_opts="$linker_opts $2" ;; -*) set x "$@" "$1" shift ;; *.cc | *.CC | *.cxx | *.CXX | *.[cC]++) func_file_conv "$1" set x "$@" -Tp"$file" shift ;; *.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO]) func_file_conv "$1" mingw set x "$@" "$file" shift ;; *) set x "$@" "$1" shift ;; esac fi shift done if test -n "$linker_opts"; then linker_opts="-link$linker_opts" fi exec "$@" $linker_opts exit 1 } eat= case $1 in '') echo "$0: No command. Try '$0 --help' for more information." 1>&2 exit 1; ;; -h | --h*) cat <<\EOF Usage: compile [--help] [--version] PROGRAM [ARGS] Wrapper for compilers which do not understand '-c -o'. Remove '-o dest.o' from ARGS, run PROGRAM with the remaining arguments, and rename the output as expected. If you are trying to build a whole package this is not the right script to run: please start by reading the file 'INSTALL'. Report bugs to . EOF exit $? ;; -v | --v*) echo "compile $scriptversion" exit $? ;; cl | *[/\\]cl | cl.exe | *[/\\]cl.exe ) func_cl_wrapper "$@" # Doesn't return... ;; esac ofile= cfile= for arg do if test -n "$eat"; then eat= else case $1 in -o) # configure might choose to run compile as 'compile cc -o foo foo.c'. # So we strip '-o arg' only if arg is an object. eat=1 case $2 in *.o | *.obj) ofile=$2 ;; *) set x "$@" -o "$2" shift ;; esac ;; *.c) cfile=$1 set x "$@" "$1" shift ;; *) set x "$@" "$1" shift ;; esac fi shift done if test -z "$ofile" || test -z "$cfile"; then # If no '-o' option was seen then we might have been invoked from a # pattern rule where we don't need one. That is ok -- this is a # normal compilation that the losing compiler can handle. If no # '.c' file was seen then we are probably linking. That is also # ok. exec "$@" fi # Name of file we expect compiler to create. cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'` # Create the lock directory. # Note: use '[/\\:.-]' here to ensure that we don't use the same name # that we are using for the .o file. Also, base the name on the expected # object file name, since that is what matters with a parallel build. lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d while true; do if mkdir "$lockdir" >/dev/null 2>&1; then break fi sleep 1 done # FIXME: race condition here if user kills between mkdir and trap. trap "rmdir '$lockdir'; exit 1" 1 2 15 # Run the compile. "$@" ret=$? if test -f "$cofile"; then test "$cofile" = "$ofile" || mv "$cofile" "$ofile" elif test -f "${cofile}bj"; then test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile" fi rmdir "$lockdir" exit $ret # Local Variables: # mode: shell-script # sh-indentation: 2 # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-time-zone: "UTC" # time-stamp-end: "; # UTC" # End: unicode-screensaver-0.5.1/missing0000755000175000017500000001533013306043307014002 00000000000000#! /bin/sh # Common wrapper for a few potentially missing GNU programs. scriptversion=2013-10-28.13; # UTC # Copyright (C) 1996-2014 Free Software Foundation, Inc. # Originally written by Fran,cois Pinard , 1996. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2, or (at your option) # any later version. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # You should have received a copy of the GNU General Public License # along with this program. If not, see . # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. if test $# -eq 0; then echo 1>&2 "Try '$0 --help' for more information" exit 1 fi case $1 in --is-lightweight) # Used by our autoconf macros to check whether the available missing # script is modern enough. exit 0 ;; --run) # Back-compat with the calling convention used by older automake. shift ;; -h|--h|--he|--hel|--help) echo "\ $0 [OPTION]... PROGRAM [ARGUMENT]... Run 'PROGRAM [ARGUMENT]...', returning a proper advice when this fails due to PROGRAM being missing or too old. Options: -h, --help display this help and exit -v, --version output version information and exit Supported PROGRAM values: aclocal autoconf autoheader autom4te automake makeinfo bison yacc flex lex help2man Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and 'g' are ignored when checking the name. Send bug reports to ." exit $? ;; -v|--v|--ve|--ver|--vers|--versi|--versio|--version) echo "missing $scriptversion (GNU Automake)" exit $? ;; -*) echo 1>&2 "$0: unknown '$1' option" echo 1>&2 "Try '$0 --help' for more information" exit 1 ;; esac # Run the given program, remember its exit status. "$@"; st=$? # If it succeeded, we are done. test $st -eq 0 && exit 0 # Also exit now if we it failed (or wasn't found), and '--version' was # passed; such an option is passed most likely to detect whether the # program is present and works. case $2 in --version|--help) exit $st;; esac # Exit code 63 means version mismatch. This often happens when the user # tries to use an ancient version of a tool on a file that requires a # minimum version. if test $st -eq 63; then msg="probably too old" elif test $st -eq 127; then # Program was missing. msg="missing on your system" else # Program was found and executed, but failed. Give up. exit $st fi perl_URL=http://www.perl.org/ flex_URL=http://flex.sourceforge.net/ gnu_software_URL=http://www.gnu.org/software program_details () { case $1 in aclocal|automake) echo "The '$1' program is part of the GNU Automake package:" echo "<$gnu_software_URL/automake>" echo "It also requires GNU Autoconf, GNU m4 and Perl in order to run:" echo "<$gnu_software_URL/autoconf>" echo "<$gnu_software_URL/m4/>" echo "<$perl_URL>" ;; autoconf|autom4te|autoheader) echo "The '$1' program is part of the GNU Autoconf package:" echo "<$gnu_software_URL/autoconf/>" echo "It also requires GNU m4 and Perl in order to run:" echo "<$gnu_software_URL/m4/>" echo "<$perl_URL>" ;; esac } give_advice () { # Normalize program name to check for. normalized_program=`echo "$1" | sed ' s/^gnu-//; t s/^gnu//; t s/^g//; t'` printf '%s\n' "'$1' is $msg." configure_deps="'configure.ac' or m4 files included by 'configure.ac'" case $normalized_program in autoconf*) echo "You should only need it if you modified 'configure.ac'," echo "or m4 files included by it." program_details 'autoconf' ;; autoheader*) echo "You should only need it if you modified 'acconfig.h' or" echo "$configure_deps." program_details 'autoheader' ;; automake*) echo "You should only need it if you modified 'Makefile.am' or" echo "$configure_deps." program_details 'automake' ;; aclocal*) echo "You should only need it if you modified 'acinclude.m4' or" echo "$configure_deps." program_details 'aclocal' ;; autom4te*) echo "You might have modified some maintainer files that require" echo "the 'autom4te' program to be rebuilt." program_details 'autom4te' ;; bison*|yacc*) echo "You should only need it if you modified a '.y' file." echo "You may want to install the GNU Bison package:" echo "<$gnu_software_URL/bison/>" ;; lex*|flex*) echo "You should only need it if you modified a '.l' file." echo "You may want to install the Fast Lexical Analyzer package:" echo "<$flex_URL>" ;; help2man*) echo "You should only need it if you modified a dependency" \ "of a man page." echo "You may want to install the GNU Help2man package:" echo "<$gnu_software_URL/help2man/>" ;; makeinfo*) echo "You should only need it if you modified a '.texi' file, or" echo "any other file indirectly affecting the aspect of the manual." echo "You might want to install the Texinfo package:" echo "<$gnu_software_URL/texinfo/>" echo "The spurious makeinfo call might also be the consequence of" echo "using a buggy 'make' (AIX, DU, IRIX), in which case you might" echo "want to install GNU make:" echo "<$gnu_software_URL/make/>" ;; *) echo "You might have modified some files without having the proper" echo "tools for further handling them. Check the 'README' file, it" echo "often tells you about the needed prerequisites for installing" echo "this package. You may also peek at any GNU archive site, in" echo "case some other package contains this missing '$1' program." ;; esac } give_advice "$1" | sed -e '1s/^/WARNING: /' \ -e '2,$s/^/ /' >&2 # Propagate the correct exit status (expected to be 127 for a program # not found, 63 for a program that failed due to version mismatch). exit $st # Local variables: # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-time-zone: "UTC" # time-stamp-end: "; # UTC" # End: unicode-screensaver-0.5.1/unicode.6x.in0000644000175000017500000000411212610253455014715 00000000000000.TH unicode-screensaver 6x "Version @version@" "X Version 11" "unicode-screensaver manual" .SH NAME unicode - displays unicode characters .SH SYNOPSIS .B unicode [\-display \fIhost:display.screen\fP] [\-visual \fIvisual\fP] [\-window] [\-root] [\-fps] [\-delay \fIseconds\fP] [\-font \fIfont\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] .SH DESCRIPTION unicode-screensaver is a simple screensaver application that repeatedly randomly picks an unicode character and displays it in a very large font size together with its unicode code point and the character name. .SH OPTIONS .TP 8 .B \-visual \fIvisual\fP Specify which visual to use. Legal values are the name of a visual class, or the id number (decimal or hex) of a specific visual. .TP 8 .B \-window Draw on a newly-created window. This is the default. .TP 8 .B \-root Draw on the root window. .TP 8 .B \-fps Display the current frame rate and CPU load. .TP 8 .B \-delay Specify the delay in seconds before switching to a new character. Defaults to seven seconds. .TP 8 .B \-font Try the given font in addition to the built-in fonts (Open Symbol, and FreeSans). .TP 8 .B \-background Set the background color (e.g. black, white, green, red). The default is white. .TP 8 .B \-foreground Set the font color (e.g. black, white, green, red). The default is black. .SH ENVIRONMENT .PP .TP 8 .B DISPLAY to get the default host and display number. .TP 8 .B XENVIRONMENT to get the name of a resource file that overrides the global resources stored in the RESOURCE_MANAGER property. .SH SEE ALSO .BR X (1), .BR xscreensaver (1) .SH COPYRIGHT Copyright \(co 2009 by Joachim Breitner. Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation. No representations are made about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty. .SH AUTHOR Joachim Breitner unicode-screensaver-0.5.1/unicode-names.h0000644000175000017500000462451612523334521015324 00000000000000/* unicode-names.h */ /* Modified for uincode-screensaver to get rid of glib dependencies */ /* THIS IS A GENERATED FILE. CHANGES WILL BE OVERWRITTEN. */ /* Generated by ./gen-guch-unicode-tables.pl */ /* Generated from UCD version 6.0.0 */ #ifndef UNICODE_NAMES_H #define UNICODE_NAMES_H static const char unicode_names_strings[] = \ "\0" "\0" "\0" "\0" "\0" "\0" "\0" "\0" "\0" "\0" "\0" "\0" "\0" "\0" "\0" "\0" "\0" "\0" "\0" "\0" "\0" "\0" "\0" "\0" "\0" "AC CURRENT\0" "ACCOUNT OF\0" "ACTIVATE ARABIC FORM SHAPING\0" "ACTIVATE SYMMETRIC SWAPPING\0" "ACUTE ACCENT\0" "ACUTE ANGLE\0" "ADDRESSED TO THE SUBJECT\0" "ADI SHAKTI\0" "AEGEAN CHECK MARK\0" "AEGEAN DRY MEASURE FIRST SUBUNIT\0" "AEGEAN LIQUID MEASURE FIRST SUBUNIT\0" "AEGEAN MEASURE SECOND SUBUNIT\0" "AEGEAN MEASURE THIRD SUBUNIT\0" "AEGEAN NUMBER EIGHT\0" "AEGEAN NUMBER EIGHT HUNDRED\0" "AEGEAN NUMBER EIGHT THOUSAND\0" "AEGEAN NUMBER EIGHTY\0" "AEGEAN NUMBER EIGHTY THOUSAND\0" "AEGEAN NUMBER FIFTY\0" "AEGEAN NUMBER FIFTY THOUSAND\0" "AEGEAN NUMBER FIVE\0" "AEGEAN NUMBER FIVE HUNDRED\0" "AEGEAN NUMBER FIVE THOUSAND\0" "AEGEAN NUMBER FORTY\0" "AEGEAN NUMBER FORTY THOUSAND\0" "AEGEAN NUMBER FOUR\0" "AEGEAN NUMBER FOUR HUNDRED\0" "AEGEAN NUMBER FOUR THOUSAND\0" "AEGEAN NUMBER NINE\0" "AEGEAN NUMBER NINE HUNDRED\0" "AEGEAN NUMBER NINE THOUSAND\0" "AEGEAN NUMBER NINETY\0" "AEGEAN NUMBER NINETY THOUSAND\0" "AEGEAN NUMBER ONE\0" "AEGEAN NUMBER ONE HUNDRED\0" "AEGEAN NUMBER ONE THOUSAND\0" "AEGEAN NUMBER SEVEN\0" "AEGEAN NUMBER SEVEN HUNDRED\0" "AEGEAN NUMBER SEVEN THOUSAND\0" "AEGEAN NUMBER SEVENTY\0" "AEGEAN NUMBER SEVENTY THOUSAND\0" "AEGEAN NUMBER SIX\0" "AEGEAN NUMBER SIX HUNDRED\0" "AEGEAN NUMBER SIX THOUSAND\0" "AEGEAN NUMBER SIXTY\0" "AEGEAN NUMBER SIXTY THOUSAND\0" "AEGEAN NUMBER TEN\0" "AEGEAN NUMBER TEN THOUSAND\0" "AEGEAN NUMBER THIRTY\0" "AEGEAN NUMBER THIRTY THOUSAND\0" "AEGEAN NUMBER THREE\0" "AEGEAN NUMBER THREE HUNDRED\0" "AEGEAN NUMBER THREE THOUSAND\0" "AEGEAN NUMBER TWENTY\0" "AEGEAN NUMBER TWENTY THOUSAND\0" "AEGEAN NUMBER TWO\0" "AEGEAN NUMBER TWO HUNDRED\0" "AEGEAN NUMBER TWO THOUSAND\0" "AEGEAN WEIGHT BASE UNIT\0" "AEGEAN WEIGHT FIRST SUBUNIT\0" "AEGEAN WEIGHT FOURTH SUBUNIT\0" "AEGEAN WEIGHT SECOND SUBUNIT\0" "AEGEAN WEIGHT THIRD SUBUNIT\0" "AEGEAN WORD SEPARATOR DOT\0" "AEGEAN WORD SEPARATOR LINE\0" "AERIAL TRAMWAY\0" "AFGHANI SIGN\0" "AIRPLANE\0" "AKTIESELSKAB\0" "ALARM CLOCK\0" "ALCHEMICAL SYMBOL FOR AIR\0" "ALCHEMICAL SYMBOL FOR ALEMBIC\0" "ALCHEMICAL SYMBOL FOR ALKALI\0" "ALCHEMICAL SYMBOL FOR ALKALI-2\0" "ALCHEMICAL SYMBOL FOR ALUM\0" "ALCHEMICAL SYMBOL FOR AMALGAM\0" "ALCHEMICAL SYMBOL FOR ANTIMONY ORE\0" "ALCHEMICAL SYMBOL FOR AQUA REGIA\0" "ALCHEMICAL SYMBOL FOR AQUA REGIA-2\0" "ALCHEMICAL SYMBOL FOR AQUA VITAE\0" "ALCHEMICAL SYMBOL FOR AQUA VITAE-2\0" "ALCHEMICAL SYMBOL FOR AQUAFORTIS\0" "ALCHEMICAL SYMBOL FOR ARSENIC\0" "ALCHEMICAL SYMBOL FOR ASHES\0" "ALCHEMICAL SYMBOL FOR AURIPIGMENT\0" "ALCHEMICAL SYMBOL FOR BATH OF MARY\0" "ALCHEMICAL SYMBOL FOR BATH OF VAPOURS\0" "ALCHEMICAL SYMBOL FOR BISMUTH ORE\0" "ALCHEMICAL SYMBOL FOR BLACK SULFUR\0" "ALCHEMICAL SYMBOL FOR BORAX\0" "ALCHEMICAL SYMBOL FOR BORAX-2\0" "ALCHEMICAL SYMBOL FOR BORAX-3\0" "ALCHEMICAL SYMBOL FOR BRICK\0" "ALCHEMICAL SYMBOL FOR CADUCEUS\0" "ALCHEMICAL SYMBOL FOR CALX\0" "ALCHEMICAL SYMBOL FOR CAPUT MORTUUM\0" "ALCHEMICAL SYMBOL FOR CINNABAR\0" "ALCHEMICAL SYMBOL FOR COPPER ANTIMONIATE\0" "ALCHEMICAL SYMBOL FOR COPPER ORE\0" "ALCHEMICAL SYMBOL FOR CROCUS OF COPPER\0" "ALCHEMICAL SYMBOL FOR CROCUS OF COPPER-2\0" "ALCHEMICAL SYMBOL FOR CROCUS OF IRON\0" "ALCHEMICAL SYMBOL FOR CRUCIBLE\0" "ALCHEMICAL SYMBOL FOR CRUCIBLE-2\0" "ALCHEMICAL SYMBOL FOR CRUCIBLE-3\0" "ALCHEMICAL SYMBOL FOR CRUCIBLE-4\0" "ALCHEMICAL SYMBOL FOR CRUCIBLE-5\0" "ALCHEMICAL SYMBOL FOR DAY-NIGHT\0" "ALCHEMICAL SYMBOL FOR DISSOLVE\0" "ALCHEMICAL SYMBOL FOR DISSOLVE-2\0" "ALCHEMICAL SYMBOL FOR DISTILL\0" "ALCHEMICAL SYMBOL FOR EARTH\0" "ALCHEMICAL SYMBOL FOR FIRE\0" "ALCHEMICAL SYMBOL FOR GOLD\0" "ALCHEMICAL SYMBOL FOR GUM\0" "ALCHEMICAL SYMBOL FOR HALF DRAM\0" "ALCHEMICAL SYMBOL FOR HALF OUNCE\0" "ALCHEMICAL SYMBOL FOR HORSE DUNG\0" "ALCHEMICAL SYMBOL FOR HOUR\0" "ALCHEMICAL SYMBOL FOR IRON ORE\0" "ALCHEMICAL SYMBOL FOR IRON ORE-2\0" "ALCHEMICAL SYMBOL FOR IRON-COPPER ORE\0" "ALCHEMICAL SYMBOL FOR LEAD ORE\0" "ALCHEMICAL SYMBOL FOR LODESTONE\0" "ALCHEMICAL SYMBOL FOR MARCASITE\0" "ALCHEMICAL SYMBOL FOR MERCURY SUBLIMATE\0" "ALCHEMICAL SYMBOL FOR MERCURY SUBLIMATE-2\0" "ALCHEMICAL SYMBOL FOR MERCURY SUBLIMATE-3\0" "ALCHEMICAL SYMBOL FOR MONTH\0" "ALCHEMICAL SYMBOL FOR NIGHT\0" "ALCHEMICAL SYMBOL FOR NITRE\0" "ALCHEMICAL SYMBOL FOR OIL\0" "ALCHEMICAL SYMBOL FOR PHILOSOPHERS SULFUR\0" "ALCHEMICAL SYMBOL FOR POT ASHES\0" "ALCHEMICAL SYMBOL FOR POWDER\0" "ALCHEMICAL SYMBOL FOR POWDERED BRICK\0" "ALCHEMICAL SYMBOL FOR PRECIPITATE\0" "ALCHEMICAL SYMBOL FOR PURIFY\0" "ALCHEMICAL SYMBOL FOR PUTREFACTION\0" "ALCHEMICAL SYMBOL FOR QUICK LIME\0" "ALCHEMICAL SYMBOL FOR QUINTESSENCE\0" "ALCHEMICAL SYMBOL FOR REALGAR\0" "ALCHEMICAL SYMBOL FOR REALGAR-2\0" "ALCHEMICAL SYMBOL FOR REGULUS\0" "ALCHEMICAL SYMBOL FOR REGULUS OF ANTIMONY\0" "ALCHEMICAL SYMBOL FOR REGULUS OF ANTIMONY-2\0" "ALCHEMICAL SYMBOL FOR REGULUS OF IRON\0" "ALCHEMICAL SYMBOL FOR REGULUS-2\0" "ALCHEMICAL SYMBOL FOR REGULUS-3\0" "ALCHEMICAL SYMBOL FOR REGULUS-4\0" "ALCHEMICAL SYMBOL FOR RETORT\0" "ALCHEMICAL SYMBOL FOR ROCK SALT\0" "ALCHEMICAL SYMBOL FOR ROCK SALT-2\0" "ALCHEMICAL SYMBOL FOR SAL-AMMONIAC\0" "ALCHEMICAL SYMBOL FOR SALT\0" "ALCHEMICAL SYMBOL FOR SALT OF ANTIMONY\0" "ALCHEMICAL SYMBOL FOR SALT OF COPPER ANTIMONIATE\0" "ALCHEMICAL SYMBOL FOR SCEPTER OF JOVE\0" "ALCHEMICAL SYMBOL FOR SILVER\0" "ALCHEMICAL SYMBOL FOR SOAP\0" "ALCHEMICAL SYMBOL FOR SPIRIT\0" "ALCHEMICAL SYMBOL FOR STARRED TRIDENT\0" "ALCHEMICAL SYMBOL FOR STRATUM SUPER STRATUM\0" "ALCHEMICAL SYMBOL FOR STRATUM SUPER STRATUM-2\0" "ALCHEMICAL SYMBOL FOR SUBLIMATE OF ANTIMONY\0" "ALCHEMICAL SYMBOL FOR SUBLIMATE OF COPPER\0" "ALCHEMICAL SYMBOL FOR SUBLIMATE OF SALT OF ANTIMONY\0" "ALCHEMICAL SYMBOL FOR SUBLIMATE OF SALT OF COPPER\0" "ALCHEMICAL SYMBOL FOR SUBLIMATION\0" "ALCHEMICAL SYMBOL FOR SULFUR\0" "ALCHEMICAL SYMBOL FOR TARTAR\0" "ALCHEMICAL SYMBOL FOR TARTAR-2\0" "ALCHEMICAL SYMBOL FOR TIN ORE\0" "ALCHEMICAL SYMBOL FOR TINCTURE\0" "ALCHEMICAL SYMBOL FOR TRIDENT\0" "ALCHEMICAL SYMBOL FOR TUTTY\0" "ALCHEMICAL SYMBOL FOR URINE\0" "ALCHEMICAL SYMBOL FOR VERDIGRIS\0" "ALCHEMICAL SYMBOL FOR VINEGAR\0" "ALCHEMICAL SYMBOL FOR VINEGAR OF ANTIMONY\0" "ALCHEMICAL SYMBOL FOR VINEGAR-2\0" "ALCHEMICAL SYMBOL FOR VINEGAR-3\0" "ALCHEMICAL SYMBOL FOR VITRIOL\0" "ALCHEMICAL SYMBOL FOR VITRIOL-2\0" "ALCHEMICAL SYMBOL FOR WATER\0" "ALCHEMICAL SYMBOL FOR WAX\0" "ALEF SYMBOL\0" "ALEMBIC\0" "ALIEN MONSTER\0" "ALL AROUND-PROFILE\0" "ALL EQUAL TO\0" "ALMOST EQUAL OR EQUAL TO\0" "ALMOST EQUAL TO\0" "ALMOST EQUAL TO WITH CIRCUMFLEX ACCENT\0" "ALTERNATE ONE-WAY LEFT WAY TRAFFIC\0" "ALTERNATIVE KEY SYMBOL\0" "AMALGAMATION OR COPRODUCT\0" "AMBULANCE\0" "AMERICAN FOOTBALL\0" "AMPERSAND\0" "ANCHOR\0" "AND WITH DOT\0" "ANGER SYMBOL\0" "ANGLE\0" "ANGLE WITH S INSIDE\0" "ANGLE WITH UNDERBAR\0" "ANGRY FACE\0" "ANGSTROM SIGN\0" "ANKH\0" "ANT\0" "ANTENNA WITH BARS\0" "ANTICLOCKWISE CLOSED CIRCLE ARROW\0" "ANTICLOCKWISE CONTOUR INTEGRAL\0" "ANTICLOCKWISE DOWNWARDS AND UPWARDS OPEN CIRCLE ARROWS\0" "ANTICLOCKWISE GAPPED CIRCLE ARROW\0" "ANTICLOCKWISE INTEGRATION\0" "ANTICLOCKWISE OPEN CIRCLE ARROW\0" "ANTICLOCKWISE TOP SEMICIRCLE ARROW\0" "APL FUNCTIONAL SYMBOL ALPHA\0" "APL FUNCTIONAL SYMBOL ALPHA UNDERBAR\0" "APL FUNCTIONAL SYMBOL BACKSLASH BAR\0" "APL FUNCTIONAL SYMBOL CIRCLE BACKSLASH\0" "APL FUNCTIONAL SYMBOL CIRCLE DIAERESIS\0" "APL FUNCTIONAL SYMBOL CIRCLE JOT\0" "APL FUNCTIONAL SYMBOL CIRCLE STAR\0" "APL FUNCTIONAL SYMBOL CIRCLE STILE\0" "APL FUNCTIONAL SYMBOL CIRCLE UNDERBAR\0" "APL FUNCTIONAL SYMBOL COMMA BAR\0" "APL FUNCTIONAL SYMBOL DEL DIAERESIS\0" "APL FUNCTIONAL SYMBOL DEL STILE\0" "APL FUNCTIONAL SYMBOL DEL TILDE\0" "APL FUNCTIONAL SYMBOL DELTA STILE\0" "APL FUNCTIONAL SYMBOL DELTA UNDERBAR\0" "APL FUNCTIONAL SYMBOL DIAMOND UNDERBAR\0" "APL FUNCTIONAL SYMBOL DOWN CARET TILDE\0" "APL FUNCTIONAL SYMBOL DOWN SHOE STILE\0" "APL FUNCTIONAL SYMBOL DOWN TACK JOT\0" "APL FUNCTIONAL SYMBOL DOWN TACK UNDERBAR\0" "APL FUNCTIONAL SYMBOL DOWNWARDS VANE\0" "APL FUNCTIONAL SYMBOL EPSILON UNDERBAR\0" "APL FUNCTIONAL SYMBOL GREATER-THAN DIAERESIS\0" "APL FUNCTIONAL SYMBOL I-BEAM\0" "APL FUNCTIONAL SYMBOL IOTA\0" "APL FUNCTIONAL SYMBOL IOTA UNDERBAR\0" "APL FUNCTIONAL SYMBOL JOT DIAERESIS\0" "APL FUNCTIONAL SYMBOL JOT UNDERBAR\0" "APL FUNCTIONAL SYMBOL LEFT SHOE STILE\0" "APL FUNCTIONAL SYMBOL LEFTWARDS VANE\0" "APL FUNCTIONAL SYMBOL OMEGA\0" "APL FUNCTIONAL SYMBOL OMEGA UNDERBAR\0" "APL FUNCTIONAL SYMBOL QUAD\0" "APL FUNCTIONAL SYMBOL QUAD BACKSLASH\0" "APL FUNCTIONAL SYMBOL QUAD CIRCLE\0" "APL FUNCTIONAL SYMBOL QUAD COLON\0" "APL FUNCTIONAL SYMBOL QUAD DEL\0" "APL FUNCTIONAL SYMBOL QUAD DELTA\0" "APL FUNCTIONAL SYMBOL QUAD DIAMOND\0" "APL FUNCTIONAL SYMBOL QUAD DIVIDE\0" "APL FUNCTIONAL SYMBOL QUAD DOWN CARET\0" "APL FUNCTIONAL SYMBOL QUAD DOWNWARDS ARROW\0" "APL FUNCTIONAL SYMBOL QUAD EQUAL\0" "APL FUNCTIONAL SYMBOL QUAD GREATER-THAN\0" "APL FUNCTIONAL SYMBOL QUAD JOT\0" "APL FUNCTIONAL SYMBOL QUAD LEFTWARDS ARROW\0" "APL FUNCTIONAL SYMBOL QUAD LESS-THAN\0" "APL FUNCTIONAL SYMBOL QUAD NOT EQUAL\0" "APL FUNCTIONAL SYMBOL QUAD QUESTION\0" "APL FUNCTIONAL SYMBOL QUAD RIGHTWARDS ARROW\0" "APL FUNCTIONAL SYMBOL QUAD SLASH\0" "APL FUNCTIONAL SYMBOL QUAD UP CARET\0" "APL FUNCTIONAL SYMBOL QUAD UPWARDS ARROW\0" "APL FUNCTIONAL SYMBOL QUOTE QUAD\0" "APL FUNCTIONAL SYMBOL QUOTE UNDERBAR\0" "APL FUNCTIONAL SYMBOL RHO\0" "APL FUNCTIONAL SYMBOL RIGHTWARDS VANE\0" "APL FUNCTIONAL SYMBOL SEMICOLON UNDERBAR\0" "APL FUNCTIONAL SYMBOL SLASH BAR\0" "APL FUNCTIONAL SYMBOL SQUISH QUAD\0" "APL FUNCTIONAL SYMBOL STAR DIAERESIS\0" "APL FUNCTIONAL SYMBOL STILE TILDE\0" "APL FUNCTIONAL SYMBOL TILDE DIAERESIS\0" "APL FUNCTIONAL SYMBOL UP CARET TILDE\0" "APL FUNCTIONAL SYMBOL UP SHOE JOT\0" "APL FUNCTIONAL SYMBOL UP TACK DIAERESIS\0" "APL FUNCTIONAL SYMBOL UP TACK JOT\0" "APL FUNCTIONAL SYMBOL UP TACK OVERBAR\0" "APL FUNCTIONAL SYMBOL UPWARDS VANE\0" "APL FUNCTIONAL SYMBOL ZILDE\0" "APOSTROPHE\0" "APPROACHES THE LIMIT\0" "APPROXIMATELY BUT NOT ACTUALLY EQUAL TO\0" "APPROXIMATELY EQUAL OR EQUAL TO\0" "APPROXIMATELY EQUAL TO\0" "APPROXIMATELY EQUAL TO OR THE IMAGE OF\0" "AQUARIUS\0" "ARABIC COMMA\0" "ARABIC DAMMA\0" "ARABIC DAMMA ISOLATED FORM\0" "ARABIC DAMMA MEDIAL FORM\0" "ARABIC DAMMATAN\0" "ARABIC DAMMATAN ISOLATED FORM\0" "ARABIC DATE SEPARATOR\0" "ARABIC DECIMAL SEPARATOR\0" "ARABIC EMPTY CENTRE HIGH STOP\0" "ARABIC EMPTY CENTRE LOW STOP\0" "ARABIC END OF AYAH\0" "ARABIC FATHA\0" "ARABIC FATHA ISOLATED FORM\0" "ARABIC FATHA MEDIAL FORM\0" "ARABIC FATHA WITH TWO DOTS\0" "ARABIC FATHATAN\0" "ARABIC FATHATAN ISOLATED FORM\0" "ARABIC FIVE POINTED STAR\0" "ARABIC FOOTNOTE MARKER\0" "ARABIC FULL STOP\0" "ARABIC HAMZA ABOVE\0" "ARABIC HAMZA BELOW\0" "ARABIC INVERTED DAMMA\0" "ARABIC KASRA\0" "ARABIC KASRA ISOLATED FORM\0" "ARABIC KASRA MEDIAL FORM\0" "ARABIC KASRATAN\0" "ARABIC KASRATAN ISOLATED FORM\0" "ARABIC LETTER AE\0" "ARABIC LETTER AIN\0" "ARABIC LETTER AIN FINAL FORM\0" "ARABIC LETTER AIN INITIAL FORM\0" "ARABIC LETTER AIN ISOLATED FORM\0" "ARABIC LETTER AIN MEDIAL FORM\0" "ARABIC LETTER AIN WITH THREE DOTS ABOVE\0" "ARABIC LETTER AIN WITH THREE DOTS POINTING DOWNWARDS ABOVE\0" "ARABIC LETTER AIN WITH TWO DOTS ABOVE\0" "ARABIC LETTER AIN WITH TWO DOTS VERTICALLY ABOVE\0" "ARABIC LETTER ALEF\0" "ARABIC LETTER ALEF FINAL FORM\0" "ARABIC LETTER ALEF ISOLATED FORM\0" "ARABIC LETTER ALEF MAKSURA\0" "ARABIC LETTER ALEF MAKSURA FINAL FORM\0" "ARABIC LETTER ALEF MAKSURA ISOLATED FORM\0" "ARABIC LETTER ALEF WASLA\0" "ARABIC LETTER ALEF WASLA FINAL FORM\0" "ARABIC LETTER ALEF WASLA ISOLATED FORM\0" "ARABIC LETTER ALEF WITH EXTENDED ARABIC-INDIC DIGIT THREE ABOVE\0" "ARABIC LETTER ALEF WITH EXTENDED ARABIC-INDIC DIGIT TWO ABOVE\0" "ARABIC LETTER ALEF WITH HAMZA ABOVE\0" "ARABIC LETTER ALEF WITH HAMZA ABOVE FINAL FORM\0" "ARABIC LETTER ALEF WITH HAMZA ABOVE ISOLATED FORM\0" "ARABIC LETTER ALEF WITH HAMZA BELOW\0" "ARABIC LETTER ALEF WITH HAMZA BELOW FINAL FORM\0" "ARABIC LETTER ALEF WITH HAMZA BELOW ISOLATED FORM\0" "ARABIC LETTER ALEF WITH MADDA ABOVE\0" "ARABIC LETTER ALEF WITH MADDA ABOVE FINAL FORM\0" "ARABIC LETTER ALEF WITH MADDA ABOVE ISOLATED FORM\0" "ARABIC LETTER ALEF WITH WAVY HAMZA ABOVE\0" "ARABIC LETTER ALEF WITH WAVY HAMZA BELOW\0" "ARABIC LETTER BEEH\0" "ARABIC LETTER BEEH FINAL FORM\0" "ARABIC LETTER BEEH INITIAL FORM\0" "ARABIC LETTER BEEH ISOLATED FORM\0" "ARABIC LETTER BEEH MEDIAL FORM\0" "ARABIC LETTER BEH\0" "ARABIC LETTER BEH FINAL FORM\0" "ARABIC LETTER BEH INITIAL FORM\0" "ARABIC LETTER BEH ISOLATED FORM\0" "ARABIC LETTER BEH MEDIAL FORM\0" "ARABIC LETTER BEH WITH DOT BELOW AND THREE DOTS ABOVE\0" "ARABIC LETTER BEH WITH INVERTED SMALL V BELOW\0" "ARABIC LETTER BEH WITH SMALL V\0" "ARABIC LETTER BEH WITH THREE DOTS HORIZONTALLY BELOW\0" "ARABIC LETTER BEH WITH THREE DOTS POINTING UPWARDS BELOW\0" "ARABIC LETTER BEH WITH THREE DOTS POINTING UPWARDS BELOW AND TWO DOTS ABOVE\0" "ARABIC LETTER BEH WITH TWO DOTS BELOW AND DOT ABOVE\0" "ARABIC LETTER BEHEH\0" "ARABIC LETTER BEHEH FINAL FORM\0" "ARABIC LETTER BEHEH INITIAL FORM\0" "ARABIC LETTER BEHEH ISOLATED FORM\0" "ARABIC LETTER BEHEH MEDIAL FORM\0" "ARABIC LETTER DAD\0" "ARABIC LETTER DAD FINAL FORM\0" "ARABIC LETTER DAD INITIAL FORM\0" "ARABIC LETTER DAD ISOLATED FORM\0" "ARABIC LETTER DAD MEDIAL FORM\0" "ARABIC LETTER DAD WITH DOT BELOW\0" "ARABIC LETTER DAHAL\0" "ARABIC LETTER DAHAL FINAL FORM\0" "ARABIC LETTER DAHAL ISOLATED FORM\0" "ARABIC LETTER DAL\0" "ARABIC LETTER DAL FINAL FORM\0" "ARABIC LETTER DAL ISOLATED FORM\0" "ARABIC LETTER DAL WITH DOT BELOW\0" "ARABIC LETTER DAL WITH DOT BELOW AND SMALL TAH\0" "ARABIC LETTER DAL WITH FOUR DOTS ABOVE\0" "ARABIC LETTER DAL WITH INVERTED SMALL V BELOW\0" "ARABIC LETTER DAL WITH INVERTED V\0" "ARABIC LETTER DAL WITH RING\0" "ARABIC LETTER DAL WITH THREE DOTS ABOVE DOWNWARDS\0" "ARABIC LETTER DAL WITH TWO DOTS VERTICALLY BELOW AND SMALL TAH\0" "ARABIC LETTER DDAHAL\0" "ARABIC LETTER DDAHAL FINAL FORM\0" "ARABIC LETTER DDAHAL ISOLATED FORM\0" "ARABIC LETTER DDAL\0" "ARABIC LETTER DDAL FINAL FORM\0" "ARABIC LETTER DDAL ISOLATED FORM\0" "ARABIC LETTER DOTLESS BEH\0" "ARABIC LETTER DOTLESS FEH\0" "ARABIC LETTER DOTLESS QAF\0" "ARABIC LETTER DUL\0" "ARABIC LETTER DUL FINAL FORM\0" "ARABIC LETTER DUL ISOLATED FORM\0" "ARABIC LETTER DYEH\0" "ARABIC LETTER DYEH FINAL FORM\0" "ARABIC LETTER DYEH INITIAL FORM\0" "ARABIC LETTER DYEH ISOLATED FORM\0" "ARABIC LETTER DYEH MEDIAL FORM\0" "ARABIC LETTER E\0" "ARABIC LETTER E FINAL FORM\0" "ARABIC LETTER E INITIAL FORM\0" "ARABIC LETTER E ISOLATED FORM\0" "ARABIC LETTER E MEDIAL FORM\0" "ARABIC LETTER FARSI YEH\0" "ARABIC LETTER FARSI YEH FINAL FORM\0" "ARABIC LETTER FARSI YEH INITIAL FORM\0" "ARABIC LETTER FARSI YEH ISOLATED FORM\0" "ARABIC LETTER FARSI YEH MEDIAL FORM\0" "ARABIC LETTER FARSI YEH WITH EXTENDED ARABIC-INDIC DIGIT FOUR BELOW\0" "ARABIC LETTER FARSI YEH WITH EXTENDED ARABIC-INDIC DIGIT THREE ABOVE\0" "ARABIC LETTER FARSI YEH WITH EXTENDED ARABIC-INDIC DIGIT TWO ABOVE\0" "ARABIC LETTER FARSI YEH WITH INVERTED V\0" "ARABIC LETTER FARSI YEH WITH THREE DOTS ABOVE\0" "ARABIC LETTER FARSI YEH WITH TWO DOTS ABOVE\0" "ARABIC LETTER FEH\0" "ARABIC LETTER FEH FINAL FORM\0" "ARABIC LETTER FEH INITIAL FORM\0" "ARABIC LETTER FEH ISOLATED FORM\0" "ARABIC LETTER FEH MEDIAL FORM\0" "ARABIC LETTER FEH WITH DOT BELOW\0" "ARABIC LETTER FEH WITH DOT MOVED BELOW\0" "ARABIC LETTER FEH WITH THREE DOTS BELOW\0" "ARABIC LETTER FEH WITH THREE DOTS POINTING UPWARDS BELOW\0" "ARABIC LETTER FEH WITH TWO DOTS BELOW\0" "ARABIC LETTER GAF\0" "ARABIC LETTER GAF FINAL FORM\0" "ARABIC LETTER GAF INITIAL FORM\0" "ARABIC LETTER GAF ISOLATED FORM\0" "ARABIC LETTER GAF MEDIAL FORM\0" "ARABIC LETTER GAF WITH RING\0" "ARABIC LETTER GAF WITH THREE DOTS ABOVE\0" "ARABIC LETTER GAF WITH TWO DOTS BELOW\0" "ARABIC LETTER GHAIN\0" "ARABIC LETTER GHAIN FINAL FORM\0" "ARABIC LETTER GHAIN INITIAL FORM\0" "ARABIC LETTER GHAIN ISOLATED FORM\0" "ARABIC LETTER GHAIN MEDIAL FORM\0" "ARABIC LETTER GHAIN WITH DOT BELOW\0" "ARABIC LETTER GUEH\0" "ARABIC LETTER GUEH FINAL FORM\0" "ARABIC LETTER GUEH INITIAL FORM\0" "ARABIC LETTER GUEH ISOLATED FORM\0" "ARABIC LETTER GUEH MEDIAL FORM\0" "ARABIC LETTER HAH\0" "ARABIC LETTER HAH FINAL FORM\0" "ARABIC LETTER HAH INITIAL FORM\0" "ARABIC LETTER HAH ISOLATED FORM\0" "ARABIC LETTER HAH MEDIAL FORM\0" "ARABIC LETTER HAH WITH EXTENDED ARABIC-INDIC DIGIT FOUR BELOW\0" "ARABIC LETTER HAH WITH HAMZA ABOVE\0" "ARABIC LETTER HAH WITH SMALL ARABIC LETTER TAH ABOVE\0" "ARABIC LETTER HAH WITH SMALL ARABIC LETTER TAH AND TWO DOTS\0" "ARABIC LETTER HAH WITH SMALL ARABIC LETTER TAH BELOW\0" "ARABIC LETTER HAH WITH THREE DOTS ABOVE\0" "ARABIC LETTER HAH WITH THREE DOTS POINTING UPWARDS BELOW\0" "ARABIC LETTER HAH WITH TWO DOTS ABOVE\0" "ARABIC LETTER HAH WITH TWO DOTS VERTICAL ABOVE\0" "ARABIC LETTER HAMZA\0" "ARABIC LETTER HAMZA ISOLATED FORM\0" "ARABIC LETTER HEH\0" "ARABIC LETTER HEH DOACHASHMEE\0" "ARABIC LETTER HEH DOACHASHMEE FINAL FORM\0" "ARABIC LETTER HEH DOACHASHMEE INITIAL FORM\0" "ARABIC LETTER HEH DOACHASHMEE ISOLATED FORM\0" "ARABIC LETTER HEH DOACHASHMEE MEDIAL FORM\0" "ARABIC LETTER HEH FINAL FORM\0" "ARABIC LETTER HEH GOAL\0" "ARABIC LETTER HEH GOAL FINAL FORM\0" "ARABIC LETTER HEH GOAL INITIAL FORM\0" "ARABIC LETTER HEH GOAL ISOLATED FORM\0" "ARABIC LETTER HEH GOAL MEDIAL FORM\0" "ARABIC LETTER HEH GOAL WITH HAMZA ABOVE\0" "ARABIC LETTER HEH INITIAL FORM\0" "ARABIC LETTER HEH ISOLATED FORM\0" "ARABIC LETTER HEH MEDIAL FORM\0" "ARABIC LETTER HEH WITH INVERTED V\0" "ARABIC LETTER HEH WITH YEH ABOVE\0" "ARABIC LETTER HEH WITH YEH ABOVE FINAL FORM\0" "ARABIC LETTER HEH WITH YEH ABOVE ISOLATED FORM\0" "ARABIC LETTER HIGH HAMZA\0" "ARABIC LETTER HIGH HAMZA ALEF\0" "ARABIC LETTER HIGH HAMZA WAW\0" "ARABIC LETTER HIGH HAMZA YEH\0" "ARABIC LETTER JEEM\0" "ARABIC LETTER JEEM FINAL FORM\0" "ARABIC LETTER JEEM INITIAL FORM\0" "ARABIC LETTER JEEM ISOLATED FORM\0" "ARABIC LETTER JEEM MEDIAL FORM\0" "ARABIC LETTER JEH\0" "ARABIC LETTER JEH FINAL FORM\0" "ARABIC LETTER JEH ISOLATED FORM\0" "ARABIC LETTER KAF\0" "ARABIC LETTER KAF FINAL FORM\0" "ARABIC LETTER KAF INITIAL FORM\0" "ARABIC LETTER KAF ISOLATED FORM\0" "ARABIC LETTER KAF MEDIAL FORM\0" "ARABIC LETTER KAF WITH DOT ABOVE\0" "ARABIC LETTER KAF WITH RING\0" "ARABIC LETTER KAF WITH THREE DOTS BELOW\0" "ARABIC LETTER KAF WITH TWO DOTS ABOVE\0" "ARABIC LETTER KASHMIRI YEH\0" "ARABIC LETTER KEHEH\0" "ARABIC LETTER KEHEH FINAL FORM\0" "ARABIC LETTER KEHEH INITIAL FORM\0" "ARABIC LETTER KEHEH ISOLATED FORM\0" "ARABIC LETTER KEHEH MEDIAL FORM\0" "ARABIC LETTER KEHEH WITH DOT ABOVE\0" "ARABIC LETTER KEHEH WITH THREE DOTS ABOVE\0" "ARABIC LETTER KEHEH WITH THREE DOTS BELOW\0" "ARABIC LETTER KEHEH WITH THREE DOTS POINTING UPWARDS BELOW\0" "ARABIC LETTER KEHEH WITH TWO DOTS ABOVE\0" "ARABIC LETTER KHAH\0" "ARABIC LETTER KHAH FINAL FORM\0" "ARABIC LETTER KHAH INITIAL FORM\0" "ARABIC LETTER KHAH ISOLATED FORM\0" "ARABIC LETTER KHAH MEDIAL FORM\0" "ARABIC LETTER KIRGHIZ OE\0" "ARABIC LETTER KIRGHIZ OE FINAL FORM\0" "ARABIC LETTER KIRGHIZ OE ISOLATED FORM\0" "ARABIC LETTER KIRGHIZ YU\0" "ARABIC LETTER KIRGHIZ YU FINAL FORM\0" "ARABIC LETTER KIRGHIZ YU ISOLATED FORM\0" "ARABIC LETTER LAM\0" "ARABIC LETTER LAM FINAL FORM\0" "ARABIC LETTER LAM INITIAL FORM\0" "ARABIC LETTER LAM ISOLATED FORM\0" "ARABIC LETTER LAM MEDIAL FORM\0" "ARABIC LETTER LAM WITH BAR\0" "ARABIC LETTER LAM WITH DOT ABOVE\0" "ARABIC LETTER LAM WITH SMALL V\0" "ARABIC LETTER LAM WITH THREE DOTS ABOVE\0" "ARABIC LETTER LAM WITH THREE DOTS BELOW\0" "ARABIC LETTER MEEM\0" "ARABIC LETTER MEEM FINAL FORM\0" "ARABIC LETTER MEEM INITIAL FORM\0" "ARABIC LETTER MEEM ISOLATED FORM\0" "ARABIC LETTER MEEM MEDIAL FORM\0" "ARABIC LETTER MEEM WITH DOT ABOVE\0" "ARABIC LETTER MEEM WITH DOT BELOW\0" "ARABIC LETTER NG\0" "ARABIC LETTER NG FINAL FORM\0" "ARABIC LETTER NG INITIAL FORM\0" "ARABIC LETTER NG ISOLATED FORM\0" "ARABIC LETTER NG MEDIAL FORM\0" "ARABIC LETTER NGOEH\0" "ARABIC LETTER NGOEH FINAL FORM\0" "ARABIC LETTER NGOEH INITIAL FORM\0" "ARABIC LETTER NGOEH ISOLATED FORM\0" "ARABIC LETTER NGOEH MEDIAL FORM\0" "ARABIC LETTER NOON\0" "ARABIC LETTER NOON FINAL FORM\0" "ARABIC LETTER NOON GHUNNA\0" "ARABIC LETTER NOON GHUNNA FINAL FORM\0" "ARABIC LETTER NOON GHUNNA ISOLATED FORM\0" "ARABIC LETTER NOON INITIAL FORM\0" "ARABIC LETTER NOON ISOLATED FORM\0" "ARABIC LETTER NOON MEDIAL FORM\0" "ARABIC LETTER NOON WITH DOT BELOW\0" "ARABIC LETTER NOON WITH RING\0" "ARABIC LETTER NOON WITH SMALL TAH\0" "ARABIC LETTER NOON WITH SMALL V\0" "ARABIC LETTER NOON WITH THREE DOTS ABOVE\0" "ARABIC LETTER NOON WITH TWO DOTS BELOW\0" "ARABIC LETTER NYEH\0" "ARABIC LETTER NYEH FINAL FORM\0" "ARABIC LETTER NYEH INITIAL FORM\0" "ARABIC LETTER NYEH ISOLATED FORM\0" "ARABIC LETTER NYEH MEDIAL FORM\0" "ARABIC LETTER OE\0" "ARABIC LETTER OE FINAL FORM\0" "ARABIC LETTER OE ISOLATED FORM\0" "ARABIC LETTER PEH\0" "ARABIC LETTER PEH FINAL FORM\0" "ARABIC LETTER PEH INITIAL FORM\0" "ARABIC LETTER PEH ISOLATED FORM\0" "ARABIC LETTER PEH MEDIAL FORM\0" "ARABIC LETTER PEHEH\0" "ARABIC LETTER PEHEH FINAL FORM\0" "ARABIC LETTER PEHEH INITIAL FORM\0" "ARABIC LETTER PEHEH ISOLATED FORM\0" "ARABIC LETTER PEHEH MEDIAL FORM\0" "ARABIC LETTER QAF\0" "ARABIC LETTER QAF FINAL FORM\0" "ARABIC LETTER QAF INITIAL FORM\0" "ARABIC LETTER QAF ISOLATED FORM\0" "ARABIC LETTER QAF MEDIAL FORM\0" "ARABIC LETTER QAF WITH DOT ABOVE\0" "ARABIC LETTER QAF WITH THREE DOTS ABOVE\0" "ARABIC LETTER REH\0" "ARABIC LETTER REH FINAL FORM\0" "ARABIC LETTER REH ISOLATED FORM\0" "ARABIC LETTER REH WITH DOT BELOW\0" "ARABIC LETTER REH WITH DOT BELOW AND DOT ABOVE\0" "ARABIC LETTER REH WITH FOUR DOTS ABOVE\0" "ARABIC LETTER REH WITH HAMZA ABOVE\0" "ARABIC LETTER REH WITH INVERTED V\0" "ARABIC LETTER REH WITH RING\0" "ARABIC LETTER REH WITH SMALL ARABIC LETTER TAH AND TWO DOTS\0" "ARABIC LETTER REH WITH SMALL V\0" "ARABIC LETTER REH WITH SMALL V BELOW\0" "ARABIC LETTER REH WITH STROKE\0" "ARABIC LETTER REH WITH TWO DOTS ABOVE\0" "ARABIC LETTER REH WITH TWO DOTS VERTICALLY ABOVE\0" "ARABIC LETTER RNOON\0" "ARABIC LETTER RNOON FINAL FORM\0" "ARABIC LETTER RNOON INITIAL FORM\0" "ARABIC LETTER RNOON ISOLATED FORM\0" "ARABIC LETTER RNOON MEDIAL FORM\0" "ARABIC LETTER RREH\0" "ARABIC LETTER RREH FINAL FORM\0" "ARABIC LETTER RREH ISOLATED FORM\0" "ARABIC LETTER SAD\0" "ARABIC LETTER SAD FINAL FORM\0" "ARABIC LETTER SAD INITIAL FORM\0" "ARABIC LETTER SAD ISOLATED FORM\0" "ARABIC LETTER SAD MEDIAL FORM\0" "ARABIC LETTER SAD WITH THREE DOTS ABOVE\0" "ARABIC LETTER SAD WITH TWO DOTS BELOW\0" "ARABIC LETTER SEEN\0" "ARABIC LETTER SEEN FINAL FORM\0" "ARABIC LETTER SEEN INITIAL FORM\0" "ARABIC LETTER SEEN ISOLATED FORM\0" "ARABIC LETTER SEEN MEDIAL FORM\0" "ARABIC LETTER SEEN WITH DOT BELOW AND DOT ABOVE\0" "ARABIC LETTER SEEN WITH EXTENDED ARABIC-INDIC DIGIT FOUR ABOVE\0" "ARABIC LETTER SEEN WITH FOUR DOTS ABOVE\0" "ARABIC LETTER SEEN WITH INVERTED V\0" "ARABIC LETTER SEEN WITH SMALL ARABIC LETTER TAH AND TWO DOTS\0" "ARABIC LETTER SEEN WITH THREE DOTS BELOW\0" "ARABIC LETTER SEEN WITH THREE DOTS BELOW AND THREE DOTS ABOVE\0" "ARABIC LETTER SEEN WITH TWO DOTS VERTICALLY ABOVE\0" "ARABIC LETTER SHEEN\0" "ARABIC LETTER SHEEN FINAL FORM\0" "ARABIC LETTER SHEEN INITIAL FORM\0" "ARABIC LETTER SHEEN ISOLATED FORM\0" "ARABIC LETTER SHEEN MEDIAL FORM\0" "ARABIC LETTER SHEEN WITH DOT BELOW\0" "ARABIC LETTER SUPERSCRIPT ALEF\0" "ARABIC LETTER SWASH KAF\0" "ARABIC LETTER TAH\0" "ARABIC LETTER TAH FINAL FORM\0" "ARABIC LETTER TAH INITIAL FORM\0" "ARABIC LETTER TAH ISOLATED FORM\0" "ARABIC LETTER TAH MEDIAL FORM\0" "ARABIC LETTER TAH WITH THREE DOTS ABOVE\0" "ARABIC LETTER TCHEH\0" "ARABIC LETTER TCHEH FINAL FORM\0" "ARABIC LETTER TCHEH INITIAL FORM\0" "ARABIC LETTER TCHEH ISOLATED FORM\0" "ARABIC LETTER TCHEH MEDIAL FORM\0" "ARABIC LETTER TCHEH WITH DOT ABOVE\0" "ARABIC LETTER TCHEHEH\0" "ARABIC LETTER TCHEHEH FINAL FORM\0" "ARABIC LETTER TCHEHEH INITIAL FORM\0" "ARABIC LETTER TCHEHEH ISOLATED FORM\0" "ARABIC LETTER TCHEHEH MEDIAL FORM\0" "ARABIC LETTER TEH\0" "ARABIC LETTER TEH FINAL FORM\0" "ARABIC LETTER TEH INITIAL FORM\0" "ARABIC LETTER TEH ISOLATED FORM\0" "ARABIC LETTER TEH MARBUTA\0" "ARABIC LETTER TEH MARBUTA FINAL FORM\0" "ARABIC LETTER TEH MARBUTA GOAL\0" "ARABIC LETTER TEH MARBUTA ISOLATED FORM\0" "ARABIC LETTER TEH MEDIAL FORM\0" "ARABIC LETTER TEH WITH RING\0" "ARABIC LETTER TEH WITH THREE DOTS ABOVE DOWNWARDS\0" "ARABIC LETTER TEHEH\0" "ARABIC LETTER TEHEH FINAL FORM\0" "ARABIC LETTER TEHEH INITIAL FORM\0" "ARABIC LETTER TEHEH ISOLATED FORM\0" "ARABIC LETTER TEHEH MEDIAL FORM\0" "ARABIC LETTER THAL\0" "ARABIC LETTER THAL FINAL FORM\0" "ARABIC LETTER THAL ISOLATED FORM\0" "ARABIC LETTER THEH\0" "ARABIC LETTER THEH FINAL FORM\0" "ARABIC LETTER THEH INITIAL FORM\0" "ARABIC LETTER THEH ISOLATED FORM\0" "ARABIC LETTER THEH MEDIAL FORM\0" "ARABIC LETTER TTEH\0" "ARABIC LETTER TTEH FINAL FORM\0" "ARABIC LETTER TTEH INITIAL FORM\0" "ARABIC LETTER TTEH ISOLATED FORM\0" "ARABIC LETTER TTEH MEDIAL FORM\0" "ARABIC LETTER TTEHEH\0" "ARABIC LETTER TTEHEH FINAL FORM\0" "ARABIC LETTER TTEHEH INITIAL FORM\0" "ARABIC LETTER TTEHEH ISOLATED FORM\0" "ARABIC LETTER TTEHEH MEDIAL FORM\0" "ARABIC LETTER U\0" "ARABIC LETTER U FINAL FORM\0" "ARABIC LETTER U ISOLATED FORM\0" "ARABIC LETTER U WITH HAMZA ABOVE\0" "ARABIC LETTER U WITH HAMZA ABOVE ISOLATED FORM\0" "ARABIC LETTER UIGHUR KAZAKH KIRGHIZ ALEF MAKSURA INITIAL FORM\0" "ARABIC LETTER UIGHUR KAZAKH KIRGHIZ ALEF MAKSURA MEDIAL FORM\0" "ARABIC LETTER VE\0" "ARABIC LETTER VE FINAL FORM\0" "ARABIC LETTER VE ISOLATED FORM\0" "ARABIC LETTER VEH\0" "ARABIC LETTER VEH FINAL FORM\0" "ARABIC LETTER VEH INITIAL FORM\0" "ARABIC LETTER VEH ISOLATED FORM\0" "ARABIC LETTER VEH MEDIAL FORM\0" "ARABIC LETTER WAW\0" "ARABIC LETTER WAW FINAL FORM\0" "ARABIC LETTER WAW ISOLATED FORM\0" "ARABIC LETTER WAW WITH DOT ABOVE\0" "ARABIC LETTER WAW WITH EXTENDED ARABIC-INDIC DIGIT THREE ABOVE\0" "ARABIC LETTER WAW WITH EXTENDED ARABIC-INDIC DIGIT TWO ABOVE\0" "ARABIC LETTER WAW WITH HAMZA ABOVE\0" "ARABIC LETTER WAW WITH HAMZA ABOVE FINAL FORM\0" "ARABIC LETTER WAW WITH HAMZA ABOVE ISOLATED FORM\0" "ARABIC LETTER WAW WITH RING\0" "ARABIC LETTER WAW WITH TWO DOTS ABOVE\0" "ARABIC LETTER YEH\0" "ARABIC LETTER YEH BARREE\0" "ARABIC LETTER YEH BARREE FINAL FORM\0" "ARABIC LETTER YEH BARREE ISOLATED FORM\0" "ARABIC LETTER YEH BARREE WITH EXTENDED ARABIC-INDIC DIGIT THREE ABOVE\0" "ARABIC LETTER YEH BARREE WITH EXTENDED ARABIC-INDIC DIGIT TWO ABOVE\0" "ARABIC LETTER YEH BARREE WITH HAMZA ABOVE\0" "ARABIC LETTER YEH BARREE WITH HAMZA ABOVE FINAL FORM\0" "ARABIC LETTER YEH BARREE WITH HAMZA ABOVE ISOLATED FORM\0" "ARABIC LETTER YEH FINAL FORM\0" "ARABIC LETTER YEH INITIAL FORM\0" "ARABIC LETTER YEH ISOLATED FORM\0" "ARABIC LETTER YEH MEDIAL FORM\0" "ARABIC LETTER YEH WITH HAMZA ABOVE\0" "ARABIC LETTER YEH WITH HAMZA ABOVE FINAL FORM\0" "ARABIC LETTER YEH WITH HAMZA ABOVE INITIAL FORM\0" "ARABIC LETTER YEH WITH HAMZA ABOVE ISOLATED FORM\0" "ARABIC LETTER YEH WITH HAMZA ABOVE MEDIAL FORM\0" "ARABIC LETTER YEH WITH SMALL V\0" "ARABIC LETTER YEH WITH TAIL\0" "ARABIC LETTER YEH WITH THREE DOTS BELOW\0" "ARABIC LETTER YU\0" "ARABIC LETTER YU FINAL FORM\0" "ARABIC LETTER YU ISOLATED FORM\0" "ARABIC LETTER ZAH\0" "ARABIC LETTER ZAH FINAL FORM\0" "ARABIC LETTER ZAH INITIAL FORM\0" "ARABIC LETTER ZAH ISOLATED FORM\0" "ARABIC LETTER ZAH MEDIAL FORM\0" "ARABIC LETTER ZAIN\0" "ARABIC LETTER ZAIN FINAL FORM\0" "ARABIC LETTER ZAIN ISOLATED FORM\0" "ARABIC LIGATURE AIN WITH ALEF MAKSURA FINAL FORM\0" "ARABIC LIGATURE AIN WITH ALEF MAKSURA ISOLATED FORM\0" "ARABIC LIGATURE AIN WITH JEEM INITIAL FORM\0" "ARABIC LIGATURE AIN WITH JEEM ISOLATED FORM\0" "ARABIC LIGATURE AIN WITH JEEM WITH MEEM FINAL FORM\0" "ARABIC LIGATURE AIN WITH JEEM WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE AIN WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE AIN WITH MEEM ISOLATED FORM\0" "ARABIC LIGATURE AIN WITH MEEM WITH ALEF MAKSURA FINAL FORM\0" "ARABIC LIGATURE AIN WITH MEEM WITH MEEM FINAL FORM\0" "ARABIC LIGATURE AIN WITH MEEM WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE AIN WITH MEEM WITH YEH FINAL FORM\0" "ARABIC LIGATURE AIN WITH YEH FINAL FORM\0" "ARABIC LIGATURE AIN WITH YEH ISOLATED FORM\0" "ARABIC LIGATURE AKBAR ISOLATED FORM\0" "ARABIC LIGATURE ALAYHE ISOLATED FORM\0" "ARABIC LIGATURE ALEF MAKSURA WITH SUPERSCRIPT ALEF FINAL FORM\0" "ARABIC LIGATURE ALEF MAKSURA WITH SUPERSCRIPT ALEF ISOLATED FORM\0" "ARABIC LIGATURE ALEF WITH FATHATAN FINAL FORM\0" "ARABIC LIGATURE ALEF WITH FATHATAN ISOLATED FORM\0" "ARABIC LIGATURE ALLAH ISOLATED FORM\0" "ARABIC LIGATURE BEH WITH ALEF MAKSURA FINAL FORM\0" "ARABIC LIGATURE BEH WITH ALEF MAKSURA ISOLATED FORM\0" "ARABIC LIGATURE BEH WITH HAH INITIAL FORM\0" "ARABIC LIGATURE BEH WITH HAH ISOLATED FORM\0" "ARABIC LIGATURE BEH WITH HAH WITH YEH FINAL FORM\0" "ARABIC LIGATURE BEH WITH HEH INITIAL FORM\0" "ARABIC LIGATURE BEH WITH HEH MEDIAL FORM\0" "ARABIC LIGATURE BEH WITH JEEM INITIAL FORM\0" "ARABIC LIGATURE BEH WITH JEEM ISOLATED FORM\0" "ARABIC LIGATURE BEH WITH KHAH INITIAL FORM\0" "ARABIC LIGATURE BEH WITH KHAH ISOLATED FORM\0" "ARABIC LIGATURE BEH WITH KHAH WITH YEH FINAL FORM\0" "ARABIC LIGATURE BEH WITH MEEM FINAL FORM\0" "ARABIC LIGATURE BEH WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE BEH WITH MEEM ISOLATED FORM\0" "ARABIC LIGATURE BEH WITH MEEM MEDIAL FORM\0" "ARABIC LIGATURE BEH WITH NOON FINAL FORM\0" "ARABIC LIGATURE BEH WITH REH FINAL FORM\0" "ARABIC LIGATURE BEH WITH YEH FINAL FORM\0" "ARABIC LIGATURE BEH WITH YEH ISOLATED FORM\0" "ARABIC LIGATURE BEH WITH ZAIN FINAL FORM\0" "ARABIC LIGATURE BISMILLAH AR-RAHMAN AR-RAHEEM\0" "ARABIC LIGATURE DAD WITH ALEF MAKSURA FINAL FORM\0" "ARABIC LIGATURE DAD WITH ALEF MAKSURA ISOLATED FORM\0" "ARABIC LIGATURE DAD WITH HAH INITIAL FORM\0" "ARABIC LIGATURE DAD WITH HAH ISOLATED FORM\0" "ARABIC LIGATURE DAD WITH HAH WITH ALEF MAKSURA FINAL FORM\0" "ARABIC LIGATURE DAD WITH HAH WITH YEH FINAL FORM\0" "ARABIC LIGATURE DAD WITH JEEM INITIAL FORM\0" "ARABIC LIGATURE DAD WITH JEEM ISOLATED FORM\0" "ARABIC LIGATURE DAD WITH KHAH INITIAL FORM\0" "ARABIC LIGATURE DAD WITH KHAH ISOLATED FORM\0" "ARABIC LIGATURE DAD WITH KHAH WITH MEEM FINAL FORM\0" "ARABIC LIGATURE DAD WITH KHAH WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE DAD WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE DAD WITH MEEM ISOLATED FORM\0" "ARABIC LIGATURE DAD WITH REH FINAL FORM\0" "ARABIC LIGATURE DAD WITH REH ISOLATED FORM\0" "ARABIC LIGATURE DAD WITH YEH FINAL FORM\0" "ARABIC LIGATURE DAD WITH YEH ISOLATED FORM\0" "ARABIC LIGATURE FEH WITH ALEF MAKSURA FINAL FORM\0" "ARABIC LIGATURE FEH WITH ALEF MAKSURA ISOLATED FORM\0" "ARABIC LIGATURE FEH WITH HAH INITIAL FORM\0" "ARABIC LIGATURE FEH WITH HAH ISOLATED FORM\0" "ARABIC LIGATURE FEH WITH JEEM INITIAL FORM\0" "ARABIC LIGATURE FEH WITH JEEM ISOLATED FORM\0" "ARABIC LIGATURE FEH WITH KHAH INITIAL FORM\0" "ARABIC LIGATURE FEH WITH KHAH ISOLATED FORM\0" "ARABIC LIGATURE FEH WITH KHAH WITH MEEM FINAL FORM\0" "ARABIC LIGATURE FEH WITH KHAH WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE FEH WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE FEH WITH MEEM ISOLATED FORM\0" "ARABIC LIGATURE FEH WITH MEEM WITH YEH FINAL FORM\0" "ARABIC LIGATURE FEH WITH YEH FINAL FORM\0" "ARABIC LIGATURE FEH WITH YEH ISOLATED FORM\0" "ARABIC LIGATURE GHAIN WITH ALEF MAKSURA FINAL FORM\0" "ARABIC LIGATURE GHAIN WITH ALEF MAKSURA ISOLATED FORM\0" "ARABIC LIGATURE GHAIN WITH JEEM INITIAL FORM\0" "ARABIC LIGATURE GHAIN WITH JEEM ISOLATED FORM\0" "ARABIC LIGATURE GHAIN WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE GHAIN WITH MEEM ISOLATED FORM\0" "ARABIC LIGATURE GHAIN WITH MEEM WITH ALEF MAKSURA FINAL FORM\0" "ARABIC LIGATURE GHAIN WITH MEEM WITH MEEM FINAL FORM\0" "ARABIC LIGATURE GHAIN WITH MEEM WITH YEH FINAL FORM\0" "ARABIC LIGATURE GHAIN WITH YEH FINAL FORM\0" "ARABIC LIGATURE GHAIN WITH YEH ISOLATED FORM\0" "ARABIC LIGATURE HAH WITH ALEF MAKSURA FINAL FORM\0" "ARABIC LIGATURE HAH WITH ALEF MAKSURA ISOLATED FORM\0" "ARABIC LIGATURE HAH WITH JEEM INITIAL FORM\0" "ARABIC LIGATURE HAH WITH JEEM ISOLATED FORM\0" "ARABIC LIGATURE HAH WITH JEEM WITH YEH FINAL FORM\0" "ARABIC LIGATURE HAH WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE HAH WITH MEEM ISOLATED FORM\0" "ARABIC LIGATURE HAH WITH MEEM WITH ALEF MAKSURA FINAL FORM\0" "ARABIC LIGATURE HAH WITH MEEM WITH YEH FINAL FORM\0" "ARABIC LIGATURE HAH WITH YEH FINAL FORM\0" "ARABIC LIGATURE HAH WITH YEH ISOLATED FORM\0" "ARABIC LIGATURE HEH WITH ALEF MAKSURA ISOLATED FORM\0" "ARABIC LIGATURE HEH WITH JEEM INITIAL FORM\0" "ARABIC LIGATURE HEH WITH JEEM ISOLATED FORM\0" "ARABIC LIGATURE HEH WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE HEH WITH MEEM ISOLATED FORM\0" "ARABIC LIGATURE HEH WITH MEEM WITH JEEM INITIAL FORM\0" "ARABIC LIGATURE HEH WITH MEEM WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE HEH WITH SUPERSCRIPT ALEF INITIAL FORM\0" "ARABIC LIGATURE HEH WITH YEH ISOLATED FORM\0" "ARABIC LIGATURE JALLAJALALOUHOU\0" "ARABIC LIGATURE JEEM WITH ALEF MAKSURA FINAL FORM\0" "ARABIC LIGATURE JEEM WITH ALEF MAKSURA ISOLATED FORM\0" "ARABIC LIGATURE JEEM WITH HAH INITIAL FORM\0" "ARABIC LIGATURE JEEM WITH HAH ISOLATED FORM\0" "ARABIC LIGATURE JEEM WITH HAH WITH ALEF MAKSURA FINAL FORM\0" "ARABIC LIGATURE JEEM WITH HAH WITH YEH FINAL FORM\0" "ARABIC LIGATURE JEEM WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE JEEM WITH MEEM ISOLATED FORM\0" "ARABIC LIGATURE JEEM WITH MEEM WITH ALEF MAKSURA FINAL FORM\0" "ARABIC LIGATURE JEEM WITH MEEM WITH HAH FINAL FORM\0" "ARABIC LIGATURE JEEM WITH MEEM WITH HAH INITIAL FORM\0" "ARABIC LIGATURE JEEM WITH MEEM WITH YEH FINAL FORM\0" "ARABIC LIGATURE JEEM WITH YEH FINAL FORM\0" "ARABIC LIGATURE JEEM WITH YEH ISOLATED FORM\0" "ARABIC LIGATURE KAF WITH ALEF FINAL FORM\0" "ARABIC LIGATURE KAF WITH ALEF ISOLATED FORM\0" "ARABIC LIGATURE KAF WITH ALEF MAKSURA FINAL FORM\0" "ARABIC LIGATURE KAF WITH ALEF MAKSURA ISOLATED FORM\0" "ARABIC LIGATURE KAF WITH HAH INITIAL FORM\0" "ARABIC LIGATURE KAF WITH HAH ISOLATED FORM\0" "ARABIC LIGATURE KAF WITH JEEM INITIAL FORM\0" "ARABIC LIGATURE KAF WITH JEEM ISOLATED FORM\0" "ARABIC LIGATURE KAF WITH KHAH INITIAL FORM\0" "ARABIC LIGATURE KAF WITH KHAH ISOLATED FORM\0" "ARABIC LIGATURE KAF WITH LAM FINAL FORM\0" "ARABIC LIGATURE KAF WITH LAM INITIAL FORM\0" "ARABIC LIGATURE KAF WITH LAM ISOLATED FORM\0" "ARABIC LIGATURE KAF WITH LAM MEDIAL FORM\0" "ARABIC LIGATURE KAF WITH MEEM FINAL FORM\0" "ARABIC LIGATURE KAF WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE KAF WITH MEEM ISOLATED FORM\0" "ARABIC LIGATURE KAF WITH MEEM MEDIAL FORM\0" "ARABIC LIGATURE KAF WITH MEEM WITH MEEM FINAL FORM\0" "ARABIC LIGATURE KAF WITH MEEM WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE KAF WITH MEEM WITH YEH FINAL FORM\0" "ARABIC LIGATURE KAF WITH YEH FINAL FORM\0" "ARABIC LIGATURE KAF WITH YEH ISOLATED FORM\0" "ARABIC LIGATURE KHAH WITH ALEF MAKSURA FINAL FORM\0" "ARABIC LIGATURE KHAH WITH ALEF MAKSURA ISOLATED FORM\0" "ARABIC LIGATURE KHAH WITH HAH ISOLATED FORM\0" "ARABIC LIGATURE KHAH WITH JEEM INITIAL FORM\0" "ARABIC LIGATURE KHAH WITH JEEM ISOLATED FORM\0" "ARABIC LIGATURE KHAH WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE KHAH WITH MEEM ISOLATED FORM\0" "ARABIC LIGATURE KHAH WITH YEH FINAL FORM\0" "ARABIC LIGATURE KHAH WITH YEH ISOLATED FORM\0" "ARABIC LIGATURE LAM WITH ALEF FINAL FORM\0" "ARABIC LIGATURE LAM WITH ALEF ISOLATED FORM\0" "ARABIC LIGATURE LAM WITH ALEF MAKSURA FINAL FORM\0" "ARABIC LIGATURE LAM WITH ALEF MAKSURA ISOLATED FORM\0" "ARABIC LIGATURE LAM WITH ALEF WITH HAMZA ABOVE FINAL FORM\0" "ARABIC LIGATURE LAM WITH ALEF WITH HAMZA ABOVE ISOLATED FORM\0" "ARABIC LIGATURE LAM WITH ALEF WITH HAMZA BELOW FINAL FORM\0" "ARABIC LIGATURE LAM WITH ALEF WITH HAMZA BELOW ISOLATED FORM\0" "ARABIC LIGATURE LAM WITH ALEF WITH MADDA ABOVE FINAL FORM\0" "ARABIC LIGATURE LAM WITH ALEF WITH MADDA ABOVE ISOLATED FORM\0" "ARABIC LIGATURE LAM WITH HAH INITIAL FORM\0" "ARABIC LIGATURE LAM WITH HAH ISOLATED FORM\0" "ARABIC LIGATURE LAM WITH HAH WITH ALEF MAKSURA FINAL FORM\0" "ARABIC LIGATURE LAM WITH HAH WITH MEEM FINAL FORM\0" "ARABIC LIGATURE LAM WITH HAH WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE LAM WITH HAH WITH YEH FINAL FORM\0" "ARABIC LIGATURE LAM WITH HEH INITIAL FORM\0" "ARABIC LIGATURE LAM WITH JEEM INITIAL FORM\0" "ARABIC LIGATURE LAM WITH JEEM ISOLATED FORM\0" "ARABIC LIGATURE LAM WITH JEEM WITH JEEM FINAL FORM\0" "ARABIC LIGATURE LAM WITH JEEM WITH JEEM INITIAL FORM\0" "ARABIC LIGATURE LAM WITH JEEM WITH MEEM FINAL FORM\0" "ARABIC LIGATURE LAM WITH JEEM WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE LAM WITH JEEM WITH YEH FINAL FORM\0" "ARABIC LIGATURE LAM WITH KHAH INITIAL FORM\0" "ARABIC LIGATURE LAM WITH KHAH ISOLATED FORM\0" "ARABIC LIGATURE LAM WITH KHAH WITH MEEM FINAL FORM\0" "ARABIC LIGATURE LAM WITH KHAH WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE LAM WITH MEEM FINAL FORM\0" "ARABIC LIGATURE LAM WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE LAM WITH MEEM ISOLATED FORM\0" "ARABIC LIGATURE LAM WITH MEEM MEDIAL FORM\0" "ARABIC LIGATURE LAM WITH MEEM WITH HAH FINAL FORM\0" "ARABIC LIGATURE LAM WITH MEEM WITH HAH INITIAL FORM\0" "ARABIC LIGATURE LAM WITH MEEM WITH YEH FINAL FORM\0" "ARABIC LIGATURE LAM WITH YEH FINAL FORM\0" "ARABIC LIGATURE LAM WITH YEH ISOLATED FORM\0" "ARABIC LIGATURE MEEM WITH ALEF FINAL FORM\0" "ARABIC LIGATURE MEEM WITH ALEF MAKSURA ISOLATED FORM\0" "ARABIC LIGATURE MEEM WITH HAH INITIAL FORM\0" "ARABIC LIGATURE MEEM WITH HAH ISOLATED FORM\0" "ARABIC LIGATURE MEEM WITH HAH WITH JEEM INITIAL FORM\0" "ARABIC LIGATURE MEEM WITH HAH WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE MEEM WITH HAH WITH YEH FINAL FORM\0" "ARABIC LIGATURE MEEM WITH JEEM INITIAL FORM\0" "ARABIC LIGATURE MEEM WITH JEEM ISOLATED FORM\0" "ARABIC LIGATURE MEEM WITH JEEM WITH HAH INITIAL FORM\0" "ARABIC LIGATURE MEEM WITH JEEM WITH KHAH INITIAL FORM\0" "ARABIC LIGATURE MEEM WITH JEEM WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE MEEM WITH JEEM WITH YEH FINAL FORM\0" "ARABIC LIGATURE MEEM WITH KHAH INITIAL FORM\0" "ARABIC LIGATURE MEEM WITH KHAH ISOLATED FORM\0" "ARABIC LIGATURE MEEM WITH KHAH WITH JEEM INITIAL FORM\0" "ARABIC LIGATURE MEEM WITH KHAH WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE MEEM WITH KHAH WITH YEH FINAL FORM\0" "ARABIC LIGATURE MEEM WITH MEEM FINAL FORM\0" "ARABIC LIGATURE MEEM WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE MEEM WITH MEEM ISOLATED FORM\0" "ARABIC LIGATURE MEEM WITH MEEM WITH YEH FINAL FORM\0" "ARABIC LIGATURE MEEM WITH YEH ISOLATED FORM\0" "ARABIC LIGATURE MOHAMMAD ISOLATED FORM\0" "ARABIC LIGATURE NOON WITH ALEF MAKSURA FINAL FORM\0" "ARABIC LIGATURE NOON WITH ALEF MAKSURA ISOLATED FORM\0" "ARABIC LIGATURE NOON WITH HAH INITIAL FORM\0" "ARABIC LIGATURE NOON WITH HAH ISOLATED FORM\0" "ARABIC LIGATURE NOON WITH HAH WITH ALEF MAKSURA FINAL FORM\0" "ARABIC LIGATURE NOON WITH HAH WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE NOON WITH HAH WITH YEH FINAL FORM\0" "ARABIC LIGATURE NOON WITH HEH INITIAL FORM\0" "ARABIC LIGATURE NOON WITH HEH MEDIAL FORM\0" "ARABIC LIGATURE NOON WITH JEEM INITIAL FORM\0" "ARABIC LIGATURE NOON WITH JEEM ISOLATED FORM\0" "ARABIC LIGATURE NOON WITH JEEM WITH ALEF MAKSURA FINAL FORM\0" "ARABIC LIGATURE NOON WITH JEEM WITH HAH FINAL FORM\0" "ARABIC LIGATURE NOON WITH JEEM WITH HAH INITIAL FORM\0" "ARABIC LIGATURE NOON WITH JEEM WITH MEEM FINAL FORM\0" "ARABIC LIGATURE NOON WITH JEEM WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE NOON WITH JEEM WITH YEH FINAL FORM\0" "ARABIC LIGATURE NOON WITH KHAH INITIAL FORM\0" "ARABIC LIGATURE NOON WITH KHAH ISOLATED FORM\0" "ARABIC LIGATURE NOON WITH MEEM FINAL FORM\0" "ARABIC LIGATURE NOON WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE NOON WITH MEEM ISOLATED FORM\0" "ARABIC LIGATURE NOON WITH MEEM MEDIAL FORM\0" "ARABIC LIGATURE NOON WITH MEEM WITH ALEF MAKSURA FINAL FORM\0" "ARABIC LIGATURE NOON WITH MEEM WITH YEH FINAL FORM\0" "ARABIC LIGATURE NOON WITH NOON FINAL FORM\0" "ARABIC LIGATURE NOON WITH REH FINAL FORM\0" "ARABIC LIGATURE NOON WITH YEH FINAL FORM\0" "ARABIC LIGATURE NOON WITH YEH ISOLATED FORM\0" "ARABIC LIGATURE NOON WITH ZAIN FINAL FORM\0" "ARABIC LIGATURE QAF WITH ALEF MAKSURA FINAL FORM\0" "ARABIC LIGATURE QAF WITH ALEF MAKSURA ISOLATED FORM\0" "ARABIC LIGATURE QAF WITH HAH INITIAL FORM\0" "ARABIC LIGATURE QAF WITH HAH ISOLATED FORM\0" "ARABIC LIGATURE QAF WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE QAF WITH MEEM ISOLATED FORM\0" "ARABIC LIGATURE QAF WITH MEEM WITH HAH FINAL FORM\0" "ARABIC LIGATURE QAF WITH MEEM WITH HAH INITIAL FORM\0" "ARABIC LIGATURE QAF WITH MEEM WITH MEEM FINAL FORM\0" "ARABIC LIGATURE QAF WITH MEEM WITH YEH FINAL FORM\0" "ARABIC LIGATURE QAF WITH YEH FINAL FORM\0" "ARABIC LIGATURE QAF WITH YEH ISOLATED FORM\0" "ARABIC LIGATURE QALA USED AS KORANIC STOP SIGN ISOLATED FORM\0" "ARABIC LIGATURE RASOUL ISOLATED FORM\0" "ARABIC LIGATURE REH WITH SUPERSCRIPT ALEF ISOLATED FORM\0" "ARABIC LIGATURE SAD WITH ALEF MAKSURA FINAL FORM\0" "ARABIC LIGATURE SAD WITH ALEF MAKSURA ISOLATED FORM\0" "ARABIC LIGATURE SAD WITH HAH INITIAL FORM\0" "ARABIC LIGATURE SAD WITH HAH ISOLATED FORM\0" "ARABIC LIGATURE SAD WITH HAH WITH HAH FINAL FORM\0" "ARABIC LIGATURE SAD WITH HAH WITH HAH INITIAL FORM\0" "ARABIC LIGATURE SAD WITH HAH WITH YEH FINAL FORM\0" "ARABIC LIGATURE SAD WITH KHAH INITIAL FORM\0" "ARABIC LIGATURE SAD WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE SAD WITH MEEM ISOLATED FORM\0" "ARABIC LIGATURE SAD WITH MEEM WITH MEEM FINAL FORM\0" "ARABIC LIGATURE SAD WITH MEEM WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE SAD WITH REH FINAL FORM\0" "ARABIC LIGATURE SAD WITH REH ISOLATED FORM\0" "ARABIC LIGATURE SAD WITH YEH FINAL FORM\0" "ARABIC LIGATURE SAD WITH YEH ISOLATED FORM\0" "ARABIC LIGATURE SALAM ISOLATED FORM\0" "ARABIC LIGATURE SALLA ISOLATED FORM\0" "ARABIC LIGATURE SALLA USED AS KORANIC STOP SIGN ISOLATED FORM\0" "ARABIC LIGATURE SALLALLAHOU ALAYHE WASALLAM\0" "ARABIC LIGATURE SEEN WITH ALEF MAKSURA FINAL FORM\0" "ARABIC LIGATURE SEEN WITH ALEF MAKSURA ISOLATED FORM\0" "ARABIC LIGATURE SEEN WITH HAH INITIAL FORM\0" "ARABIC LIGATURE SEEN WITH HAH ISOLATED FORM\0" "ARABIC LIGATURE SEEN WITH HAH MEDIAL FORM\0" "ARABIC LIGATURE SEEN WITH HAH WITH JEEM INITIAL FORM\0" "ARABIC LIGATURE SEEN WITH HEH INITIAL FORM\0" "ARABIC LIGATURE SEEN WITH HEH MEDIAL FORM\0" "ARABIC LIGATURE SEEN WITH JEEM INITIAL FORM\0" "ARABIC LIGATURE SEEN WITH JEEM ISOLATED FORM\0" "ARABIC LIGATURE SEEN WITH JEEM MEDIAL FORM\0" "ARABIC LIGATURE SEEN WITH JEEM WITH ALEF MAKSURA FINAL FORM\0" "ARABIC LIGATURE SEEN WITH JEEM WITH HAH INITIAL FORM\0" "ARABIC LIGATURE SEEN WITH KHAH INITIAL FORM\0" "ARABIC LIGATURE SEEN WITH KHAH ISOLATED FORM\0" "ARABIC LIGATURE SEEN WITH KHAH MEDIAL FORM\0" "ARABIC LIGATURE SEEN WITH KHAH WITH ALEF MAKSURA FINAL FORM\0" "ARABIC LIGATURE SEEN WITH KHAH WITH YEH FINAL FORM\0" "ARABIC LIGATURE SEEN WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE SEEN WITH MEEM ISOLATED FORM\0" "ARABIC LIGATURE SEEN WITH MEEM MEDIAL FORM\0" "ARABIC LIGATURE SEEN WITH MEEM WITH HAH FINAL FORM\0" "ARABIC LIGATURE SEEN WITH MEEM WITH HAH INITIAL FORM\0" "ARABIC LIGATURE SEEN WITH MEEM WITH JEEM INITIAL FORM\0" "ARABIC LIGATURE SEEN WITH MEEM WITH MEEM FINAL FORM\0" "ARABIC LIGATURE SEEN WITH MEEM WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE SEEN WITH REH FINAL FORM\0" "ARABIC LIGATURE SEEN WITH REH ISOLATED FORM\0" "ARABIC LIGATURE SEEN WITH YEH FINAL FORM\0" "ARABIC LIGATURE SEEN WITH YEH ISOLATED FORM\0" "ARABIC LIGATURE SHADDA WITH DAMMA ISOLATED FORM\0" "ARABIC LIGATURE SHADDA WITH DAMMA MEDIAL FORM\0" "ARABIC LIGATURE SHADDA WITH DAMMATAN ISOLATED FORM\0" "ARABIC LIGATURE SHADDA WITH FATHA ISOLATED FORM\0" "ARABIC LIGATURE SHADDA WITH FATHA MEDIAL FORM\0" "ARABIC LIGATURE SHADDA WITH KASRA ISOLATED FORM\0" "ARABIC LIGATURE SHADDA WITH KASRA MEDIAL FORM\0" "ARABIC LIGATURE SHADDA WITH KASRATAN ISOLATED FORM\0" "ARABIC LIGATURE SHADDA WITH SUPERSCRIPT ALEF ISOLATED FORM\0" "ARABIC LIGATURE SHEEN WITH ALEF MAKSURA FINAL FORM\0" "ARABIC LIGATURE SHEEN WITH ALEF MAKSURA ISOLATED FORM\0" "ARABIC LIGATURE SHEEN WITH HAH FINAL FORM\0" "ARABIC LIGATURE SHEEN WITH HAH INITIAL FORM\0" "ARABIC LIGATURE SHEEN WITH HAH ISOLATED FORM\0" "ARABIC LIGATURE SHEEN WITH HAH MEDIAL FORM\0" "ARABIC LIGATURE SHEEN WITH HAH WITH MEEM FINAL FORM\0" "ARABIC LIGATURE SHEEN WITH HAH WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE SHEEN WITH HAH WITH YEH FINAL FORM\0" "ARABIC LIGATURE SHEEN WITH HEH INITIAL FORM\0" "ARABIC LIGATURE SHEEN WITH HEH MEDIAL FORM\0" "ARABIC LIGATURE SHEEN WITH JEEM FINAL FORM\0" "ARABIC LIGATURE SHEEN WITH JEEM INITIAL FORM\0" "ARABIC LIGATURE SHEEN WITH JEEM ISOLATED FORM\0" "ARABIC LIGATURE SHEEN WITH JEEM MEDIAL FORM\0" "ARABIC LIGATURE SHEEN WITH JEEM WITH YEH FINAL FORM\0" "ARABIC LIGATURE SHEEN WITH KHAH FINAL FORM\0" "ARABIC LIGATURE SHEEN WITH KHAH INITIAL FORM\0" "ARABIC LIGATURE SHEEN WITH KHAH ISOLATED FORM\0" "ARABIC LIGATURE SHEEN WITH KHAH MEDIAL FORM\0" "ARABIC LIGATURE SHEEN WITH MEEM FINAL FORM\0" "ARABIC LIGATURE SHEEN WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE SHEEN WITH MEEM ISOLATED FORM\0" "ARABIC LIGATURE SHEEN WITH MEEM MEDIAL FORM\0" "ARABIC LIGATURE SHEEN WITH MEEM WITH KHAH FINAL FORM\0" "ARABIC LIGATURE SHEEN WITH MEEM WITH KHAH INITIAL FORM\0" "ARABIC LIGATURE SHEEN WITH MEEM WITH MEEM FINAL FORM\0" "ARABIC LIGATURE SHEEN WITH MEEM WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE SHEEN WITH REH FINAL FORM\0" "ARABIC LIGATURE SHEEN WITH REH ISOLATED FORM\0" "ARABIC LIGATURE SHEEN WITH YEH FINAL FORM\0" "ARABIC LIGATURE SHEEN WITH YEH ISOLATED FORM\0" "ARABIC LIGATURE TAH WITH ALEF MAKSURA FINAL FORM\0" "ARABIC LIGATURE TAH WITH ALEF MAKSURA ISOLATED FORM\0" "ARABIC LIGATURE TAH WITH HAH INITIAL FORM\0" "ARABIC LIGATURE TAH WITH HAH ISOLATED FORM\0" "ARABIC LIGATURE TAH WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE TAH WITH MEEM ISOLATED FORM\0" "ARABIC LIGATURE TAH WITH MEEM MEDIAL FORM\0" "ARABIC LIGATURE TAH WITH MEEM WITH HAH FINAL FORM\0" "ARABIC LIGATURE TAH WITH MEEM WITH HAH INITIAL FORM\0" "ARABIC LIGATURE TAH WITH MEEM WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE TAH WITH MEEM WITH YEH FINAL FORM\0" "ARABIC LIGATURE TAH WITH YEH FINAL FORM\0" "ARABIC LIGATURE TAH WITH YEH ISOLATED FORM\0" "ARABIC LIGATURE TEH WITH ALEF MAKSURA FINAL FORM\0" "ARABIC LIGATURE TEH WITH ALEF MAKSURA ISOLATED FORM\0" "ARABIC LIGATURE TEH WITH HAH INITIAL FORM\0" "ARABIC LIGATURE TEH WITH HAH ISOLATED FORM\0" "ARABIC LIGATURE TEH WITH HAH WITH JEEM FINAL FORM\0" "ARABIC LIGATURE TEH WITH HAH WITH JEEM INITIAL FORM\0" "ARABIC LIGATURE TEH WITH HAH WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE TEH WITH HEH INITIAL FORM\0" "ARABIC LIGATURE TEH WITH HEH MEDIAL FORM\0" "ARABIC LIGATURE TEH WITH JEEM INITIAL FORM\0" "ARABIC LIGATURE TEH WITH JEEM ISOLATED FORM\0" "ARABIC LIGATURE TEH WITH JEEM WITH ALEF MAKSURA FINAL FORM\0" "ARABIC LIGATURE TEH WITH JEEM WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE TEH WITH JEEM WITH YEH FINAL FORM\0" "ARABIC LIGATURE TEH WITH KHAH INITIAL FORM\0" "ARABIC LIGATURE TEH WITH KHAH ISOLATED FORM\0" "ARABIC LIGATURE TEH WITH KHAH WITH ALEF MAKSURA FINAL FORM\0" "ARABIC LIGATURE TEH WITH KHAH WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE TEH WITH KHAH WITH YEH FINAL FORM\0" "ARABIC LIGATURE TEH WITH MEEM FINAL FORM\0" "ARABIC LIGATURE TEH WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE TEH WITH MEEM ISOLATED FORM\0" "ARABIC LIGATURE TEH WITH MEEM MEDIAL FORM\0" "ARABIC LIGATURE TEH WITH MEEM WITH ALEF MAKSURA FINAL FORM\0" "ARABIC LIGATURE TEH WITH MEEM WITH HAH INITIAL FORM\0" "ARABIC LIGATURE TEH WITH MEEM WITH JEEM INITIAL FORM\0" "ARABIC LIGATURE TEH WITH MEEM WITH KHAH INITIAL FORM\0" "ARABIC LIGATURE TEH WITH MEEM WITH YEH FINAL FORM\0" "ARABIC LIGATURE TEH WITH NOON FINAL FORM\0" "ARABIC LIGATURE TEH WITH REH FINAL FORM\0" "ARABIC LIGATURE TEH WITH YEH FINAL FORM\0" "ARABIC LIGATURE TEH WITH YEH ISOLATED FORM\0" "ARABIC LIGATURE TEH WITH ZAIN FINAL FORM\0" "ARABIC LIGATURE THAL WITH SUPERSCRIPT ALEF ISOLATED FORM\0" "ARABIC LIGATURE THEH WITH ALEF MAKSURA FINAL FORM\0" "ARABIC LIGATURE THEH WITH ALEF MAKSURA ISOLATED FORM\0" "ARABIC LIGATURE THEH WITH HEH MEDIAL FORM\0" "ARABIC LIGATURE THEH WITH JEEM ISOLATED FORM\0" "ARABIC LIGATURE THEH WITH MEEM FINAL FORM\0" "ARABIC LIGATURE THEH WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE THEH WITH MEEM ISOLATED FORM\0" "ARABIC LIGATURE THEH WITH MEEM MEDIAL FORM\0" "ARABIC LIGATURE THEH WITH NOON FINAL FORM\0" "ARABIC LIGATURE THEH WITH REH FINAL FORM\0" "ARABIC LIGATURE THEH WITH YEH FINAL FORM\0" "ARABIC LIGATURE THEH WITH YEH ISOLATED FORM\0" "ARABIC LIGATURE THEH WITH ZAIN FINAL FORM\0" "ARABIC LIGATURE UIGHUR KIRGHIZ YEH WITH HAMZA ABOVE WITH ALEF MAKSURA FINAL FORM\0" "ARABIC LIGATURE UIGHUR KIRGHIZ YEH WITH HAMZA ABOVE WITH ALEF MAKSURA INITIAL FORM\0" "ARABIC LIGATURE UIGHUR KIRGHIZ YEH WITH HAMZA ABOVE WITH ALEF MAKSURA ISOLATED FORM\0" "ARABIC LIGATURE WASALLAM ISOLATED FORM\0" "ARABIC LIGATURE YEH WITH ALEF MAKSURA FINAL FORM\0" "ARABIC LIGATURE YEH WITH ALEF MAKSURA ISOLATED FORM\0" "ARABIC LIGATURE YEH WITH HAH INITIAL FORM\0" "ARABIC LIGATURE YEH WITH HAH ISOLATED FORM\0" "ARABIC LIGATURE YEH WITH HAH WITH YEH FINAL FORM\0" "ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH AE FINAL FORM\0" "ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH AE ISOLATED FORM\0" "ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH ALEF FINAL FORM\0" "ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH ALEF ISOLATED FORM\0" "ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH ALEF MAKSURA FINAL FORM\0" "ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH ALEF MAKSURA ISOLATED FORM\0" "ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH E FINAL FORM\0" "ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH E INITIAL FORM\0" "ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH E ISOLATED FORM\0" "ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH HAH INITIAL FORM\0" "ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH HAH ISOLATED FORM\0" "ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH HEH INITIAL FORM\0" "ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH HEH MEDIAL FORM\0" "ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH JEEM INITIAL FORM\0" "ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH JEEM ISOLATED FORM\0" "ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH KHAH INITIAL FORM\0" "ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH MEEM FINAL FORM\0" "ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH MEEM ISOLATED FORM\0" "ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH MEEM MEDIAL FORM\0" "ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH NOON FINAL FORM\0" "ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH OE FINAL FORM\0" "ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH OE ISOLATED FORM\0" "ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH REH FINAL FORM\0" "ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH U FINAL FORM\0" "ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH U ISOLATED FORM\0" "ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH WAW FINAL FORM\0" "ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH WAW ISOLATED FORM\0" "ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH YEH FINAL FORM\0" "ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH YEH ISOLATED FORM\0" "ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH YU FINAL FORM\0" "ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH YU ISOLATED FORM\0" "ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH ZAIN FINAL FORM\0" "ARABIC LIGATURE YEH WITH HEH INITIAL FORM\0" "ARABIC LIGATURE YEH WITH HEH MEDIAL FORM\0" "ARABIC LIGATURE YEH WITH JEEM INITIAL FORM\0" "ARABIC LIGATURE YEH WITH JEEM ISOLATED FORM\0" "ARABIC LIGATURE YEH WITH JEEM WITH YEH FINAL FORM\0" "ARABIC LIGATURE YEH WITH KHAH INITIAL FORM\0" "ARABIC LIGATURE YEH WITH KHAH ISOLATED FORM\0" "ARABIC LIGATURE YEH WITH MEEM FINAL FORM\0" "ARABIC LIGATURE YEH WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE YEH WITH MEEM ISOLATED FORM\0" "ARABIC LIGATURE YEH WITH MEEM MEDIAL FORM\0" "ARABIC LIGATURE YEH WITH MEEM WITH MEEM FINAL FORM\0" "ARABIC LIGATURE YEH WITH MEEM WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE YEH WITH MEEM WITH YEH FINAL FORM\0" "ARABIC LIGATURE YEH WITH NOON FINAL FORM\0" "ARABIC LIGATURE YEH WITH REH FINAL FORM\0" "ARABIC LIGATURE YEH WITH YEH FINAL FORM\0" "ARABIC LIGATURE YEH WITH YEH ISOLATED FORM\0" "ARABIC LIGATURE YEH WITH ZAIN FINAL FORM\0" "ARABIC LIGATURE ZAH WITH MEEM INITIAL FORM\0" "ARABIC LIGATURE ZAH WITH MEEM ISOLATED FORM\0" "ARABIC LIGATURE ZAH WITH MEEM MEDIAL FORM\0" "ARABIC MADDAH ABOVE\0" "ARABIC MARK NOON GHUNNA\0" "ARABIC NUMBER SIGN\0" "ARABIC PERCENT SIGN\0" "ARABIC PLACE OF SAJDAH\0" "ARABIC POETIC VERSE SIGN\0" "ARABIC QUESTION MARK\0" "ARABIC RAY\0" "ARABIC REVERSED DAMMA\0" "ARABIC ROUNDED HIGH STOP WITH FILLED CENTRE\0" "ARABIC SEMICOLON\0" "ARABIC SHADDA\0" "ARABIC SHADDA ISOLATED FORM\0" "ARABIC SHADDA MEDIAL FORM\0" "ARABIC SIGN ALAYHE ASSALLAM\0" "ARABIC SIGN MISRA\0" "ARABIC SIGN RADI ALLAHOU ANHU\0" "ARABIC SIGN RAHMATULLAH ALAYHE\0" "ARABIC SIGN SAFHA\0" "ARABIC SIGN SALLALLAHOU ALAYHE WASSALLAM\0" "ARABIC SIGN SANAH\0" "ARABIC SIGN SINDHI AMPERSAND\0" "ARABIC SIGN SINDHI POSTPOSITION MEN\0" "ARABIC SIGN TAKHALLUS\0" "ARABIC SMALL DAMMA\0" "ARABIC SMALL FATHA\0" "ARABIC SMALL HIGH DOTLESS HEAD OF KHAH\0" "ARABIC SMALL HIGH JEEM\0" "ARABIC SMALL HIGH LAM ALEF\0" "ARABIC SMALL HIGH LIGATURE ALEF WITH LAM WITH YEH\0" "ARABIC SMALL HIGH LIGATURE QAF WITH LAM WITH ALEF MAKSURA\0" "ARABIC SMALL HIGH LIGATURE SAD WITH LAM WITH ALEF MAKSURA\0" "ARABIC SMALL HIGH MADDA\0" "ARABIC SMALL HIGH MEEM INITIAL FORM\0" "ARABIC SMALL HIGH MEEM ISOLATED FORM\0" "ARABIC SMALL HIGH NOON\0" "ARABIC SMALL HIGH ROUNDED ZERO\0" "ARABIC SMALL HIGH SEEN\0" "ARABIC SMALL HIGH TAH\0" "ARABIC SMALL HIGH THREE DOTS\0" "ARABIC SMALL HIGH UPRIGHT RECTANGULAR ZERO\0" "ARABIC SMALL HIGH YEH\0" "ARABIC SMALL HIGH ZAIN\0" "ARABIC SMALL KASRA\0" "ARABIC SMALL LOW MEEM\0" "ARABIC SMALL LOW SEEN\0" "ARABIC SMALL WAW\0" "ARABIC SMALL YEH\0" "ARABIC START OF RUB EL HIZB\0" "ARABIC SUBSCRIPT ALEF\0" "ARABIC SUKUN\0" "ARABIC SUKUN ISOLATED FORM\0" "ARABIC SUKUN MEDIAL FORM\0" "ARABIC SYMBOL DOT ABOVE\0" "ARABIC SYMBOL DOT BELOW\0" "ARABIC SYMBOL DOUBLE VERTICAL BAR BELOW\0" "ARABIC SYMBOL FOUR DOTS ABOVE\0" "ARABIC SYMBOL FOUR DOTS BELOW\0" "ARABIC SYMBOL RING\0" "ARABIC SYMBOL SMALL TAH ABOVE\0" "ARABIC SYMBOL SMALL TAH BELOW\0" "ARABIC SYMBOL THREE DOTS ABOVE\0" "ARABIC SYMBOL THREE DOTS BELOW\0" "ARABIC SYMBOL THREE DOTS POINTING DOWNWARDS ABOVE\0" "ARABIC SYMBOL THREE DOTS POINTING DOWNWARDS BELOW\0" "ARABIC SYMBOL TWO DOTS ABOVE\0" "ARABIC SYMBOL TWO DOTS BELOW\0" "ARABIC SYMBOL TWO DOTS VERTICALLY ABOVE\0" "ARABIC SYMBOL TWO DOTS VERTICALLY BELOW\0" "ARABIC TAIL FRAGMENT\0" "ARABIC TATWEEL\0" "ARABIC TATWEEL WITH FATHATAN ABOVE\0" "ARABIC THOUSANDS SEPARATOR\0" "ARABIC TRIPLE DOT PUNCTUATION MARK\0" "ARABIC VOWEL SIGN DOT BELOW\0" "ARABIC VOWEL SIGN INVERTED SMALL V ABOVE\0" "ARABIC VOWEL SIGN SMALL V ABOVE\0" "ARABIC WAVY HAMZA BELOW\0" "ARABIC ZWARAKAY\0" "ARABIC-INDIC CUBE ROOT\0" "ARABIC-INDIC DIGIT EIGHT\0" "ARABIC-INDIC DIGIT FIVE\0" "ARABIC-INDIC DIGIT FOUR\0" "ARABIC-INDIC DIGIT NINE\0" "ARABIC-INDIC DIGIT ONE\0" "ARABIC-INDIC DIGIT SEVEN\0" "ARABIC-INDIC DIGIT SIX\0" "ARABIC-INDIC DIGIT THREE\0" "ARABIC-INDIC DIGIT TWO\0" "ARABIC-INDIC DIGIT ZERO\0" "ARABIC-INDIC FOURTH ROOT\0" "ARABIC-INDIC PER MILLE SIGN\0" "ARABIC-INDIC PER TEN THOUSAND SIGN\0" "ARC\0" "ARIES\0" "ARMENIAN ABBREVIATION MARK\0" "ARMENIAN APOSTROPHE\0" "ARMENIAN CAPITAL LETTER AYB\0" "ARMENIAN CAPITAL LETTER BEN\0" "ARMENIAN CAPITAL LETTER CA\0" "ARMENIAN CAPITAL LETTER CHA\0" "ARMENIAN CAPITAL LETTER CHEH\0" "ARMENIAN CAPITAL LETTER CO\0" "ARMENIAN CAPITAL LETTER DA\0" "ARMENIAN CAPITAL LETTER ECH\0" "ARMENIAN CAPITAL LETTER EH\0" "ARMENIAN CAPITAL LETTER ET\0" "ARMENIAN CAPITAL LETTER FEH\0" "ARMENIAN CAPITAL LETTER GHAD\0" "ARMENIAN CAPITAL LETTER GIM\0" "ARMENIAN CAPITAL LETTER HO\0" "ARMENIAN CAPITAL LETTER INI\0" "ARMENIAN CAPITAL LETTER JA\0" "ARMENIAN CAPITAL LETTER JHEH\0" "ARMENIAN CAPITAL LETTER KEH\0" "ARMENIAN CAPITAL LETTER KEN\0" "ARMENIAN CAPITAL LETTER LIWN\0" "ARMENIAN CAPITAL LETTER MEN\0" "ARMENIAN CAPITAL LETTER NOW\0" "ARMENIAN CAPITAL LETTER OH\0" "ARMENIAN CAPITAL LETTER PEH\0" "ARMENIAN CAPITAL LETTER PIWR\0" "ARMENIAN CAPITAL LETTER RA\0" "ARMENIAN CAPITAL LETTER REH\0" "ARMENIAN CAPITAL LETTER SEH\0" "ARMENIAN CAPITAL LETTER SHA\0" "ARMENIAN CAPITAL LETTER TIWN\0" "ARMENIAN CAPITAL LETTER TO\0" "ARMENIAN CAPITAL LETTER VEW\0" "ARMENIAN CAPITAL LETTER VO\0" "ARMENIAN CAPITAL LETTER XEH\0" "ARMENIAN CAPITAL LETTER YI\0" "ARMENIAN CAPITAL LETTER YIWN\0" "ARMENIAN CAPITAL LETTER ZA\0" "ARMENIAN CAPITAL LETTER ZHE\0" "ARMENIAN COMMA\0" "ARMENIAN EMPHASIS MARK\0" "ARMENIAN EXCLAMATION MARK\0" "ARMENIAN FULL STOP\0" "ARMENIAN HYPHEN\0" "ARMENIAN MODIFIER LETTER LEFT HALF RING\0" "ARMENIAN QUESTION MARK\0" "ARMENIAN SMALL LETTER AYB\0" "ARMENIAN SMALL LETTER BEN\0" "ARMENIAN SMALL LETTER CA\0" "ARMENIAN SMALL LETTER CHA\0" "ARMENIAN SMALL LETTER CHEH\0" "ARMENIAN SMALL LETTER CO\0" "ARMENIAN SMALL LETTER DA\0" "ARMENIAN SMALL LETTER ECH\0" "ARMENIAN SMALL LETTER EH\0" "ARMENIAN SMALL LETTER ET\0" "ARMENIAN SMALL LETTER FEH\0" "ARMENIAN SMALL LETTER GHAD\0" "ARMENIAN SMALL LETTER GIM\0" "ARMENIAN SMALL LETTER HO\0" "ARMENIAN SMALL LETTER INI\0" "ARMENIAN SMALL LETTER JA\0" "ARMENIAN SMALL LETTER JHEH\0" "ARMENIAN SMALL LETTER KEH\0" "ARMENIAN SMALL LETTER KEN\0" "ARMENIAN SMALL LETTER LIWN\0" "ARMENIAN SMALL LETTER MEN\0" "ARMENIAN SMALL LETTER NOW\0" "ARMENIAN SMALL LETTER OH\0" "ARMENIAN SMALL LETTER PEH\0" "ARMENIAN SMALL LETTER PIWR\0" "ARMENIAN SMALL LETTER RA\0" "ARMENIAN SMALL LETTER REH\0" "ARMENIAN SMALL LETTER SEH\0" "ARMENIAN SMALL LETTER SHA\0" "ARMENIAN SMALL LETTER TIWN\0" "ARMENIAN SMALL LETTER TO\0" "ARMENIAN SMALL LETTER VEW\0" "ARMENIAN SMALL LETTER VO\0" "ARMENIAN SMALL LETTER XEH\0" "ARMENIAN SMALL LETTER YI\0" "ARMENIAN SMALL LETTER YIWN\0" "ARMENIAN SMALL LETTER ZA\0" "ARMENIAN SMALL LETTER ZHE\0" "ARMENIAN SMALL LIGATURE ECH YIWN\0" "ARMENIAN SMALL LIGATURE MEN ECH\0" "ARMENIAN SMALL LIGATURE MEN INI\0" "ARMENIAN SMALL LIGATURE MEN NOW\0" "ARMENIAN SMALL LIGATURE MEN XEH\0" "ARMENIAN SMALL LIGATURE VEW NOW\0" "ARROW POINTING DOWNWARDS THEN CURVING LEFTWARDS\0" "ARROW POINTING DOWNWARDS THEN CURVING RIGHTWARDS\0" "ARROW POINTING RIGHTWARDS THEN CURVING DOWNWARDS\0" "ARROW POINTING RIGHTWARDS THEN CURVING UPWARDS\0" "ARTICULATED LORRY\0" "ARTIST PALETTE\0" "ASCENDING NODE\0" "ASSERTION\0" "ASTERISK\0" "ASTERISK OPERATOR\0" "ASTERISM\0" "ASTONISHED FACE\0" "ASTRONOMICAL SYMBOL FOR URANUS\0" "ASYMPTOTICALLY EQUAL TO\0" "ATHLETIC SHOE\0" "ATOM SYMBOL\0" "AUBERGINE\0" "AUSTRAL SIGN\0" "AUTOMATED TELLER MACHINE\0" "AUTOMOBILE\0" "AVESTAN ABBREVIATION MARK\0" "AVESTAN LETTER A\0" "AVESTAN LETTER AA\0" "AVESTAN LETTER AAN\0" "AVESTAN LETTER AAO\0" "AVESTAN LETTER AE\0" "AVESTAN LETTER AEE\0" "AVESTAN LETTER AN\0" "AVESTAN LETTER AO\0" "AVESTAN LETTER BE\0" "AVESTAN LETTER BHE\0" "AVESTAN LETTER CE\0" "AVESTAN LETTER DE\0" "AVESTAN LETTER DHE\0" "AVESTAN LETTER E\0" "AVESTAN LETTER EE\0" "AVESTAN LETTER FE\0" "AVESTAN LETTER GE\0" "AVESTAN LETTER GGE\0" "AVESTAN LETTER GHE\0" "AVESTAN LETTER HE\0" "AVESTAN LETTER HME\0" "AVESTAN LETTER I\0" "AVESTAN LETTER II\0" "AVESTAN LETTER JE\0" "AVESTAN LETTER KE\0" "AVESTAN LETTER LE\0" "AVESTAN LETTER ME\0" "AVESTAN LETTER NE\0" "AVESTAN LETTER NGE\0" "AVESTAN LETTER NGVE\0" "AVESTAN LETTER NGYE\0" "AVESTAN LETTER NNE\0" "AVESTAN LETTER NYE\0" "AVESTAN LETTER O\0" "AVESTAN LETTER OO\0" "AVESTAN LETTER PE\0" "AVESTAN LETTER RE\0" "AVESTAN LETTER SE\0" "AVESTAN LETTER SHE\0" "AVESTAN LETTER SHYE\0" "AVESTAN LETTER SSHE\0" "AVESTAN LETTER TE\0" "AVESTAN LETTER THE\0" "AVESTAN LETTER TTE\0" "AVESTAN LETTER U\0" "AVESTAN LETTER UU\0" "AVESTAN LETTER VE\0" "AVESTAN LETTER XE\0" "AVESTAN LETTER XVE\0" "AVESTAN LETTER XYE\0" "AVESTAN LETTER YE\0" "AVESTAN LETTER YYE\0" "AVESTAN LETTER ZE\0" "AVESTAN LETTER ZHE\0" "BABY\0" "BABY ANGEL\0" "BABY BOTTLE\0" "BABY CHICK\0" "BABY SYMBOL\0" "BACK WITH LEFTWARDS ARROW ABOVE\0" "BACK-TILTED SHADOWED WHITE RIGHTWARDS ARROW\0" "BACTRIAN CAMEL\0" "BAGGAGE CLAIM\0" "BALINESE ADEG ADEG\0" "BALINESE CARIK PAMUNGKAH\0" "BALINESE CARIK PAREREN\0" "BALINESE CARIK SIKI\0" "BALINESE DIGIT EIGHT\0" "BALINESE DIGIT FIVE\0" "BALINESE DIGIT FOUR\0" "BALINESE DIGIT NINE\0" "BALINESE DIGIT ONE\0" "BALINESE DIGIT SEVEN\0" "BALINESE DIGIT SIX\0" "BALINESE DIGIT THREE\0" "BALINESE DIGIT TWO\0" "BALINESE DIGIT ZERO\0" "BALINESE LETTER AIKARA\0" "BALINESE LETTER AKARA\0" "BALINESE LETTER AKARA TEDUNG\0" "BALINESE LETTER ASYURA SASAK\0" "BALINESE LETTER BA\0" "BALINESE LETTER BA KEMBANG\0" "BALINESE LETTER CA\0" "BALINESE LETTER CA LACA\0" "BALINESE LETTER DA\0" "BALINESE LETTER DA MADU\0" "BALINESE LETTER DA MURDA ALPAPRANA\0" "BALINESE LETTER DA MURDA MAHAPRANA\0" "BALINESE LETTER EF SASAK\0" "BALINESE LETTER EKARA\0" "BALINESE LETTER GA\0" "BALINESE LETTER GA GORA\0" "BALINESE LETTER HA\0" "BALINESE LETTER IKARA\0" "BALINESE LETTER IKARA TEDUNG\0" "BALINESE LETTER JA\0" "BALINESE LETTER JA JERA\0" "BALINESE LETTER KA\0" "BALINESE LETTER KA MAHAPRANA\0" "BALINESE LETTER KAF SASAK\0" "BALINESE LETTER KHOT SASAK\0" "BALINESE LETTER LA\0" "BALINESE LETTER LA LENGA\0" "BALINESE LETTER LA LENGA TEDUNG\0" "BALINESE LETTER MA\0" "BALINESE LETTER NA\0" "BALINESE LETTER NA RAMBAT\0" "BALINESE LETTER NGA\0" "BALINESE LETTER NYA\0" "BALINESE LETTER OKARA\0" "BALINESE LETTER OKARA TEDUNG\0" "BALINESE LETTER PA\0" "BALINESE LETTER PA KAPAL\0" "BALINESE LETTER RA\0" "BALINESE LETTER RA REPA\0" "BALINESE LETTER RA REPA TEDUNG\0" "BALINESE LETTER SA\0" "BALINESE LETTER SA SAGA\0" "BALINESE LETTER SA SAPA\0" "BALINESE LETTER TA\0" "BALINESE LETTER TA LATIK\0" "BALINESE LETTER TA MURDA MAHAPRANA\0" "BALINESE LETTER TA TAWA\0" "BALINESE LETTER TZIR SASAK\0" "BALINESE LETTER UKARA\0" "BALINESE LETTER UKARA TEDUNG\0" "BALINESE LETTER VE SASAK\0" "BALINESE LETTER WA\0" "BALINESE LETTER YA\0" "BALINESE LETTER ZAL SASAK\0" "BALINESE MUSICAL SYMBOL COMBINING BENDE\0" "BALINESE MUSICAL SYMBOL COMBINING ENDEP\0" "BALINESE MUSICAL SYMBOL COMBINING GONG\0" "BALINESE MUSICAL SYMBOL COMBINING JEGOGAN\0" "BALINESE MUSICAL SYMBOL COMBINING KEMPLI\0" "BALINESE MUSICAL SYMBOL COMBINING KEMPLI WITH JEGOGAN\0" "BALINESE MUSICAL SYMBOL COMBINING KEMPUL\0" "BALINESE MUSICAL SYMBOL COMBINING KEMPUL WITH JEGOGAN\0" "BALINESE MUSICAL SYMBOL COMBINING TEGEH\0" "BALINESE MUSICAL SYMBOL DAENG\0" "BALINESE MUSICAL SYMBOL DAING\0" "BALINESE MUSICAL SYMBOL DANG\0" "BALINESE MUSICAL SYMBOL DANG GEDE\0" "BALINESE MUSICAL SYMBOL DANG SURANG\0" "BALINESE MUSICAL SYMBOL DENG\0" "BALINESE MUSICAL SYMBOL DEUNG\0" "BALINESE MUSICAL SYMBOL DING\0" "BALINESE MUSICAL SYMBOL DONG\0" "BALINESE MUSICAL SYMBOL DUNG\0" "BALINESE MUSICAL SYMBOL LEFT-HAND CLOSED PLAK\0" "BALINESE MUSICAL SYMBOL LEFT-HAND CLOSED PLUK\0" "BALINESE MUSICAL SYMBOL LEFT-HAND OPEN PANG\0" "BALINESE MUSICAL SYMBOL LEFT-HAND OPEN PING\0" "BALINESE MUSICAL SYMBOL LEFT-HAND OPEN PUNG\0" "BALINESE MUSICAL SYMBOL RIGHT-HAND CLOSED TAK\0" "BALINESE MUSICAL SYMBOL RIGHT-HAND CLOSED TUK\0" "BALINESE MUSICAL SYMBOL RIGHT-HAND OPEN DAG\0" "BALINESE MUSICAL SYMBOL RIGHT-HAND OPEN DUG\0" "BALINESE PAMADA\0" "BALINESE PAMENENG\0" "BALINESE PANTI\0" "BALINESE SIGN BISAH\0" "BALINESE SIGN CECEK\0" "BALINESE SIGN REREKAN\0" "BALINESE SIGN SURANG\0" "BALINESE SIGN ULU CANDRA\0" "BALINESE SIGN ULU RICEM\0" "BALINESE VOWEL SIGN LA LENGA\0" "BALINESE VOWEL SIGN LA LENGA TEDUNG\0" "BALINESE VOWEL SIGN PEPET\0" "BALINESE VOWEL SIGN PEPET TEDUNG\0" "BALINESE VOWEL SIGN RA REPA\0" "BALINESE VOWEL SIGN RA REPA TEDUNG\0" "BALINESE VOWEL SIGN SUKU\0" "BALINESE VOWEL SIGN SUKU ILUT\0" "BALINESE VOWEL SIGN TALING\0" "BALINESE VOWEL SIGN TALING REPA\0" "BALINESE VOWEL SIGN TALING REPA TEDUNG\0" "BALINESE VOWEL SIGN TALING TEDUNG\0" "BALINESE VOWEL SIGN TEDUNG\0" "BALINESE VOWEL SIGN ULU\0" "BALINESE VOWEL SIGN ULU SARI\0" "BALINESE WINDU\0" "BALLOON\0" "BALLOON-SPOKED ASTERISK\0" "BALLOT BOX\0" "BALLOT BOX WITH CHECK\0" "BALLOT BOX WITH X\0" "BALLOT X\0" "BAMUM COLON\0" "BAMUM COMBINING MARK KOQNDON\0" "BAMUM COMBINING MARK TUKWENTIS\0" "BAMUM COMMA\0" "BAMUM FULL STOP\0" "BAMUM LETTER A\0" "BAMUM LETTER EE\0" "BAMUM LETTER FAAMAE\0" "BAMUM LETTER FEE\0" "BAMUM LETTER FOM\0" "BAMUM LETTER FU\0" "BAMUM LETTER I\0" "BAMUM LETTER KA\0" "BAMUM LETTER KEN\0" "BAMUM LETTER KET\0" "BAMUM LETTER KEUX\0" "BAMUM LETTER KI\0" "BAMUM LETTER KO\0" "BAMUM LETTER KOGHOM\0" "BAMUM LETTER KOVUU\0" "BAMUM LETTER KPA\0" "BAMUM LETTER KU\0" "BAMUM LETTER KYEE\0" "BAMUM LETTER LA\0" "BAMUM LETTER LEEEE\0" "BAMUM LETTER LI\0" "BAMUM LETTER LOQ\0" "BAMUM LETTER LU\0" "BAMUM LETTER M\0" "BAMUM LETTER MA\0" "BAMUM LETTER MBAA\0" "BAMUM LETTER MBEN\0" "BAMUM LETTER MEEEE\0" "BAMUM LETTER MEN\0" "BAMUM LETTER MI\0" "BAMUM LETTER MO\0" "BAMUM LETTER MU\0" "BAMUM LETTER NA\0" "BAMUM LETTER NDAA\0" "BAMUM LETTER NGA\0" "BAMUM LETTER NGGA\0" "BAMUM LETTER NGKWAEN\0" "BAMUM LETTER NI\0" "BAMUM LETTER NJAEM\0" "BAMUM LETTER NJEE\0" "BAMUM LETTER NJUAE\0" "BAMUM LETTER NSHA\0" "BAMUM LETTER NTEE\0" "BAMUM LETTER NTUU\0" "BAMUM LETTER NU\0" "BAMUM LETTER NUAE\0" "BAMUM LETTER NYI\0" "BAMUM LETTER O\0" "BAMUM LETTER PA\0" "BAMUM LETTER PEE\0" "BAMUM LETTER PEUX\0" "BAMUM LETTER PHASE-A FIRI\0" "BAMUM LETTER PHASE-A GBIEE FON\0" "BAMUM LETTER PHASE-A GHEUAEGHEUAE\0" "BAMUM LETTER PHASE-A GHEUAERAE\0" "BAMUM LETTER PHASE-A KAFA\0" "BAMUM LETTER PHASE-A KAQ\0" "BAMUM LETTER PHASE-A KET\0" "BAMUM LETTER PHASE-A KEUKEUTNDA\0" "BAMUM LETTER PHASE-A KPOQ\0" "BAMUM LETTER PHASE-A KUOQ\0" "BAMUM LETTER PHASE-A LAPAQ\0" "BAMUM LETTER PHASE-A LET KUT\0" "BAMUM LETTER PHASE-A LOMMAE\0" "BAMUM LETTER PHASE-A LU\0" "BAMUM LETTER PHASE-A LUAEP\0" "BAMUM LETTER PHASE-A MAEKEUP\0" "BAMUM LETTER PHASE-A MAEM\0" "BAMUM LETTER PHASE-A MAEMBGBIEE\0" "BAMUM LETTER PHASE-A MAEMKPEN\0" "BAMUM LETTER PHASE-A MAEMVEUX\0" "BAMUM LETTER PHASE-A MAENYI\0" "BAMUM LETTER PHASE-A MAESI\0" "BAMUM LETTER PHASE-A MANSUAE\0" "BAMUM LETTER PHASE-A MAP PIEET\0" "BAMUM LETTER PHASE-A MBANYI\0" "BAMUM LETTER PHASE-A MBAQ\0" "BAMUM LETTER PHASE-A MEUNJOMNDEUQ\0" "BAMUM LETTER PHASE-A MGBASA\0" "BAMUM LETTER PHASE-A MON NGGEUAET\0" "BAMUM LETTER PHASE-A MOOMEUT\0" "BAMUM LETTER PHASE-A MOOMPUQ\0" "BAMUM LETTER PHASE-A MVEUAENGAM\0" "BAMUM LETTER PHASE-A NAA MFON\0" "BAMUM LETTER PHASE-A NAQ\0" "BAMUM LETTER PHASE-A NDA LEERAEWA\0" "BAMUM LETTER PHASE-A NDAANGGEUAET\0" "BAMUM LETTER PHASE-A NEN\0" "BAMUM LETTER PHASE-A NGANGU\0" "BAMUM LETTER PHASE-A NGGEN\0" "BAMUM LETTER PHASE-A NGKUE MFON\0" "BAMUM LETTER PHASE-A NGKUENZEUM\0" "BAMUM LETTER PHASE-A NIKA\0" "BAMUM LETTER PHASE-A NJAM\0" "BAMUM LETTER PHASE-A NKAARAE\0" "BAMUM LETTER PHASE-A NKINDI\0" "BAMUM LETTER PHASE-A NSHA\0" "BAMUM LETTER PHASE-A NSHIEE\0" "BAMUM LETTER PHASE-A NTAP\0" "BAMUM LETTER PHASE-A NTAP MFAA\0" "BAMUM LETTER PHASE-A NTAP NTAA\0" "BAMUM LETTER PHASE-A NTOQPEN\0" "BAMUM LETTER PHASE-A NYET\0" "BAMUM LETTER PHASE-A NYI\0" "BAMUM LETTER PHASE-A NYIT MONGKEUAEQ\0" "BAMUM LETTER PHASE-A NZA MFON\0" "BAMUM LETTER PHASE-A NZUN MEUT\0" "BAMUM LETTER PHASE-A PA LEERAEWA\0" "BAMUM LETTER PHASE-A PAAM\0" "BAMUM LETTER PHASE-A PAARAE\0" "BAMUM LETTER PHASE-A PAMSHAE\0" "BAMUM LETTER PHASE-A PASHAE\0" "BAMUM LETTER PHASE-A PET\0" "BAMUM LETTER PHASE-A PON MFON PIPAEMBA\0" "BAMUM LETTER PHASE-A PON MFON PIPAEMGBIEE\0" "BAMUM LETTER PHASE-A PON PA NJI PIPAEMBA\0" "BAMUM LETTER PHASE-A PON PA NJI PIPAEMGBIEE\0" "BAMUM LETTER PHASE-A PUP\0" "BAMUM LETTER PHASE-A ROM\0" "BAMUM LETTER PHASE-A SEUNYAM\0" "BAMUM LETTER PHASE-A SHINDA PA NJI\0" "BAMUM LETTER PHASE-A SHIRAE\0" "BAMUM LETTER PHASE-A SHOQ NSHUT YUM\0" "BAMUM LETTER PHASE-A SHUENSHUET\0" "BAMUM LETTER PHASE-A SHUM\0" "BAMUM LETTER PHASE-A SISA\0" "BAMUM LETTER PHASE-A SONJAM\0" "BAMUM LETTER PHASE-A SOQ\0" "BAMUM LETTER PHASE-A SOT\0" "BAMUM LETTER PHASE-A SUU\0" "BAMUM LETTER PHASE-A TEUAEN\0" "BAMUM LETTER PHASE-A TEUTEUWEN\0" "BAMUM LETTER PHASE-A TITA MFON\0" "BAMUM LETTER PHASE-A TU MAEMBA\0" "BAMUM LETTER PHASE-A TUAEP\0" "BAMUM LETTER PHASE-A U YUQ NAE\0" "BAMUM LETTER PHASE-A UNKNOWN\0" "BAMUM LETTER PHASE-A VEE\0" "BAMUM LETTER PHASE-B FEE\0" "BAMUM LETTER PHASE-B FEUX\0" "BAMUM LETTER PHASE-B GHEUGHEN\0" "BAMUM LETTER PHASE-B GHEUGHEUAEM\0" "BAMUM LETTER PHASE-B KAM\0" "BAMUM LETTER PHASE-B KEUAEM\0" "BAMUM LETTER PHASE-B KEUPUQ\0" "BAMUM LETTER PHASE-B KEUYEUX\0" "BAMUM LETTER PHASE-B KIEEM\0" "BAMUM LETTER PHASE-B KIQ\0" "BAMUM LETTER PHASE-B LAANAE\0" "BAMUM LETTER PHASE-B LAM NSHUT NYAM\0" "BAMUM LETTER PHASE-B LET\0" "BAMUM LETTER PHASE-B LOM NTEUM\0" "BAMUM LETTER PHASE-B MA\0" "BAMUM LETTER PHASE-B MA NJEUAENA\0" "BAMUM LETTER PHASE-B MA NJUQA\0" "BAMUM LETTER PHASE-B MBA MAELEE\0" "BAMUM LETTER PHASE-B MBAARAE\0" "BAMUM LETTER PHASE-B MBEURI\0" "BAMUM LETTER PHASE-B MBIT MBAAKET\0" "BAMUM LETTER PHASE-B MBUOQ\0" "BAMUM LETTER PHASE-B MEUQ\0" "BAMUM LETTER PHASE-B MEUT NGGEET\0" "BAMUM LETTER PHASE-B MFIYAQ\0" "BAMUM LETTER PHASE-B MFON TEUAEQ\0" "BAMUM LETTER PHASE-B MONTIEEN\0" "BAMUM LETTER PHASE-B NDU NJAA\0" "BAMUM LETTER PHASE-B NGGAAM\0" "BAMUM LETTER PHASE-B NGGEU MBU\0" "BAMUM LETTER PHASE-B NGGUOQ\0" "BAMUM LETTER PHASE-B NGGUOQ LARGE\0" "BAMUM LETTER PHASE-B NGKINDI MVOP\0" "BAMUM LETTER PHASE-B NGOM\0" "BAMUM LETTER PHASE-B NSEN\0" "BAMUM LETTER PHASE-B NSHUET\0" "BAMUM LETTER PHASE-B NTIEE SHEUOQ\0" "BAMUM LETTER PHASE-B NYAEMAE\0" "BAMUM LETTER PHASE-B NYI NTEUM\0" "BAMUM LETTER PHASE-B PARUM\0" "BAMUM LETTER PHASE-B PEESHI\0" "BAMUM LETTER PHASE-B PIT\0" "BAMUM LETTER PHASE-B PUNGAAM\0" "BAMUM LETTER PHASE-B SAKEUAE\0" "BAMUM LETTER PHASE-B SET TU\0" "BAMUM LETTER PHASE-B SHET NJAQ\0" "BAMUM LETTER PHASE-B SHEUAEQTU\0" "BAMUM LETTER PHASE-B SIEE\0" "BAMUM LETTER PHASE-B SUE\0" "BAMUM LETTER PHASE-B TAAM\0" "BAMUM LETTER PHASE-B TU MAEMGBIEE\0" "BAMUM LETTER PHASE-B TU NSIEE\0" "BAMUM LETTER PHASE-B VEUM\0" "BAMUM LETTER PHASE-B WUAET\0" "BAMUM LETTER PHASE-B YAFU LEERAEWA\0" "BAMUM LETTER PHASE-B YEURAE\0" "BAMUM LETTER PHASE-C BUNG\0" "BAMUM LETTER PHASE-C FUE\0" "BAMUM LETTER PHASE-C GBAYI\0" "BAMUM LETTER PHASE-C GHAP\0" "BAMUM LETTER PHASE-C GHARAE\0" "BAMUM LETTER PHASE-C KAA\0" "BAMUM LETTER PHASE-C KEN FATIGUE\0" "BAMUM LETTER PHASE-C KEN LAW\0" "BAMUM LETTER PHASE-C KET\0" "BAMUM LETTER PHASE-C KEUKAQ\0" "BAMUM LETTER PHASE-C KEUM\0" "BAMUM LETTER PHASE-C KEUSEUX\0" "BAMUM LETTER PHASE-C KEUSHEUAEP\0" "BAMUM LETTER PHASE-C KPARAQ\0" "BAMUM LETTER PHASE-C KUOP NKAARAE\0" "BAMUM LETTER PHASE-C KUT\0" "BAMUM LETTER PHASE-C LAM\0" "BAMUM LETTER PHASE-C LAP\0" "BAMUM LETTER PHASE-C LIQ\0" "BAMUM LETTER PHASE-C LU\0" "BAMUM LETTER PHASE-C MA KEUAERI\0" "BAMUM LETTER PHASE-C MA NSIEE\0" "BAMUM LETTER PHASE-C MAEMBA\0" "BAMUM LETTER PHASE-C MAESI\0" "BAMUM LETTER PHASE-C MBAA CABBAGE-TREE\0" "BAMUM LETTER PHASE-C MBAA PICKET\0" "BAMUM LETTER PHASE-C MBANYI\0" "BAMUM LETTER PHASE-C MBEEKEET\0" "BAMUM LETTER PHASE-C MBERAE\0" "BAMUM LETTER PHASE-C MBEUM\0" "BAMUM LETTER PHASE-C MBEUX\0" "BAMUM LETTER PHASE-C MBI\0" "BAMUM LETTER PHASE-C MBIRIEEN\0" "BAMUM LETTER PHASE-C MBIT\0" "BAMUM LETTER PHASE-C MBUAEM\0" "BAMUM LETTER PHASE-C MBUE\0" "BAMUM LETTER PHASE-C MGBASAQ\0" "BAMUM LETTER PHASE-C MIEE\0" "BAMUM LETTER PHASE-C MUAE\0" "BAMUM LETTER PHASE-C NANSANAQ\0" "BAMUM LETTER PHASE-C NAQ\0" "BAMUM LETTER PHASE-C NDAM\0" "BAMUM LETTER PHASE-C NDAP\0" "BAMUM LETTER PHASE-C NDEUAEREE\0" "BAMUM LETTER PHASE-C NDEUT\0" "BAMUM LETTER PHASE-C NDIDA\0" "BAMUM LETTER PHASE-C NDOMBU\0" "BAMUM LETTER PHASE-C NGAQ\0" "BAMUM LETTER PHASE-C NGGEN\0" "BAMUM LETTER PHASE-C NGGU\0" "BAMUM LETTER PHASE-C NGGUAEN NYAM\0" "BAMUM LETTER PHASE-C NGGUEET\0" "BAMUM LETTER PHASE-C NGGUM\0" "BAMUM LETTER PHASE-C NGGUON\0" "BAMUM LETTER PHASE-C NGKAQ\0" "BAMUM LETTER PHASE-C NGKUE MAEMBA\0" "BAMUM LETTER PHASE-C NGOM\0" "BAMUM LETTER PHASE-C NJAEM\0" "BAMUM LETTER PHASE-C NJAM\0" "BAMUM LETTER PHASE-C NJEEEE\0" "BAMUM LETTER PHASE-C NJEUX\0" "BAMUM LETTER PHASE-C NJUEQ\0" "BAMUM LETTER PHASE-C NSA\0" "BAMUM LETTER PHASE-C NSEUAEN\0" "BAMUM LETTER PHASE-C NSHAQ\0" "BAMUM LETTER PHASE-C NSOM\0" "BAMUM LETTER PHASE-C NSUN\0" "BAMUM LETTER PHASE-C NSUOT NGOM\0" "BAMUM LETTER PHASE-C NTAA\0" "BAMUM LETTER PHASE-C NTEN\0" "BAMUM LETTER PHASE-C NTEUNGBA\0" "BAMUM LETTER PHASE-C NTU MBIT\0" "BAMUM LETTER PHASE-C NYIR MKPARAQ MEUN\0" "BAMUM LETTER PHASE-C NZA\0" "BAMUM LETTER PHASE-C NZEUM\0" "BAMUM LETTER PHASE-C PEN\0" "BAMUM LETTER PHASE-C PIN\0" "BAMUM LETTER PHASE-C PIRIEEN\0" "BAMUM LETTER PHASE-C RU\0" "BAMUM LETTER PHASE-C SETFON\0" "BAMUM LETTER PHASE-C SEUX\0" "BAMUM LETTER PHASE-C SHIQ\0" "BAMUM LETTER PHASE-C SHUEQ\0" "BAMUM LETTER PHASE-C SUAET\0" "BAMUM LETTER PHASE-C TAASHAE\0" "BAMUM LETTER PHASE-C TET\0" "BAMUM LETTER PHASE-C TEUTEUX\0" "BAMUM LETTER PHASE-C TITA YUE\0" "BAMUM LETTER PHASE-C TITUAEP\0" "BAMUM LETTER PHASE-C VEUAEPEN\0" "BAMUM LETTER PHASE-C VEUX\0" "BAMUM LETTER PHASE-C WANGKUOQ\0" "BAMUM LETTER PHASE-C WUP\0" "BAMUM LETTER PHASE-C YAA\0" "BAMUM LETTER PHASE-C YEUQ\0" "BAMUM LETTER PHASE-C YU MUOMAE\0" "BAMUM LETTER PHASE-C YUM\0" "BAMUM LETTER PHASE-C YUWOQ\0" "BAMUM LETTER PHASE-D FAA\0" "BAMUM LETTER PHASE-D FEUFEUAET\0" "BAMUM LETTER PHASE-D GHAA\0" "BAMUM LETTER PHASE-D GHEUAE\0" "BAMUM LETTER PHASE-D KET\0" "BAMUM LETTER PHASE-D KEUAETMEUN\0" "BAMUM LETTER PHASE-D KEUM\0" "BAMUM LETTER PHASE-D KEUOT MBUAE\0" "BAMUM LETTER PHASE-D KEUP\0" "BAMUM LETTER PHASE-D KU\0" "BAMUM LETTER PHASE-D KUN\0" "BAMUM LETTER PHASE-D KUOM\0" "BAMUM LETTER PHASE-D KUQ\0" "BAMUM LETTER PHASE-D KWAET\0" "BAMUM LETTER PHASE-D KYEE\0" "BAMUM LETTER PHASE-D LEEEE\0" "BAMUM LETTER PHASE-D LET\0" "BAMUM LETTER PHASE-D LEUAEP\0" "BAMUM LETTER PHASE-D LEUM\0" "BAMUM LETTER PHASE-D LIEE\0" "BAMUM LETTER PHASE-D LOQ\0" "BAMUM LETTER PHASE-D LUM\0" "BAMUM LETTER PHASE-D M\0" "BAMUM LETTER PHASE-D MAENJET\0" "BAMUM LETTER PHASE-D MALEERI\0" "BAMUM LETTER PHASE-D MBAA\0" "BAMUM LETTER PHASE-D MBAA SEVEN\0" "BAMUM LETTER PHASE-D MBUO\0" "BAMUM LETTER PHASE-D MEEEE\0" "BAMUM LETTER PHASE-D MEUN\0" "BAMUM LETTER PHASE-D MEUT\0" "BAMUM LETTER PHASE-D MFEUAE\0" "BAMUM LETTER PHASE-D MFEUT\0" "BAMUM LETTER PHASE-D MFIEE\0" "BAMUM LETTER PHASE-D MFO\0" "BAMUM LETTER PHASE-D MFON\0" "BAMUM LETTER PHASE-D MGBEUN\0" "BAMUM LETTER PHASE-D MGBIEE\0" "BAMUM LETTER PHASE-D MGBOFUM\0" "BAMUM LETTER PHASE-D MONI\0" "BAMUM LETTER PHASE-D MU\0" "BAMUM LETTER PHASE-D MVOP\0" "BAMUM LETTER PHASE-D NDAM\0" "BAMUM LETTER PHASE-D NDEE\0" "BAMUM LETTER PHASE-D NDEUX\0" "BAMUM LETTER PHASE-D NDON\0" "BAMUM LETTER PHASE-D NGGAAM\0" "BAMUM LETTER PHASE-D NGGAAMAE\0" "BAMUM LETTER PHASE-D NGGAP\0" "BAMUM LETTER PHASE-D NGGEUX\0" "BAMUM LETTER PHASE-D NGGUOM\0" "BAMUM LETTER PHASE-D NGGWAEN\0" "BAMUM LETTER PHASE-D NGKAP\0" "BAMUM LETTER PHASE-D NGKEUAEQ\0" "BAMUM LETTER PHASE-D NGKEURI\0" "BAMUM LETTER PHASE-D NGKIEE\0" "BAMUM LETTER PHASE-D NGKUN\0" "BAMUM LETTER PHASE-D NGKYEE\0" "BAMUM LETTER PHASE-D NI\0" "BAMUM LETTER PHASE-D NJAP\0" "BAMUM LETTER PHASE-D NJEUAEM\0" "BAMUM LETTER PHASE-D NJEUT\0" "BAMUM LETTER PHASE-D NJI\0" "BAMUM LETTER PHASE-D NJIEE\0" "BAMUM LETTER PHASE-D NJUEQ\0" "BAMUM LETTER PHASE-D NSHEE\0" "BAMUM LETTER PHASE-D NSHUT\0" "BAMUM LETTER PHASE-D NSIEEP\0" "BAMUM LETTER PHASE-D NSIEET\0" "BAMUM LETTER PHASE-D NSUM\0" "BAMUM LETTER PHASE-D NTEE\0" "BAMUM LETTER PHASE-D NTEUM\0" "BAMUM LETTER PHASE-D NTUU\0" "BAMUM LETTER PHASE-D NU\0" "BAMUM LETTER PHASE-D NYAM\0" "BAMUM LETTER PHASE-D NYET\0" "BAMUM LETTER PHASE-D NYI\0" "BAMUM LETTER PHASE-D NYUE\0" "BAMUM LETTER PHASE-D PAP\0" "BAMUM LETTER PHASE-D PEE\0" "BAMUM LETTER PHASE-D PEUTAE\0" "BAMUM LETTER PHASE-D PIP\0" "BAMUM LETTER PHASE-D PUQ\0" "BAMUM LETTER PHASE-D PUUT\0" "BAMUM LETTER PHASE-D RAEM\0" "BAMUM LETTER PHASE-D REN MUCH\0" "BAMUM LETTER PHASE-D REN OLD\0" "BAMUM LETTER PHASE-D RII\0" "BAMUM LETTER PHASE-D SAP\0" "BAMUM LETTER PHASE-D SAQ\0" "BAMUM LETTER PHASE-D SEUAEQ\0" "BAMUM LETTER PHASE-D SHEE\0" "BAMUM LETTER PHASE-D SHEUAE\0" "BAMUM LETTER PHASE-D SHEUX\0" "BAMUM LETTER PHASE-D SHII\0" "BAMUM LETTER PHASE-D SHOQ\0" "BAMUM LETTER PHASE-D SHU\0" "BAMUM LETTER PHASE-D SOT\0" "BAMUM LETTER PHASE-D SUAE\0" "BAMUM LETTER PHASE-D SUE\0" "BAMUM LETTER PHASE-D SUU\0" "BAMUM LETTER PHASE-D TAE\0" "BAMUM LETTER PHASE-D TEEEE\0" "BAMUM LETTER PHASE-D TEUAEN\0" "BAMUM LETTER PHASE-D TEUN\0" "BAMUM LETTER PHASE-D TEUT\0" "BAMUM LETTER PHASE-D TI\0" "BAMUM LETTER PHASE-D TOQ\0" "BAMUM LETTER PHASE-D TU\0" "BAMUM LETTER PHASE-D TUOT\0" "BAMUM LETTER PHASE-D WAP\0" "BAMUM LETTER PHASE-D WUAEN\0" "BAMUM LETTER PHASE-D YAEMMAE\0" "BAMUM LETTER PHASE-D YEN\0" "BAMUM LETTER PHASE-D YUOM\0" "BAMUM LETTER PHASE-D YUOP\0" "BAMUM LETTER PHASE-D YUWOQ\0" "BAMUM LETTER PHASE-E A\0" "BAMUM LETTER PHASE-E FA\0" "BAMUM LETTER PHASE-E FAQ\0" "BAMUM LETTER PHASE-E FEE\0" "BAMUM LETTER PHASE-E FOM\0" "BAMUM LETTER PHASE-E FU CALL\0" "BAMUM LETTER PHASE-E FU I\0" "BAMUM LETTER PHASE-E FU REMEDY\0" "BAMUM LETTER PHASE-E FUE\0" "BAMUM LETTER PHASE-E FUET\0" "BAMUM LETTER PHASE-E GBET\0" "BAMUM LETTER PHASE-E GBEUX\0" "BAMUM LETTER PHASE-E GHAAMAE\0" "BAMUM LETTER PHASE-E GHET\0" "BAMUM LETTER PHASE-E GHEUAE\0" "BAMUM LETTER PHASE-E GHEUN\0" "BAMUM LETTER PHASE-E GHEUX\0" "BAMUM LETTER PHASE-E GHOM\0" "BAMUM LETTER PHASE-E I\0" "BAMUM LETTER PHASE-E KET\0" "BAMUM LETTER PHASE-E KEUAE\0" "BAMUM LETTER PHASE-E KEUX\0" "BAMUM LETTER PHASE-E KI\0" "BAMUM LETTER PHASE-E KO\0" "BAMUM LETTER PHASE-E KPEUX\0" "BAMUM LETTER PHASE-E KUET\0" "BAMUM LETTER PHASE-E KUOP\0" "BAMUM LETTER PHASE-E KUT\0" "BAMUM LETTER PHASE-E LAAM\0" "BAMUM LETTER PHASE-E LAP\0" "BAMUM LETTER PHASE-E LAQ\0" "BAMUM LETTER PHASE-E LEUAEM\0" "BAMUM LETTER PHASE-E LOM\0" "BAMUM LETTER PHASE-E LOON\0" "BAMUM LETTER PHASE-E LOOT\0" "BAMUM LETTER PHASE-E LOQ\0" "BAMUM LETTER PHASE-E LU\0" "BAMUM LETTER PHASE-E MA\0" "BAMUM LETTER PHASE-E MAE\0" "BAMUM LETTER PHASE-E MAEM\0" "BAMUM LETTER PHASE-E MAP\0" "BAMUM LETTER PHASE-E MAQ\0" "BAMUM LETTER PHASE-E MBEE\0" "BAMUM LETTER PHASE-E MBEUM\0" "BAMUM LETTER PHASE-E MEN\0" "BAMUM LETTER PHASE-E MFEUQ\0" "BAMUM LETTER PHASE-E MGBA\0" "BAMUM LETTER PHASE-E MGBEN\0" "BAMUM LETTER PHASE-E MI\0" "BAMUM LETTER PHASE-E MIEE\0" "BAMUM LETTER PHASE-E MON\0" "BAMUM LETTER PHASE-E MUAE\0" "BAMUM LETTER PHASE-E MVI\0" "BAMUM LETTER PHASE-E NA\0" "BAMUM LETTER PHASE-E NAE\0" "BAMUM LETTER PHASE-E NDAA MY HOUSE\0" "BAMUM LETTER PHASE-E NDAA SOFTNESS\0" "BAMUM LETTER PHASE-E NDAP\0" "BAMUM LETTER PHASE-E NDIAQ\0" "BAMUM LETTER PHASE-E NDIQ\0" "BAMUM LETTER PHASE-E NDUN\0" "BAMUM LETTER PHASE-E NGA\0" "BAMUM LETTER PHASE-E NGEUREUT\0" "BAMUM LETTER PHASE-E NGGEEEE\0" "BAMUM LETTER PHASE-E NGGEUAE\0" "BAMUM LETTER PHASE-E NGGEUAET\0" "BAMUM LETTER PHASE-E NGGUAESHAE NYAM\0" "BAMUM LETTER PHASE-E NGGUP\0" "BAMUM LETTER PHASE-E NGGURAE\0" "BAMUM LETTER PHASE-E NGKA\0" "BAMUM LETTER PHASE-E NGKAAMI\0" "BAMUM LETTER PHASE-E NGKEUAEM\0" "BAMUM LETTER PHASE-E NGKEUX\0" "BAMUM LETTER PHASE-E NGKUM\0" "BAMUM LETTER PHASE-E NGKUP\0" "BAMUM LETTER PHASE-E NGOP\0" "BAMUM LETTER PHASE-E NGOQ\0" "BAMUM LETTER PHASE-E NGUAE\0" "BAMUM LETTER PHASE-E NGUAET\0" "BAMUM LETTER PHASE-E NJAEMLI\0" "BAMUM LETTER PHASE-E NJEE\0" "BAMUM LETTER PHASE-E NJEE EPOCH\0" "BAMUM LETTER PHASE-E NJEUX\0" "BAMUM LETTER PHASE-E NKOM\0" "BAMUM LETTER PHASE-E NSHIEE\0" "BAMUM LETTER PHASE-E NSHUE\0" "BAMUM LETTER PHASE-E NSHUOP\0" "BAMUM LETTER PHASE-E NTAP\0" "BAMUM LETTER PHASE-E NTUM\0" "BAMUM LETTER PHASE-E NYI BETWEEN\0" "BAMUM LETTER PHASE-E NYI CLEAVER\0" "BAMUM LETTER PHASE-E NZAQ\0" "BAMUM LETTER PHASE-E NZUQ\0" "BAMUM LETTER PHASE-E O\0" "BAMUM LETTER PHASE-E PA PEOPLE\0" "BAMUM LETTER PHASE-E PA PLURAL\0" "BAMUM LETTER PHASE-E PAA\0" "BAMUM LETTER PHASE-E PAAM\0" "BAMUM LETTER PHASE-E PEEM\0" "BAMUM LETTER PHASE-E PEUT\0" "BAMUM LETTER PHASE-E PEUX\0" "BAMUM LETTER PHASE-E PI\0" "BAMUM LETTER PHASE-E PIEEQ\0" "BAMUM LETTER PHASE-E PIET\0" "BAMUM LETTER PHASE-E PO\0" "BAMUM LETTER PHASE-E POON\0" "BAMUM LETTER PHASE-E PU\0" "BAMUM LETTER PHASE-E PUAE\0" "BAMUM LETTER PHASE-E PUAQ\0" "BAMUM LETTER PHASE-E PUE\0" "BAMUM LETTER PHASE-E PUM\0" "BAMUM LETTER PHASE-E RAE\0" "BAMUM LETTER PHASE-E RAQ\0" "BAMUM LETTER PHASE-E REUX\0" "BAMUM LETTER PHASE-E RIMGBA\0" "BAMUM LETTER PHASE-E SAA\0" "BAMUM LETTER PHASE-E SEE\0" "BAMUM LETTER PHASE-E SET\0" "BAMUM LETTER PHASE-E SHEUAEQ\0" "BAMUM LETTER PHASE-E SHIQ\0" "BAMUM LETTER PHASE-E SHO\0" "BAMUM LETTER PHASE-E SHOQ\0" "BAMUM LETTER PHASE-E SOM\0" "BAMUM LETTER PHASE-E SUAEN\0" "BAMUM LETTER PHASE-E TAA\0" "BAMUM LETTER PHASE-E TAAQ\0" "BAMUM LETTER PHASE-E TAEN NTEUM\0" "BAMUM LETTER PHASE-E TAM\0" "BAMUM LETTER PHASE-E TAQ\0" "BAMUM LETTER PHASE-E TEN\0" "BAMUM LETTER PHASE-E TEU\0" "BAMUM LETTER PHASE-E TEUAEQ\0" "BAMUM LETTER PHASE-E TOO\0" "BAMUM LETTER PHASE-E TOON\0" "BAMUM LETTER PHASE-E TOQ\0" "BAMUM LETTER PHASE-E TUAE\0" "BAMUM LETTER PHASE-E TUM\0" "BAMUM LETTER PHASE-E TUMAE\0" "BAMUM LETTER PHASE-E VEE\0" "BAMUM LETTER PHASE-E VEUAE\0" "BAMUM LETTER PHASE-E VOM\0" "BAMUM LETTER PHASE-E WEUX\0" "BAMUM LETTER PHASE-E WUE\0" "BAMUM LETTER PHASE-E WUO\0" "BAMUM LETTER PHASE-E YAP\0" "BAMUM LETTER PHASE-E YEUAE\0" "BAMUM LETTER PHASE-E YEUAET\0" "BAMUM LETTER PHASE-E YEUM\0" "BAMUM LETTER PHASE-E YEUX\0" "BAMUM LETTER PHASE-E YIEE\0" "BAMUM LETTER PHASE-E YIT\0" "BAMUM LETTER PHASE-E YOQ COVER\0" "BAMUM LETTER PHASE-E YOQ SWIMMING\0" "BAMUM LETTER PHASE-E YUAEN\0" "BAMUM LETTER PHASE-E YUEQ\0" "BAMUM LETTER PHASE-E YUN\0" "BAMUM LETTER PHASE-E YUQ\0" "BAMUM LETTER PHASE-F EE\0" "BAMUM LETTER PHASE-F FOM\0" "BAMUM LETTER PHASE-F KA\0" "BAMUM LETTER PHASE-F KEN\0" "BAMUM LETTER PHASE-F KET\0" "BAMUM LETTER PHASE-F KO\0" "BAMUM LETTER PHASE-F KPA\0" "BAMUM LETTER PHASE-F KU\0" "BAMUM LETTER PHASE-F KYEE\0" "BAMUM LETTER PHASE-F LA\0" "BAMUM LETTER PHASE-F LI\0" "BAMUM LETTER PHASE-F LOQ\0" "BAMUM LETTER PHASE-F M\0" "BAMUM LETTER PHASE-F MA\0" "BAMUM LETTER PHASE-F MBAA\0" "BAMUM LETTER PHASE-F MBEN\0" "BAMUM LETTER PHASE-F MEEEE\0" "BAMUM LETTER PHASE-F MO\0" "BAMUM LETTER PHASE-F NDAA\0" "BAMUM LETTER PHASE-F NGGA\0" "BAMUM LETTER PHASE-F NGKWAEN\0" "BAMUM LETTER PHASE-F NI\0" "BAMUM LETTER PHASE-F NJAEM\0" "BAMUM LETTER PHASE-F NJUAE\0" "BAMUM LETTER PHASE-F NSHA\0" "BAMUM LETTER PHASE-F NTEE\0" "BAMUM LETTER PHASE-F NU\0" "BAMUM LETTER PHASE-F NUAE\0" "BAMUM LETTER PHASE-F NYI\0" "BAMUM LETTER PHASE-F PEE\0" "BAMUM LETTER PHASE-F PEUX\0" "BAMUM LETTER PHASE-F PUAE\0" "BAMUM LETTER PHASE-F REE\0" "BAMUM LETTER PHASE-F REN\0" "BAMUM LETTER PHASE-F REUX\0" "BAMUM LETTER PHASE-F RIEE\0" "BAMUM LETTER PHASE-F RII\0" "BAMUM LETTER PHASE-F RU\0" "BAMUM LETTER PHASE-F SAMBA\0" "BAMUM LETTER PHASE-F SEUX\0" "BAMUM LETTER PHASE-F SHII\0" "BAMUM LETTER PHASE-F SHO\0" "BAMUM LETTER PHASE-F SHU\0" "BAMUM LETTER PHASE-F SI\0" "BAMUM LETTER PHASE-F SUU\0" "BAMUM LETTER PHASE-F TAA\0" "BAMUM LETTER PHASE-F TAE\0" "BAMUM LETTER PHASE-F TET\0" "BAMUM LETTER PHASE-F U\0" "BAMUM LETTER PHASE-F VUEQ\0" "BAMUM LETTER PHASE-F WA\0" "BAMUM LETTER PHASE-F WUE\0" "BAMUM LETTER PHASE-F YA\0" "BAMUM LETTER PHASE-F YOQ\0" "BAMUM LETTER PI\0" "BAMUM LETTER PUAE\0" "BAMUM LETTER PUE\0" "BAMUM LETTER RAE\0" "BAMUM LETTER REE\0" "BAMUM LETTER REN\0" "BAMUM LETTER REUX\0" "BAMUM LETTER RIEE\0" "BAMUM LETTER RII\0" "BAMUM LETTER RU\0" "BAMUM LETTER SAMBA\0" "BAMUM LETTER SEUX\0" "BAMUM LETTER SHEUX\0" "BAMUM LETTER SHII\0" "BAMUM LETTER SHO\0" "BAMUM LETTER SHU\0" "BAMUM LETTER SI\0" "BAMUM LETTER SUU\0" "BAMUM LETTER TAA\0" "BAMUM LETTER TAE\0" "BAMUM LETTER TEN\0" "BAMUM LETTER TET\0" "BAMUM LETTER TI\0" "BAMUM LETTER U\0" "BAMUM LETTER WA\0" "BAMUM LETTER WUE\0" "BAMUM LETTER YA\0" "BAMUM LETTER YOQ\0" "BAMUM LETTER YUQ\0" "BAMUM NJAEMLI\0" "BAMUM QUESTION MARK\0" "BAMUM SEMICOLON\0" "BANANA\0" "BANK\0" "BANKNOTE WITH DOLLAR SIGN\0" "BANKNOTE WITH EURO SIGN\0" "BANKNOTE WITH POUND SIGN\0" "BANKNOTE WITH YEN SIGN\0" "BAR CHART\0" "BARBER POLE\0" "BASEBALL\0" "BASKETBALL AND HOOP\0" "BATAK CONSONANT SIGN H\0" "BATAK CONSONANT SIGN NG\0" "BATAK LETTER A\0" "BATAK LETTER BA\0" "BATAK LETTER CA\0" "BATAK LETTER DA\0" "BATAK LETTER GA\0" "BATAK LETTER HA\0" "BATAK LETTER I\0" "BATAK LETTER JA\0" "BATAK LETTER KARO BA\0" "BATAK LETTER LA\0" "BATAK LETTER MA\0" "BATAK LETTER MANDAILING HA\0" "BATAK LETTER MANDAILING NA\0" "BATAK LETTER MANDAILING SA\0" "BATAK LETTER MBA\0" "BATAK LETTER NA\0" "BATAK LETTER NDA\0" "BATAK LETTER NGA\0" "BATAK LETTER NORTHERN TA\0" "BATAK LETTER NYA\0" "BATAK LETTER PA\0" "BATAK LETTER PAKPAK WA\0" "BATAK LETTER RA\0" "BATAK LETTER SA\0" "BATAK LETTER SIMALUNGUN A\0" "BATAK LETTER SIMALUNGUN GA\0" "BATAK LETTER SIMALUNGUN HA\0" "BATAK LETTER SIMALUNGUN LA\0" "BATAK LETTER SIMALUNGUN MA\0" "BATAK LETTER SIMALUNGUN PA\0" "BATAK LETTER SIMALUNGUN RA\0" "BATAK LETTER SIMALUNGUN SA\0" "BATAK LETTER SIMALUNGUN WA\0" "BATAK LETTER SIMALUNGUN YA\0" "BATAK LETTER SOUTHERN TA\0" "BATAK LETTER U\0" "BATAK LETTER WA\0" "BATAK LETTER YA\0" "BATAK PANGOLAT\0" "BATAK PANONGONAN\0" "BATAK SIGN TOMPI\0" "BATAK SYMBOL BINDU JUDUL\0" "BATAK SYMBOL BINDU NA METEK\0" "BATAK SYMBOL BINDU PANGOLAT\0" "BATAK SYMBOL BINDU PINARBORAS\0" "BATAK VOWEL SIGN E\0" "BATAK VOWEL SIGN EE\0" "BATAK VOWEL SIGN I\0" "BATAK VOWEL SIGN KARO I\0" "BATAK VOWEL SIGN KARO O\0" "BATAK VOWEL SIGN O\0" "BATAK VOWEL SIGN PAKPAK E\0" "BATAK VOWEL SIGN U\0" "BATAK VOWEL SIGN U FOR SIMALUNGUN SA\0" "BATH\0" "BATHTUB\0" "BATTERY\0" "BEAMED EIGHTH NOTES\0" "BEAMED SIXTEENTH NOTES\0" "BEAR FACE\0" "BEATING HEART\0" "BECAUSE\0" "BEER MUG\0" "BELL\0" "BELL SYMBOL\0" "BELL WITH CANCELLATION STROKE\0" "BENGALI AU LENGTH MARK\0" "BENGALI CURRENCY DENOMINATOR SIXTEEN\0" "BENGALI CURRENCY NUMERATOR FOUR\0" "BENGALI CURRENCY NUMERATOR ONE\0" "BENGALI CURRENCY NUMERATOR ONE LESS THAN THE DENOMINATOR\0" "BENGALI CURRENCY NUMERATOR THREE\0" "BENGALI CURRENCY NUMERATOR TWO\0" "BENGALI DIGIT EIGHT\0" "BENGALI DIGIT FIVE\0" "BENGALI DIGIT FOUR\0" "BENGALI DIGIT NINE\0" "BENGALI DIGIT ONE\0" "BENGALI DIGIT SEVEN\0" "BENGALI DIGIT SIX\0" "BENGALI DIGIT THREE\0" "BENGALI DIGIT TWO\0" "BENGALI DIGIT ZERO\0" "BENGALI GANDA MARK\0" "BENGALI ISSHAR\0" "BENGALI LETTER A\0" "BENGALI LETTER AA\0" "BENGALI LETTER AI\0" "BENGALI LETTER AU\0" "BENGALI LETTER BA\0" "BENGALI LETTER BHA\0" "BENGALI LETTER CA\0" "BENGALI LETTER CHA\0" "BENGALI LETTER DA\0" "BENGALI LETTER DDA\0" "BENGALI LETTER DDHA\0" "BENGALI LETTER DHA\0" "BENGALI LETTER E\0" "BENGALI LETTER GA\0" "BENGALI LETTER GHA\0" "BENGALI LETTER HA\0" "BENGALI LETTER I\0" "BENGALI LETTER II\0" "BENGALI LETTER JA\0" "BENGALI LETTER JHA\0" "BENGALI LETTER KA\0" "BENGALI LETTER KHA\0" "BENGALI LETTER KHANDA TA\0" "BENGALI LETTER LA\0" "BENGALI LETTER MA\0" "BENGALI LETTER NA\0" "BENGALI LETTER NGA\0" "BENGALI LETTER NNA\0" "BENGALI LETTER NYA\0" "BENGALI LETTER O\0" "BENGALI LETTER PA\0" "BENGALI LETTER PHA\0" "BENGALI LETTER RA\0" "BENGALI LETTER RA WITH LOWER DIAGONAL\0" "BENGALI LETTER RA WITH MIDDLE DIAGONAL\0" "BENGALI LETTER RHA\0" "BENGALI LETTER RRA\0" "BENGALI LETTER SA\0" "BENGALI LETTER SHA\0" "BENGALI LETTER SSA\0" "BENGALI LETTER TA\0" "BENGALI LETTER THA\0" "BENGALI LETTER TTA\0" "BENGALI LETTER TTHA\0" "BENGALI LETTER U\0" "BENGALI LETTER UU\0" "BENGALI LETTER VOCALIC L\0" "BENGALI LETTER VOCALIC LL\0" "BENGALI LETTER VOCALIC R\0" "BENGALI LETTER VOCALIC RR\0" "BENGALI LETTER YA\0" "BENGALI LETTER YYA\0" "BENGALI RUPEE MARK\0" "BENGALI RUPEE SIGN\0" "BENGALI SIGN ANUSVARA\0" "BENGALI SIGN AVAGRAHA\0" "BENGALI SIGN CANDRABINDU\0" "BENGALI SIGN NUKTA\0" "BENGALI SIGN VIRAMA\0" "BENGALI SIGN VISARGA\0" "BENGALI VOWEL SIGN AA\0" "BENGALI VOWEL SIGN AI\0" "BENGALI VOWEL SIGN AU\0" "BENGALI VOWEL SIGN E\0" "BENGALI VOWEL SIGN I\0" "BENGALI VOWEL SIGN II\0" "BENGALI VOWEL SIGN O\0" "BENGALI VOWEL SIGN U\0" "BENGALI VOWEL SIGN UU\0" "BENGALI VOWEL SIGN VOCALIC L\0" "BENGALI VOWEL SIGN VOCALIC LL\0" "BENGALI VOWEL SIGN VOCALIC R\0" "BENGALI VOWEL SIGN VOCALIC RR\0" "BENTO BOX\0" "BENZENE RING\0" "BENZENE RING WITH CIRCLE\0" "BET SYMBOL\0" "BETWEEN\0" "BICYCLE\0" "BICYCLIST\0" "BIG REVERSE SOLIDUS\0" "BIG SOLIDUS\0" "BIKINI\0" "BILLIARDS\0" "BIOHAZARD SIGN\0" "BIRD\0" "BIRTHDAY CAKE\0" "BLACK BOWTIE\0" "BLACK CENTRE WHITE STAR\0" "BLACK CHESS BISHOP\0" "BLACK CHESS KING\0" "BLACK CHESS KNIGHT\0" "BLACK CHESS PAWN\0" "BLACK CHESS QUEEN\0" "BLACK CHESS ROOK\0" "BLACK CIRCLE\0" "BLACK CIRCLE WITH DOWN ARROW\0" "BLACK CIRCLE WITH TWO WHITE DOTS\0" "BLACK CIRCLE WITH WHITE DOT RIGHT\0" "BLACK CLUB SUIT\0" "BLACK CROSS ON SHIELD\0" "BLACK DIAMOND\0" "BLACK DIAMOND MINUS WHITE X\0" "BLACK DIAMOND SUIT\0" "BLACK DIAMOND WITH DOWN ARROW\0" "BLACK DOWN-POINTING DOUBLE TRIANGLE\0" "BLACK DOWN-POINTING SMALL TRIANGLE\0" "BLACK DOWN-POINTING TRIANGLE\0" "BLACK DRAUGHTS KING\0" "BLACK DRAUGHTS MAN\0" "BLACK FLAG\0" "BLACK FLORETTE\0" "BLACK FOUR POINTED STAR\0" "BLACK HEART SUIT\0" "BLACK HEXAGON\0" "BLACK HORIZONTAL ELLIPSE\0" "BLACK HOURGLASS\0" "BLACK LARGE CIRCLE\0" "BLACK LARGE SQUARE\0" "BLACK LEFT LANE MERGE\0" "BLACK LEFT POINTING INDEX\0" "BLACK LEFT-POINTING DOUBLE TRIANGLE\0" "BLACK LEFT-POINTING DOUBLE TRIANGLE WITH VERTICAL BAR\0" "BLACK LEFT-POINTING POINTER\0" "BLACK LEFT-POINTING SMALL TRIANGLE\0" "BLACK LEFT-POINTING TRIANGLE\0" "BLACK LEFTWARDS BULLET\0" "BLACK LOWER LEFT TRIANGLE\0" "BLACK LOWER RIGHT TRIANGLE\0" "BLACK LOZENGE\0" "BLACK MEDIUM DIAMOND\0" "BLACK MEDIUM LOZENGE\0" "BLACK MEDIUM SMALL SQUARE\0" "BLACK MEDIUM SQUARE\0" "BLACK MOON LILITH\0" "BLACK NIB\0" "BLACK PARALLELOGRAM\0" "BLACK PENTAGON\0" "BLACK QUESTION MARK ORNAMENT\0" "BLACK RECTANGLE\0" "BLACK RIGHT POINTING INDEX\0" "BLACK RIGHT-POINTING DOUBLE TRIANGLE\0" "BLACK RIGHT-POINTING DOUBLE TRIANGLE WITH VERTICAL BAR\0" "BLACK RIGHT-POINTING PENTAGON\0" "BLACK RIGHT-POINTING POINTER\0" "BLACK RIGHT-POINTING SMALL TRIANGLE\0" "BLACK RIGHT-POINTING TRIANGLE\0" "BLACK RIGHT-POINTING TRIANGLE WITH DOUBLE VERTICAL BAR\0" "BLACK RIGHTWARDS ARROW\0" "BLACK RIGHTWARDS ARROWHEAD\0" "BLACK RIGHTWARDS BULLET\0" "BLACK SCISSORS\0" "BLACK SHOGI PIECE\0" "BLACK SMALL DIAMOND\0" "BLACK SMALL LOZENGE\0" "BLACK SMALL SQUARE\0" "BLACK SMALL STAR\0" "BLACK SMILING FACE\0" "BLACK SNOWMAN\0" "BLACK SPADE SUIT\0" "BLACK SQUARE\0" "BLACK SQUARE BUTTON\0" "BLACK STAR\0" "BLACK SUN WITH RAYS\0" "BLACK TELEPHONE\0" "BLACK TRUCK\0" "BLACK TWO-WAY LEFT WAY TRAFFIC\0" "BLACK UNIVERSAL RECYCLING SYMBOL\0" "BLACK UP-POINTING DOUBLE TRIANGLE\0" "BLACK UP-POINTING SMALL TRIANGLE\0" "BLACK UP-POINTING TRIANGLE\0" "BLACK UPPER LEFT TRIANGLE\0" "BLACK UPPER RIGHT TRIANGLE\0" "BLACK VERTICAL ELLIPSE\0" "BLACK VERTICAL RECTANGLE\0" "BLACK VERY SMALL SQUARE\0" "BLACK-FEATHERED NORTH EAST ARROW\0" "BLACK-FEATHERED RIGHTWARDS ARROW\0" "BLACK-FEATHERED SOUTH EAST ARROW\0" "BLACK-LETTER CAPITAL C\0" "BLACK-LETTER CAPITAL H\0" "BLACK-LETTER CAPITAL I\0" "BLACK-LETTER CAPITAL R\0" "BLACK-LETTER CAPITAL Z\0" "BLANK SYMBOL\0" "BLOSSOM\0" "BLOWFISH\0" "BLUE BOOK\0" "BLUE HEART\0" "BOAR\0" "BOMB\0" "BOOKMARK\0" "BOOKMARK TABS\0" "BOOKS\0" "BOPOMOFO FINAL LETTER H\0" "BOPOMOFO FINAL LETTER K\0" "BOPOMOFO FINAL LETTER P\0" "BOPOMOFO FINAL LETTER T\0" "BOPOMOFO LETTER A\0" "BOPOMOFO LETTER AI\0" "BOPOMOFO LETTER AINN\0" "BOPOMOFO LETTER AM\0" "BOPOMOFO LETTER AN\0" "BOPOMOFO LETTER ANG\0" "BOPOMOFO LETTER ANN\0" "BOPOMOFO LETTER AU\0" "BOPOMOFO LETTER AUNN\0" "BOPOMOFO LETTER B\0" "BOPOMOFO LETTER BU\0" "BOPOMOFO LETTER C\0" "BOPOMOFO LETTER CH\0" "BOPOMOFO LETTER D\0" "BOPOMOFO LETTER E\0" "BOPOMOFO LETTER EE\0" "BOPOMOFO LETTER EH\0" "BOPOMOFO LETTER EI\0" "BOPOMOFO LETTER EN\0" "BOPOMOFO LETTER ENG\0" "BOPOMOFO LETTER ENN\0" "BOPOMOFO LETTER ER\0" "BOPOMOFO LETTER F\0" "BOPOMOFO LETTER G\0" "BOPOMOFO LETTER GH\0" "BOPOMOFO LETTER GN\0" "BOPOMOFO LETTER GU\0" "BOPOMOFO LETTER H\0" "BOPOMOFO LETTER I\0" "BOPOMOFO LETTER IH\0" "BOPOMOFO LETTER IM\0" "BOPOMOFO LETTER INN\0" "BOPOMOFO LETTER INNN\0" "BOPOMOFO LETTER IR\0" "BOPOMOFO LETTER IU\0" "BOPOMOFO LETTER J\0" "BOPOMOFO LETTER JI\0" "BOPOMOFO LETTER K\0" "BOPOMOFO LETTER L\0" "BOPOMOFO LETTER LH\0" "BOPOMOFO LETTER M\0" "BOPOMOFO LETTER N\0" "BOPOMOFO LETTER NG\0" "BOPOMOFO LETTER NGG\0" "BOPOMOFO LETTER O\0" "BOPOMOFO LETTER OM\0" "BOPOMOFO LETTER ONG\0" "BOPOMOFO LETTER ONN\0" "BOPOMOFO LETTER OO\0" "BOPOMOFO LETTER OU\0" "BOPOMOFO LETTER P\0" "BOPOMOFO LETTER Q\0" "BOPOMOFO LETTER R\0" "BOPOMOFO LETTER S\0" "BOPOMOFO LETTER SH\0" "BOPOMOFO LETTER T\0" "BOPOMOFO LETTER U\0" "BOPOMOFO LETTER UNN\0" "BOPOMOFO LETTER V\0" "BOPOMOFO LETTER X\0" "BOPOMOFO LETTER Z\0" "BOPOMOFO LETTER ZH\0" "BOPOMOFO LETTER ZI\0" "BOPOMOFO LETTER ZY\0" "BOTTOM ARC ANTICLOCKWISE ARROW\0" "BOTTOM CURLY BRACKET\0" "BOTTOM HALF INTEGRAL\0" "BOTTOM LEFT CORNER\0" "BOTTOM LEFT CROP\0" "BOTTOM LEFT HALF BRACKET\0" "BOTTOM PARENTHESIS\0" "BOTTOM RIGHT CORNER\0" "BOTTOM RIGHT CROP\0" "BOTTOM RIGHT HALF BRACKET\0" "BOTTOM SQUARE BRACKET\0" "BOTTOM SQUARE BRACKET OVER TOP SQUARE BRACKET\0" "BOTTOM TORTOISE SHELL BRACKET\0" "BOUQUET\0" "BOWLING\0" "BOWTIE\0" "BOWTIE WITH LEFT HALF BLACK\0" "BOWTIE WITH RIGHT HALF BLACK\0" "BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL\0" "BOX DRAWINGS DOUBLE DOWN AND LEFT\0" "BOX DRAWINGS DOUBLE DOWN AND RIGHT\0" "BOX DRAWINGS DOUBLE HORIZONTAL\0" "BOX DRAWINGS DOUBLE UP AND HORIZONTAL\0" "BOX DRAWINGS DOUBLE UP AND LEFT\0" "BOX DRAWINGS DOUBLE UP AND RIGHT\0" "BOX DRAWINGS DOUBLE VERTICAL\0" "BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL\0" "BOX DRAWINGS DOUBLE VERTICAL AND LEFT\0" "BOX DRAWINGS DOUBLE VERTICAL AND RIGHT\0" "BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE\0" "BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE\0" "BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE\0" "BOX DRAWINGS DOWN HEAVY AND HORIZONTAL LIGHT\0" "BOX DRAWINGS DOWN HEAVY AND LEFT LIGHT\0" "BOX DRAWINGS DOWN HEAVY AND LEFT UP LIGHT\0" "BOX DRAWINGS DOWN HEAVY AND RIGHT LIGHT\0" "BOX DRAWINGS DOWN HEAVY AND RIGHT UP LIGHT\0" "BOX DRAWINGS DOWN HEAVY AND UP HORIZONTAL LIGHT\0" "BOX DRAWINGS DOWN LIGHT AND HORIZONTAL HEAVY\0" "BOX DRAWINGS DOWN LIGHT AND LEFT HEAVY\0" "BOX DRAWINGS DOWN LIGHT AND LEFT UP HEAVY\0" "BOX DRAWINGS DOWN LIGHT AND RIGHT HEAVY\0" "BOX DRAWINGS DOWN LIGHT AND RIGHT UP HEAVY\0" "BOX DRAWINGS DOWN LIGHT AND UP HORIZONTAL HEAVY\0" "BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE\0" "BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE\0" "BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE\0" "BOX DRAWINGS HEAVY DOUBLE DASH HORIZONTAL\0" "BOX DRAWINGS HEAVY DOUBLE DASH VERTICAL\0" "BOX DRAWINGS HEAVY DOWN\0" "BOX DRAWINGS HEAVY DOWN AND HORIZONTAL\0" "BOX DRAWINGS HEAVY DOWN AND LEFT\0" "BOX DRAWINGS HEAVY DOWN AND RIGHT\0" "BOX DRAWINGS HEAVY HORIZONTAL\0" "BOX DRAWINGS HEAVY LEFT\0" "BOX DRAWINGS HEAVY LEFT AND LIGHT RIGHT\0" "BOX DRAWINGS HEAVY QUADRUPLE DASH HORIZONTAL\0" "BOX DRAWINGS HEAVY QUADRUPLE DASH VERTICAL\0" "BOX DRAWINGS HEAVY RIGHT\0" "BOX DRAWINGS HEAVY TRIPLE DASH HORIZONTAL\0" "BOX DRAWINGS HEAVY TRIPLE DASH VERTICAL\0" "BOX DRAWINGS HEAVY UP\0" "BOX DRAWINGS HEAVY UP AND HORIZONTAL\0" "BOX DRAWINGS HEAVY UP AND LEFT\0" "BOX DRAWINGS HEAVY UP AND LIGHT DOWN\0" "BOX DRAWINGS HEAVY UP AND RIGHT\0" "BOX DRAWINGS HEAVY VERTICAL\0" "BOX DRAWINGS HEAVY VERTICAL AND HORIZONTAL\0" "BOX DRAWINGS HEAVY VERTICAL AND LEFT\0" "BOX DRAWINGS HEAVY VERTICAL AND RIGHT\0" "BOX DRAWINGS LEFT DOWN HEAVY AND RIGHT UP LIGHT\0" "BOX DRAWINGS LEFT HEAVY AND RIGHT DOWN LIGHT\0" "BOX DRAWINGS LEFT HEAVY AND RIGHT UP LIGHT\0" "BOX DRAWINGS LEFT HEAVY AND RIGHT VERTICAL LIGHT\0" "BOX DRAWINGS LEFT LIGHT AND RIGHT DOWN HEAVY\0" "BOX DRAWINGS LEFT LIGHT AND RIGHT UP HEAVY\0" "BOX DRAWINGS LEFT LIGHT AND RIGHT VERTICAL HEAVY\0" "BOX DRAWINGS LEFT UP HEAVY AND RIGHT DOWN LIGHT\0" "BOX DRAWINGS LIGHT ARC DOWN AND LEFT\0" "BOX DRAWINGS LIGHT ARC DOWN AND RIGHT\0" "BOX DRAWINGS LIGHT ARC UP AND LEFT\0" "BOX DRAWINGS LIGHT ARC UP AND RIGHT\0" "BOX DRAWINGS LIGHT DIAGONAL CROSS\0" "BOX DRAWINGS LIGHT DIAGONAL UPPER LEFT TO LOWER RIGHT\0" "BOX DRAWINGS LIGHT DIAGONAL UPPER RIGHT TO LOWER LEFT\0" "BOX DRAWINGS LIGHT DOUBLE DASH HORIZONTAL\0" "BOX DRAWINGS LIGHT DOUBLE DASH VERTICAL\0" "BOX DRAWINGS LIGHT DOWN\0" "BOX DRAWINGS LIGHT DOWN AND HORIZONTAL\0" "BOX DRAWINGS LIGHT DOWN AND LEFT\0" "BOX DRAWINGS LIGHT DOWN AND RIGHT\0" "BOX DRAWINGS LIGHT HORIZONTAL\0" "BOX DRAWINGS LIGHT LEFT\0" "BOX DRAWINGS LIGHT LEFT AND HEAVY RIGHT\0" "BOX DRAWINGS LIGHT QUADRUPLE DASH HORIZONTAL\0" "BOX DRAWINGS LIGHT QUADRUPLE DASH VERTICAL\0" "BOX DRAWINGS LIGHT RIGHT\0" "BOX DRAWINGS LIGHT TRIPLE DASH HORIZONTAL\0" "BOX DRAWINGS LIGHT TRIPLE DASH VERTICAL\0" "BOX DRAWINGS LIGHT UP\0" "BOX DRAWINGS LIGHT UP AND HEAVY DOWN\0" "BOX DRAWINGS LIGHT UP AND HORIZONTAL\0" "BOX DRAWINGS LIGHT UP AND LEFT\0" "BOX DRAWINGS LIGHT UP AND RIGHT\0" "BOX DRAWINGS LIGHT VERTICAL\0" "BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL\0" "BOX DRAWINGS LIGHT VERTICAL AND LEFT\0" "BOX DRAWINGS LIGHT VERTICAL AND RIGHT\0" "BOX DRAWINGS RIGHT DOWN HEAVY AND LEFT UP LIGHT\0" "BOX DRAWINGS RIGHT HEAVY AND LEFT DOWN LIGHT\0" "BOX DRAWINGS RIGHT HEAVY AND LEFT UP LIGHT\0" "BOX DRAWINGS RIGHT HEAVY AND LEFT VERTICAL LIGHT\0" "BOX DRAWINGS RIGHT LIGHT AND LEFT DOWN HEAVY\0" "BOX DRAWINGS RIGHT LIGHT AND LEFT UP HEAVY\0" "BOX DRAWINGS RIGHT LIGHT AND LEFT VERTICAL HEAVY\0" "BOX DRAWINGS RIGHT UP HEAVY AND LEFT DOWN LIGHT\0" "BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE\0" "BOX DRAWINGS UP DOUBLE AND LEFT SINGLE\0" "BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE\0" "BOX DRAWINGS UP HEAVY AND DOWN HORIZONTAL LIGHT\0" "BOX DRAWINGS UP HEAVY AND HORIZONTAL LIGHT\0" "BOX DRAWINGS UP HEAVY AND LEFT DOWN LIGHT\0" "BOX DRAWINGS UP HEAVY AND LEFT LIGHT\0" "BOX DRAWINGS UP HEAVY AND RIGHT DOWN LIGHT\0" "BOX DRAWINGS UP HEAVY AND RIGHT LIGHT\0" "BOX DRAWINGS UP LIGHT AND DOWN HORIZONTAL HEAVY\0" "BOX DRAWINGS UP LIGHT AND HORIZONTAL HEAVY\0" "BOX DRAWINGS UP LIGHT AND LEFT DOWN HEAVY\0" "BOX DRAWINGS UP LIGHT AND LEFT HEAVY\0" "BOX DRAWINGS UP LIGHT AND RIGHT DOWN HEAVY\0" "BOX DRAWINGS UP LIGHT AND RIGHT HEAVY\0" "BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE\0" "BOX DRAWINGS UP SINGLE AND LEFT DOUBLE\0" "BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE\0" "BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE\0" "BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE\0" "BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE\0" "BOX DRAWINGS VERTICAL HEAVY AND HORIZONTAL LIGHT\0" "BOX DRAWINGS VERTICAL HEAVY AND LEFT LIGHT\0" "BOX DRAWINGS VERTICAL HEAVY AND RIGHT LIGHT\0" "BOX DRAWINGS VERTICAL LIGHT AND HORIZONTAL HEAVY\0" "BOX DRAWINGS VERTICAL LIGHT AND LEFT HEAVY\0" "BOX DRAWINGS VERTICAL LIGHT AND RIGHT HEAVY\0" "BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE\0" "BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE\0" "BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE\0" "BOY\0" "BRAHMI DANDA\0" "BRAHMI DIGIT EIGHT\0" "BRAHMI DIGIT FIVE\0" "BRAHMI DIGIT FOUR\0" "BRAHMI DIGIT NINE\0" "BRAHMI DIGIT ONE\0" "BRAHMI DIGIT SEVEN\0" "BRAHMI DIGIT SIX\0" "BRAHMI DIGIT THREE\0" "BRAHMI DIGIT TWO\0" "BRAHMI DIGIT ZERO\0" "BRAHMI DOUBLE DANDA\0" "BRAHMI LETTER A\0" "BRAHMI LETTER AA\0" "BRAHMI LETTER AI\0" "BRAHMI LETTER AU\0" "BRAHMI LETTER BA\0" "BRAHMI LETTER BHA\0" "BRAHMI LETTER CA\0" "BRAHMI LETTER CHA\0" "BRAHMI LETTER DA\0" "BRAHMI LETTER DDA\0" "BRAHMI LETTER DDHA\0" "BRAHMI LETTER DHA\0" "BRAHMI LETTER E\0" "BRAHMI LETTER GA\0" "BRAHMI LETTER GHA\0" "BRAHMI LETTER HA\0" "BRAHMI LETTER I\0" "BRAHMI LETTER II\0" "BRAHMI LETTER JA\0" "BRAHMI LETTER JHA\0" "BRAHMI LETTER KA\0" "BRAHMI LETTER KHA\0" "BRAHMI LETTER LA\0" "BRAHMI LETTER LLA\0" "BRAHMI LETTER MA\0" "BRAHMI LETTER NA\0" "BRAHMI LETTER NGA\0" "BRAHMI LETTER NNA\0" "BRAHMI LETTER NYA\0" "BRAHMI LETTER O\0" "BRAHMI LETTER OLD TAMIL LLLA\0" "BRAHMI LETTER OLD TAMIL NNNA\0" "BRAHMI LETTER OLD TAMIL RRA\0" "BRAHMI LETTER PA\0" "BRAHMI LETTER PHA\0" "BRAHMI LETTER RA\0" "BRAHMI LETTER SA\0" "BRAHMI LETTER SHA\0" "BRAHMI LETTER SSA\0" "BRAHMI LETTER TA\0" "BRAHMI LETTER THA\0" "BRAHMI LETTER TTA\0" "BRAHMI LETTER TTHA\0" "BRAHMI LETTER U\0" "BRAHMI LETTER UU\0" "BRAHMI LETTER VA\0" "BRAHMI LETTER VOCALIC L\0" "BRAHMI LETTER VOCALIC LL\0" "BRAHMI LETTER VOCALIC R\0" "BRAHMI LETTER VOCALIC RR\0" "BRAHMI LETTER YA\0" "BRAHMI NUMBER EIGHT\0" "BRAHMI NUMBER EIGHTY\0" "BRAHMI NUMBER FIFTY\0" "BRAHMI NUMBER FIVE\0" "BRAHMI NUMBER FORTY\0" "BRAHMI NUMBER FOUR\0" "BRAHMI NUMBER NINE\0" "BRAHMI NUMBER NINETY\0" "BRAHMI NUMBER ONE\0" "BRAHMI NUMBER ONE HUNDRED\0" "BRAHMI NUMBER ONE THOUSAND\0" "BRAHMI NUMBER SEVEN\0" "BRAHMI NUMBER SEVENTY\0" "BRAHMI NUMBER SIX\0" "BRAHMI NUMBER SIXTY\0" "BRAHMI NUMBER TEN\0" "BRAHMI NUMBER THIRTY\0" "BRAHMI NUMBER THREE\0" "BRAHMI NUMBER TWENTY\0" "BRAHMI NUMBER TWO\0" "BRAHMI PUNCTUATION CRESCENT BAR\0" "BRAHMI PUNCTUATION DOT\0" "BRAHMI PUNCTUATION DOUBLE DOT\0" "BRAHMI PUNCTUATION LINE\0" "BRAHMI PUNCTUATION LOTUS\0" "BRAHMI SIGN ANUSVARA\0" "BRAHMI SIGN CANDRABINDU\0" "BRAHMI SIGN JIHVAMULIYA\0" "BRAHMI SIGN UPADHMANIYA\0" "BRAHMI SIGN VISARGA\0" "BRAHMI VIRAMA\0" "BRAHMI VOWEL SIGN AA\0" "BRAHMI VOWEL SIGN AI\0" "BRAHMI VOWEL SIGN AU\0" "BRAHMI VOWEL SIGN BHATTIPROLU AA\0" "BRAHMI VOWEL SIGN E\0" "BRAHMI VOWEL SIGN I\0" "BRAHMI VOWEL SIGN II\0" "BRAHMI VOWEL SIGN O\0" "BRAHMI VOWEL SIGN U\0" "BRAHMI VOWEL SIGN UU\0" "BRAHMI VOWEL SIGN VOCALIC L\0" "BRAHMI VOWEL SIGN VOCALIC LL\0" "BRAHMI VOWEL SIGN VOCALIC R\0" "BRAHMI VOWEL SIGN VOCALIC RR\0" "BRAILLE PATTERN BLANK\0" "BRAILLE PATTERN DOTS-1\0" "BRAILLE PATTERN DOTS-12\0" "BRAILLE PATTERN DOTS-123\0" "BRAILLE PATTERN DOTS-1234\0" "BRAILLE PATTERN DOTS-12345\0" "BRAILLE PATTERN DOTS-123456\0" "BRAILLE PATTERN DOTS-1234567\0" "BRAILLE PATTERN DOTS-12345678\0" "BRAILLE PATTERN DOTS-1234568\0" "BRAILLE PATTERN DOTS-123457\0" "BRAILLE PATTERN DOTS-1234578\0" "BRAILLE PATTERN DOTS-123458\0" "BRAILLE PATTERN DOTS-12346\0" "BRAILLE PATTERN DOTS-123467\0" "BRAILLE PATTERN DOTS-1234678\0" "BRAILLE PATTERN DOTS-123468\0" "BRAILLE PATTERN DOTS-12347\0" "BRAILLE PATTERN DOTS-123478\0" "BRAILLE PATTERN DOTS-12348\0" "BRAILLE PATTERN DOTS-1235\0" "BRAILLE PATTERN DOTS-12356\0" "BRAILLE PATTERN DOTS-123567\0" "BRAILLE PATTERN DOTS-1235678\0" "BRAILLE PATTERN DOTS-123568\0" "BRAILLE PATTERN DOTS-12357\0" "BRAILLE PATTERN DOTS-123578\0" "BRAILLE PATTERN DOTS-12358\0" "BRAILLE PATTERN DOTS-1236\0" "BRAILLE PATTERN DOTS-12367\0" "BRAILLE PATTERN DOTS-123678\0" "BRAILLE PATTERN DOTS-12368\0" "BRAILLE PATTERN DOTS-1237\0" "BRAILLE PATTERN DOTS-12378\0" "BRAILLE PATTERN DOTS-1238\0" "BRAILLE PATTERN DOTS-124\0" "BRAILLE PATTERN DOTS-1245\0" "BRAILLE PATTERN DOTS-12456\0" "BRAILLE PATTERN DOTS-124567\0" "BRAILLE PATTERN DOTS-1245678\0" "BRAILLE PATTERN DOTS-124568\0" "BRAILLE PATTERN DOTS-12457\0" "BRAILLE PATTERN DOTS-124578\0" "BRAILLE PATTERN DOTS-12458\0" "BRAILLE PATTERN DOTS-1246\0" "BRAILLE PATTERN DOTS-12467\0" "BRAILLE PATTERN DOTS-124678\0" "BRAILLE PATTERN DOTS-12468\0" "BRAILLE PATTERN DOTS-1247\0" "BRAILLE PATTERN DOTS-12478\0" "BRAILLE PATTERN DOTS-1248\0" "BRAILLE PATTERN DOTS-125\0" "BRAILLE PATTERN DOTS-1256\0" "BRAILLE PATTERN DOTS-12567\0" "BRAILLE PATTERN DOTS-125678\0" "BRAILLE PATTERN DOTS-12568\0" "BRAILLE PATTERN DOTS-1257\0" "BRAILLE PATTERN DOTS-12578\0" "BRAILLE PATTERN DOTS-1258\0" "BRAILLE PATTERN DOTS-126\0" "BRAILLE PATTERN DOTS-1267\0" "BRAILLE PATTERN DOTS-12678\0" "BRAILLE PATTERN DOTS-1268\0" "BRAILLE PATTERN DOTS-127\0" "BRAILLE PATTERN DOTS-1278\0" "BRAILLE PATTERN DOTS-128\0" "BRAILLE PATTERN DOTS-13\0" "BRAILLE PATTERN DOTS-134\0" "BRAILLE PATTERN DOTS-1345\0" "BRAILLE PATTERN DOTS-13456\0" "BRAILLE PATTERN DOTS-134567\0" "BRAILLE PATTERN DOTS-1345678\0" "BRAILLE PATTERN DOTS-134568\0" "BRAILLE PATTERN DOTS-13457\0" "BRAILLE PATTERN DOTS-134578\0" "BRAILLE PATTERN DOTS-13458\0" "BRAILLE PATTERN DOTS-1346\0" "BRAILLE PATTERN DOTS-13467\0" "BRAILLE PATTERN DOTS-134678\0" "BRAILLE PATTERN DOTS-13468\0" "BRAILLE PATTERN DOTS-1347\0" "BRAILLE PATTERN DOTS-13478\0" "BRAILLE PATTERN DOTS-1348\0" "BRAILLE PATTERN DOTS-135\0" "BRAILLE PATTERN DOTS-1356\0" "BRAILLE PATTERN DOTS-13567\0" "BRAILLE PATTERN DOTS-135678\0" "BRAILLE PATTERN DOTS-13568\0" "BRAILLE PATTERN DOTS-1357\0" "BRAILLE PATTERN DOTS-13578\0" "BRAILLE PATTERN DOTS-1358\0" "BRAILLE PATTERN DOTS-136\0" "BRAILLE PATTERN DOTS-1367\0" "BRAILLE PATTERN DOTS-13678\0" "BRAILLE PATTERN DOTS-1368\0" "BRAILLE PATTERN DOTS-137\0" "BRAILLE PATTERN DOTS-1378\0" "BRAILLE PATTERN DOTS-138\0" "BRAILLE PATTERN DOTS-14\0" "BRAILLE PATTERN DOTS-145\0" "BRAILLE PATTERN DOTS-1456\0" "BRAILLE PATTERN DOTS-14567\0" "BRAILLE PATTERN DOTS-145678\0" "BRAILLE PATTERN DOTS-14568\0" "BRAILLE PATTERN DOTS-1457\0" "BRAILLE PATTERN DOTS-14578\0" "BRAILLE PATTERN DOTS-1458\0" "BRAILLE PATTERN DOTS-146\0" "BRAILLE PATTERN DOTS-1467\0" "BRAILLE PATTERN DOTS-14678\0" "BRAILLE PATTERN DOTS-1468\0" "BRAILLE PATTERN DOTS-147\0" "BRAILLE PATTERN DOTS-1478\0" "BRAILLE PATTERN DOTS-148\0" "BRAILLE PATTERN DOTS-15\0" "BRAILLE PATTERN DOTS-156\0" "BRAILLE PATTERN DOTS-1567\0" "BRAILLE PATTERN DOTS-15678\0" "BRAILLE PATTERN DOTS-1568\0" "BRAILLE PATTERN DOTS-157\0" "BRAILLE PATTERN DOTS-1578\0" "BRAILLE PATTERN DOTS-158\0" "BRAILLE PATTERN DOTS-16\0" "BRAILLE PATTERN DOTS-167\0" "BRAILLE PATTERN DOTS-1678\0" "BRAILLE PATTERN DOTS-168\0" "BRAILLE PATTERN DOTS-17\0" "BRAILLE PATTERN DOTS-178\0" "BRAILLE PATTERN DOTS-18\0" "BRAILLE PATTERN DOTS-2\0" "BRAILLE PATTERN DOTS-23\0" "BRAILLE PATTERN DOTS-234\0" "BRAILLE PATTERN DOTS-2345\0" "BRAILLE PATTERN DOTS-23456\0" "BRAILLE PATTERN DOTS-234567\0" "BRAILLE PATTERN DOTS-2345678\0" "BRAILLE PATTERN DOTS-234568\0" "BRAILLE PATTERN DOTS-23457\0" "BRAILLE PATTERN DOTS-234578\0" "BRAILLE PATTERN DOTS-23458\0" "BRAILLE PATTERN DOTS-2346\0" "BRAILLE PATTERN DOTS-23467\0" "BRAILLE PATTERN DOTS-234678\0" "BRAILLE PATTERN DOTS-23468\0" "BRAILLE PATTERN DOTS-2347\0" "BRAILLE PATTERN DOTS-23478\0" "BRAILLE PATTERN DOTS-2348\0" "BRAILLE PATTERN DOTS-235\0" "BRAILLE PATTERN DOTS-2356\0" "BRAILLE PATTERN DOTS-23567\0" "BRAILLE PATTERN DOTS-235678\0" "BRAILLE PATTERN DOTS-23568\0" "BRAILLE PATTERN DOTS-2357\0" "BRAILLE PATTERN DOTS-23578\0" "BRAILLE PATTERN DOTS-2358\0" "BRAILLE PATTERN DOTS-236\0" "BRAILLE PATTERN DOTS-2367\0" "BRAILLE PATTERN DOTS-23678\0" "BRAILLE PATTERN DOTS-2368\0" "BRAILLE PATTERN DOTS-237\0" "BRAILLE PATTERN DOTS-2378\0" "BRAILLE PATTERN DOTS-238\0" "BRAILLE PATTERN DOTS-24\0" "BRAILLE PATTERN DOTS-245\0" "BRAILLE PATTERN DOTS-2456\0" "BRAILLE PATTERN DOTS-24567\0" "BRAILLE PATTERN DOTS-245678\0" "BRAILLE PATTERN DOTS-24568\0" "BRAILLE PATTERN DOTS-2457\0" "BRAILLE PATTERN DOTS-24578\0" "BRAILLE PATTERN DOTS-2458\0" "BRAILLE PATTERN DOTS-246\0" "BRAILLE PATTERN DOTS-2467\0" "BRAILLE PATTERN DOTS-24678\0" "BRAILLE PATTERN DOTS-2468\0" "BRAILLE PATTERN DOTS-247\0" "BRAILLE PATTERN DOTS-2478\0" "BRAILLE PATTERN DOTS-248\0" "BRAILLE PATTERN DOTS-25\0" "BRAILLE PATTERN DOTS-256\0" "BRAILLE PATTERN DOTS-2567\0" "BRAILLE PATTERN DOTS-25678\0" "BRAILLE PATTERN DOTS-2568\0" "BRAILLE PATTERN DOTS-257\0" "BRAILLE PATTERN DOTS-2578\0" "BRAILLE PATTERN DOTS-258\0" "BRAILLE PATTERN DOTS-26\0" "BRAILLE PATTERN DOTS-267\0" "BRAILLE PATTERN DOTS-2678\0" "BRAILLE PATTERN DOTS-268\0" "BRAILLE PATTERN DOTS-27\0" "BRAILLE PATTERN DOTS-278\0" "BRAILLE PATTERN DOTS-28\0" "BRAILLE PATTERN DOTS-3\0" "BRAILLE PATTERN DOTS-34\0" "BRAILLE PATTERN DOTS-345\0" "BRAILLE PATTERN DOTS-3456\0" "BRAILLE PATTERN DOTS-34567\0" "BRAILLE PATTERN DOTS-345678\0" "BRAILLE PATTERN DOTS-34568\0" "BRAILLE PATTERN DOTS-3457\0" "BRAILLE PATTERN DOTS-34578\0" "BRAILLE PATTERN DOTS-3458\0" "BRAILLE PATTERN DOTS-346\0" "BRAILLE PATTERN DOTS-3467\0" "BRAILLE PATTERN DOTS-34678\0" "BRAILLE PATTERN DOTS-3468\0" "BRAILLE PATTERN DOTS-347\0" "BRAILLE PATTERN DOTS-3478\0" "BRAILLE PATTERN DOTS-348\0" "BRAILLE PATTERN DOTS-35\0" "BRAILLE PATTERN DOTS-356\0" "BRAILLE PATTERN DOTS-3567\0" "BRAILLE PATTERN DOTS-35678\0" "BRAILLE PATTERN DOTS-3568\0" "BRAILLE PATTERN DOTS-357\0" "BRAILLE PATTERN DOTS-3578\0" "BRAILLE PATTERN DOTS-358\0" "BRAILLE PATTERN DOTS-36\0" "BRAILLE PATTERN DOTS-367\0" "BRAILLE PATTERN DOTS-3678\0" "BRAILLE PATTERN DOTS-368\0" "BRAILLE PATTERN DOTS-37\0" "BRAILLE PATTERN DOTS-378\0" "BRAILLE PATTERN DOTS-38\0" "BRAILLE PATTERN DOTS-4\0" "BRAILLE PATTERN DOTS-45\0" "BRAILLE PATTERN DOTS-456\0" "BRAILLE PATTERN DOTS-4567\0" "BRAILLE PATTERN DOTS-45678\0" "BRAILLE PATTERN DOTS-4568\0" "BRAILLE PATTERN DOTS-457\0" "BRAILLE PATTERN DOTS-4578\0" "BRAILLE PATTERN DOTS-458\0" "BRAILLE PATTERN DOTS-46\0" "BRAILLE PATTERN DOTS-467\0" "BRAILLE PATTERN DOTS-4678\0" "BRAILLE PATTERN DOTS-468\0" "BRAILLE PATTERN DOTS-47\0" "BRAILLE PATTERN DOTS-478\0" "BRAILLE PATTERN DOTS-48\0" "BRAILLE PATTERN DOTS-5\0" "BRAILLE PATTERN DOTS-56\0" "BRAILLE PATTERN DOTS-567\0" "BRAILLE PATTERN DOTS-5678\0" "BRAILLE PATTERN DOTS-568\0" "BRAILLE PATTERN DOTS-57\0" "BRAILLE PATTERN DOTS-578\0" "BRAILLE PATTERN DOTS-58\0" "BRAILLE PATTERN DOTS-6\0" "BRAILLE PATTERN DOTS-67\0" "BRAILLE PATTERN DOTS-678\0" "BRAILLE PATTERN DOTS-68\0" "BRAILLE PATTERN DOTS-7\0" "BRAILLE PATTERN DOTS-78\0" "BRAILLE PATTERN DOTS-8\0" "BREAD\0" "BREVE\0" "BRIDE WITH VEIL\0" "BRIDGE AT NIGHT\0" "BRIEFCASE\0" "BROKEN BAR\0" "BROKEN CIRCLE WITH NORTHWEST ARROW\0" "BROKEN HEART\0" "BUG\0" "BUGINESE END OF SECTION\0" "BUGINESE LETTER A\0" "BUGINESE LETTER BA\0" "BUGINESE LETTER CA\0" "BUGINESE LETTER DA\0" "BUGINESE LETTER GA\0" "BUGINESE LETTER HA\0" "BUGINESE LETTER JA\0" "BUGINESE LETTER KA\0" "BUGINESE LETTER LA\0" "BUGINESE LETTER MA\0" "BUGINESE LETTER MPA\0" "BUGINESE LETTER NA\0" "BUGINESE LETTER NGA\0" "BUGINESE LETTER NGKA\0" "BUGINESE LETTER NRA\0" "BUGINESE LETTER NYA\0" "BUGINESE LETTER NYCA\0" "BUGINESE LETTER PA\0" "BUGINESE LETTER RA\0" "BUGINESE LETTER SA\0" "BUGINESE LETTER TA\0" "BUGINESE LETTER VA\0" "BUGINESE LETTER YA\0" "BUGINESE PALLAWA\0" "BUGINESE VOWEL SIGN AE\0" "BUGINESE VOWEL SIGN E\0" "BUGINESE VOWEL SIGN I\0" "BUGINESE VOWEL SIGN O\0" "BUGINESE VOWEL SIGN U\0" "BUHID LETTER A\0" "BUHID LETTER BA\0" "BUHID LETTER DA\0" "BUHID LETTER GA\0" "BUHID LETTER HA\0" "BUHID LETTER I\0" "BUHID LETTER KA\0" "BUHID LETTER LA\0" "BUHID LETTER MA\0" "BUHID LETTER NA\0" "BUHID LETTER NGA\0" "BUHID LETTER PA\0" "BUHID LETTER RA\0" "BUHID LETTER SA\0" "BUHID LETTER TA\0" "BUHID LETTER U\0" "BUHID LETTER WA\0" "BUHID LETTER YA\0" "BUHID VOWEL SIGN I\0" "BUHID VOWEL SIGN U\0" "BULLET\0" "BULLET OPERATOR\0" "BULLSEYE\0" "BUS\0" "BUS STOP\0" "BUST IN SILHOUETTE\0" "BUSTS IN SILHOUETTE\0" "BYZANTINE MUSICAL SYMBOL AGOGI ARGI\0" "BYZANTINE MUSICAL SYMBOL AGOGI ARGOTERI\0" "BYZANTINE MUSICAL SYMBOL AGOGI GORGI\0" "BYZANTINE MUSICAL SYMBOL AGOGI GORGOTERI\0" "BYZANTINE MUSICAL SYMBOL AGOGI MESI\0" "BYZANTINE MUSICAL SYMBOL AGOGI METRIA\0" "BYZANTINE MUSICAL SYMBOL AGOGI POLI ARGI\0" "BYZANTINE MUSICAL SYMBOL AGOGI POLI GORGI\0" "BYZANTINE MUSICAL SYMBOL ANATRICHISMA\0" "BYZANTINE MUSICAL SYMBOL ANTIKENOKYLISMA\0" "BYZANTINE MUSICAL SYMBOL ANTIKENOMA\0" "BYZANTINE MUSICAL SYMBOL APESO EKFONITIKON\0" "BYZANTINE MUSICAL SYMBOL APESO EXO NEO\0" "BYZANTINE MUSICAL SYMBOL APLI\0" "BYZANTINE MUSICAL SYMBOL APODERMA ARCHAION\0" "BYZANTINE MUSICAL SYMBOL APODERMA NEO\0" "BYZANTINE MUSICAL SYMBOL APOSTROFOI SYNDESMOS NEO\0" "BYZANTINE MUSICAL SYMBOL APOSTROFOI TELOUS ICHIMATOS\0" "BYZANTINE MUSICAL SYMBOL APOSTROFOS\0" "BYZANTINE MUSICAL SYMBOL APOSTROFOS DIPLI\0" "BYZANTINE MUSICAL SYMBOL APOSTROFOS NEO\0" "BYZANTINE MUSICAL SYMBOL APOTHEMA\0" "BYZANTINE MUSICAL SYMBOL ARGON\0" "BYZANTINE MUSICAL SYMBOL ARGOSYNTHETON\0" "BYZANTINE MUSICAL SYMBOL ARKTIKO DI\0" "BYZANTINE MUSICAL SYMBOL ARKTIKO GA\0" "BYZANTINE MUSICAL SYMBOL ARKTIKO KE\0" "BYZANTINE MUSICAL SYMBOL ARKTIKO NI\0" "BYZANTINE MUSICAL SYMBOL ARKTIKO PA\0" "BYZANTINE MUSICAL SYMBOL ARKTIKO VOU\0" "BYZANTINE MUSICAL SYMBOL ARKTIKO ZO\0" "BYZANTINE MUSICAL SYMBOL CHAMILI\0" "BYZANTINE MUSICAL SYMBOL CHAMILON\0" "BYZANTINE MUSICAL SYMBOL CHOREVMA ARCHAION\0" "BYZANTINE MUSICAL SYMBOL CHOREVMA NEO\0" "BYZANTINE MUSICAL SYMBOL CHROA KLITON\0" "BYZANTINE MUSICAL SYMBOL CHROA SPATHI\0" "BYZANTINE MUSICAL SYMBOL CHROA ZYGOS\0" "BYZANTINE MUSICAL SYMBOL DASEIA\0" "BYZANTINE MUSICAL SYMBOL DIARGON\0" "BYZANTINE MUSICAL SYMBOL DIASTOLI APLI MEGALI\0" "BYZANTINE MUSICAL SYMBOL DIASTOLI APLI MIKRI\0" "BYZANTINE MUSICAL SYMBOL DIASTOLI DIPLI\0" "BYZANTINE MUSICAL SYMBOL DIASTOLI THESEOS\0" "BYZANTINE MUSICAL SYMBOL DIESIS APLI DYO DODEKATA\0" "BYZANTINE MUSICAL SYMBOL DIESIS DIGRAMMOS EX DODEKATA\0" "BYZANTINE MUSICAL SYMBOL DIESIS MONOGRAMMOS TESSERA DODEKATA\0" "BYZANTINE MUSICAL SYMBOL DIESIS TETARTIMORION\0" "BYZANTINE MUSICAL SYMBOL DIESIS TRIGRAMMOS OKTO DODEKATA\0" "BYZANTINE MUSICAL SYMBOL DIESIS TRITIMORION\0" "BYZANTINE MUSICAL SYMBOL DIFTOGGOS OU\0" "BYZANTINE MUSICAL SYMBOL DIGORGON\0" "BYZANTINE MUSICAL SYMBOL DIGORGON PARESTIGMENON ARISTERA ANO\0" "BYZANTINE MUSICAL SYMBOL DIGORGON PARESTIGMENON ARISTERA KATO\0" "BYZANTINE MUSICAL SYMBOL DIGORGON PARESTIGMENON DEXIA\0" "BYZANTINE MUSICAL SYMBOL DIGRAMMA GG\0" "BYZANTINE MUSICAL SYMBOL DIPLI\0" "BYZANTINE MUSICAL SYMBOL DIPLI ARCHAION\0" "BYZANTINE MUSICAL SYMBOL DYO\0" "BYZANTINE MUSICAL SYMBOL EKSTREPTON\0" "BYZANTINE MUSICAL SYMBOL ELAFRON\0" "BYZANTINE MUSICAL SYMBOL ENARXIS KAI FTHORA VOU\0" "BYZANTINE MUSICAL SYMBOL ENDOFONON\0" "BYZANTINE MUSICAL SYMBOL EPEGERMA\0" "BYZANTINE MUSICAL SYMBOL ETERON ARGOSYNTHETON\0" "BYZANTINE MUSICAL SYMBOL ETERON PARAKALESMA\0" "BYZANTINE MUSICAL SYMBOL EXO EKFONITIKON\0" "BYZANTINE MUSICAL SYMBOL FANEROSIS DIFONIAS\0" "BYZANTINE MUSICAL SYMBOL FANEROSIS MONOFONIAS\0" "BYZANTINE MUSICAL SYMBOL FANEROSIS TETRAFONIAS\0" "BYZANTINE MUSICAL SYMBOL FHTORA SKLIRON CHROMA VASIS\0" "BYZANTINE MUSICAL SYMBOL FTHORA ARCHAION\0" "BYZANTINE MUSICAL SYMBOL FTHORA ARCHAION DEYTEROU ICHOU\0" "BYZANTINE MUSICAL SYMBOL FTHORA DIATONIKI DI\0" "BYZANTINE MUSICAL SYMBOL FTHORA DIATONIKI KE\0" "BYZANTINE MUSICAL SYMBOL FTHORA DIATONIKI NANA\0" "BYZANTINE MUSICAL SYMBOL FTHORA DIATONIKI NI ANO\0" "BYZANTINE MUSICAL SYMBOL FTHORA DIATONIKI NI KATO\0" "BYZANTINE MUSICAL SYMBOL FTHORA DIATONIKI PA\0" "BYZANTINE MUSICAL SYMBOL FTHORA DIATONIKI ZO\0" "BYZANTINE MUSICAL SYMBOL FTHORA ENARMONIOS ANTIFONIA\0" "BYZANTINE MUSICAL SYMBOL FTHORA I YFESIS TETARTIMORION\0" "BYZANTINE MUSICAL SYMBOL FTHORA MALAKON CHROMA DIFONIAS\0" "BYZANTINE MUSICAL SYMBOL FTHORA MALAKON CHROMA MONOFONIAS\0" "BYZANTINE MUSICAL SYMBOL FTHORA NAOS ICHOS\0" "BYZANTINE MUSICAL SYMBOL FTHORA NENANO\0" "BYZANTINE MUSICAL SYMBOL FTHORA SKLIRON CHROMA SYNAFI\0" "BYZANTINE MUSICAL SYMBOL FTHORA SKLIRON DIATONON DI\0" "BYZANTINE MUSICAL SYMBOL GENIKI DIESIS\0" "BYZANTINE MUSICAL SYMBOL GENIKI YFESIS\0" "BYZANTINE MUSICAL SYMBOL GORGON ARCHAION\0" "BYZANTINE MUSICAL SYMBOL GORGON NEO ANO\0" "BYZANTINE MUSICAL SYMBOL GORGON NEO KATO\0" "BYZANTINE MUSICAL SYMBOL GORGON PARESTIGMENON ARISTERA\0" "BYZANTINE MUSICAL SYMBOL GORGON PARESTIGMENON DEXIA\0" "BYZANTINE MUSICAL SYMBOL GORGOSYNTHETON\0" "BYZANTINE MUSICAL SYMBOL GORTHMIKON N APLOUN\0" "BYZANTINE MUSICAL SYMBOL GORTHMIKON N DIPLOUN\0" "BYZANTINE MUSICAL SYMBOL GRONTHISMATA\0" "BYZANTINE MUSICAL SYMBOL ICHADIN\0" "BYZANTINE MUSICAL SYMBOL IMIDIARGON\0" "BYZANTINE MUSICAL SYMBOL IMIFONON\0" "BYZANTINE MUSICAL SYMBOL IMIFTHORA\0" "BYZANTINE MUSICAL SYMBOL IMIFTHORON\0" "BYZANTINE MUSICAL SYMBOL ISAKIA TELOUS ICHIMATOS\0" "BYZANTINE MUSICAL SYMBOL ISON ARCHAION\0" "BYZANTINE MUSICAL SYMBOL ISON NEO\0" "BYZANTINE MUSICAL SYMBOL KATAVA TROMIKON\0" "BYZANTINE MUSICAL SYMBOL KATAVASMA\0" "BYZANTINE MUSICAL SYMBOL KATHISTI\0" "BYZANTINE MUSICAL SYMBOL KENTIMA ARCHAION\0" "BYZANTINE MUSICAL SYMBOL KENTIMA NEO ANO\0" "BYZANTINE MUSICAL SYMBOL KENTIMA NEO KATO\0" "BYZANTINE MUSICAL SYMBOL KENTIMA NEO MESO\0" "BYZANTINE MUSICAL SYMBOL KENTIMATA\0" "BYZANTINE MUSICAL SYMBOL KENTIMATA ARCHAION\0" "BYZANTINE MUSICAL SYMBOL KENTIMATA NEO ANO\0" "BYZANTINE MUSICAL SYMBOL KENTIMATA NEO KATO\0" "BYZANTINE MUSICAL SYMBOL KENTIMATA NEO MESO\0" "BYZANTINE MUSICAL SYMBOL KLASMA\0" "BYZANTINE MUSICAL SYMBOL KLASMA ANO\0" "BYZANTINE MUSICAL SYMBOL KLASMA KATO\0" "BYZANTINE MUSICAL SYMBOL KONTEVMA\0" "BYZANTINE MUSICAL SYMBOL KONTEVMA ALLO\0" "BYZANTINE MUSICAL SYMBOL KORONIS\0" "BYZANTINE MUSICAL SYMBOL KOUFISMA\0" "BYZANTINE MUSICAL SYMBOL KRATIMA ALLO\0" "BYZANTINE MUSICAL SYMBOL KRATIMA ARCHAION\0" "BYZANTINE MUSICAL SYMBOL KRATIMA NEO\0" "BYZANTINE MUSICAL SYMBOL KRATIMATA\0" "BYZANTINE MUSICAL SYMBOL KRATIMOKOUFISMA\0" "BYZANTINE MUSICAL SYMBOL KRATIMOYPORROON\0" "BYZANTINE MUSICAL SYMBOL KREMASTI\0" "BYZANTINE MUSICAL SYMBOL KYLISMA\0" "BYZANTINE MUSICAL SYMBOL LEIMMA DYO CHRONON\0" "BYZANTINE MUSICAL SYMBOL LEIMMA ENOS CHRONOU\0" "BYZANTINE MUSICAL SYMBOL LEIMMA IMISEOS CHRONOU\0" "BYZANTINE MUSICAL SYMBOL LEIMMA TESSARON CHRONON\0" "BYZANTINE MUSICAL SYMBOL LEIMMA TRION CHRONON\0" "BYZANTINE MUSICAL SYMBOL LEMOI\0" "BYZANTINE MUSICAL SYMBOL LYGISMA\0" "BYZANTINE MUSICAL SYMBOL MARTYRIA ALLI DEYTEROS ICHOS\0" "BYZANTINE MUSICAL SYMBOL MARTYRIA ALLI PROTOS ICHOS\0" "BYZANTINE MUSICAL SYMBOL MARTYRIA DEYTEROS ICHOS\0" "BYZANTINE MUSICAL SYMBOL MARTYRIA LEGETOS ICHOS\0" "BYZANTINE MUSICAL SYMBOL MARTYRIA PLAGIOS ICHOS\0" "BYZANTINE MUSICAL SYMBOL MARTYRIA PLAGIOS TETARTOS ICHOS\0" "BYZANTINE MUSICAL SYMBOL MARTYRIA PROTOS ICHOS\0" "BYZANTINE MUSICAL SYMBOL MARTYRIA PROTOVARYS ICHOS\0" "BYZANTINE MUSICAL SYMBOL MARTYRIA TETARTOS ICHOS\0" "BYZANTINE MUSICAL SYMBOL MARTYRIA TETARTOS LEGETOS ICHOS\0" "BYZANTINE MUSICAL SYMBOL MARTYRIA TRIFONIAS\0" "BYZANTINE MUSICAL SYMBOL MARTYRIA TRITOS ICHOS\0" "BYZANTINE MUSICAL SYMBOL MARTYRIA VARYS ICHOS\0" "BYZANTINE MUSICAL SYMBOL MIKRON ISON\0" "BYZANTINE MUSICAL SYMBOL NANA\0" "BYZANTINE MUSICAL SYMBOL OLIGON ARCHAION\0" "BYZANTINE MUSICAL SYMBOL OLIGON NEO\0" "BYZANTINE MUSICAL SYMBOL OMALON\0" "BYZANTINE MUSICAL SYMBOL OXEIA DIPLI\0" "BYZANTINE MUSICAL SYMBOL OXEIA EKFONITIKON\0" "BYZANTINE MUSICAL SYMBOL OXEIA NEO\0" "BYZANTINE MUSICAL SYMBOL OXEIAI ARCHAION\0" "BYZANTINE MUSICAL SYMBOL OYRANISMA ARCHAION\0" "BYZANTINE MUSICAL SYMBOL OYRANISMA NEO\0" "BYZANTINE MUSICAL SYMBOL PARAKALESMA ARCHAION\0" "BYZANTINE MUSICAL SYMBOL PARAKALESMA NEO\0" "BYZANTINE MUSICAL SYMBOL PARAKLITIKI\0" "BYZANTINE MUSICAL SYMBOL PARAKLITIKI ARCHAION\0" "BYZANTINE MUSICAL SYMBOL PARAKLITIKI NEO\0" "BYZANTINE MUSICAL SYMBOL PARICHON\0" "BYZANTINE MUSICAL SYMBOL PELASTON\0" "BYZANTINE MUSICAL SYMBOL PELASTON NEO\0" "BYZANTINE MUSICAL SYMBOL PERISPOMENI\0" "BYZANTINE MUSICAL SYMBOL PETASMA\0" "BYZANTINE MUSICAL SYMBOL PETASTI\0" "BYZANTINE MUSICAL SYMBOL PETASTOKOUFISMA\0" "BYZANTINE MUSICAL SYMBOL PIASMA ARCHAION\0" "BYZANTINE MUSICAL SYMBOL PIASMA NEO\0" "BYZANTINE MUSICAL SYMBOL PSIFISTOLYGISMA\0" "BYZANTINE MUSICAL SYMBOL PSIFISTON\0" "BYZANTINE MUSICAL SYMBOL PSIFISTON NEO\0" "BYZANTINE MUSICAL SYMBOL PSIFISTOPARAKALESMA\0" "BYZANTINE MUSICAL SYMBOL PSIFISTOSYNAGMA\0" "BYZANTINE MUSICAL SYMBOL PSILI\0" "BYZANTINE MUSICAL SYMBOL PSILON\0" "BYZANTINE MUSICAL SYMBOL RAPISMA\0" "BYZANTINE MUSICAL SYMBOL REVMA\0" "BYZANTINE MUSICAL SYMBOL SAXIMATA\0" "BYZANTINE MUSICAL SYMBOL SEISMA\0" "BYZANTINE MUSICAL SYMBOL SEISMA NEO\0" "BYZANTINE MUSICAL SYMBOL SIMANSIS ARSEOS\0" "BYZANTINE MUSICAL SYMBOL SIMANSIS ARSEOS DISIMOU\0" "BYZANTINE MUSICAL SYMBOL SIMANSIS ARSEOS TETRASIMOU\0" "BYZANTINE MUSICAL SYMBOL SIMANSIS ARSEOS TRISIMOU\0" "BYZANTINE MUSICAL SYMBOL SIMANSIS THESEOS\0" "BYZANTINE MUSICAL SYMBOL SIMANSIS THESEOS DISIMOU\0" "BYZANTINE MUSICAL SYMBOL SIMANSIS THESEOS TETRASIMOU\0" "BYZANTINE MUSICAL SYMBOL SIMANSIS THESEOS TRISIMOU\0" "BYZANTINE MUSICAL SYMBOL STAVROS\0" "BYZANTINE MUSICAL SYMBOL STAVROS APODEXIA\0" "BYZANTINE MUSICAL SYMBOL STIGMA\0" "BYZANTINE MUSICAL SYMBOL STRAGGISMATA\0" "BYZANTINE MUSICAL SYMBOL SYNAGMA ARCHAION\0" "BYZANTINE MUSICAL SYMBOL SYNAGMA META STAVROU\0" "BYZANTINE MUSICAL SYMBOL SYNAGMA NEO\0" "BYZANTINE MUSICAL SYMBOL SYNEVMA\0" "BYZANTINE MUSICAL SYMBOL SYRMA\0" "BYZANTINE MUSICAL SYMBOL SYRMATIKI\0" "BYZANTINE MUSICAL SYMBOL TELEIA\0" "BYZANTINE MUSICAL SYMBOL TESSERA\0" "BYZANTINE MUSICAL SYMBOL TETRAPLI\0" "BYZANTINE MUSICAL SYMBOL THEMA\0" "BYZANTINE MUSICAL SYMBOL THEMA APLOUN\0" "BYZANTINE MUSICAL SYMBOL THEMATISMOS ESO\0" "BYZANTINE MUSICAL SYMBOL THEMATISMOS EXO\0" "BYZANTINE MUSICAL SYMBOL THES KAI APOTHES\0" "BYZANTINE MUSICAL SYMBOL THITA\0" "BYZANTINE MUSICAL SYMBOL TINAGMA\0" "BYZANTINE MUSICAL SYMBOL TRIA\0" "BYZANTINE MUSICAL SYMBOL TRIGORGON\0" "BYZANTINE MUSICAL SYMBOL TRIPLI\0" "BYZANTINE MUSICAL SYMBOL TROMIKOLYGISMA\0" "BYZANTINE MUSICAL SYMBOL TROMIKON ALLO\0" "BYZANTINE MUSICAL SYMBOL TROMIKON ARCHAION\0" "BYZANTINE MUSICAL SYMBOL TROMIKON NEO\0" "BYZANTINE MUSICAL SYMBOL TROMIKOPARAKALESMA\0" "BYZANTINE MUSICAL SYMBOL TROMIKOPSIFISTON\0" "BYZANTINE MUSICAL SYMBOL TROMIKOSYNAGMA\0" "BYZANTINE MUSICAL SYMBOL VAREIA DIPLI\0" "BYZANTINE MUSICAL SYMBOL VAREIA EKFONITIKON\0" "BYZANTINE MUSICAL SYMBOL VAREIA NEO\0" "BYZANTINE MUSICAL SYMBOL VAREIAI ARCHAION\0" "BYZANTINE MUSICAL SYMBOL VATHY\0" "BYZANTINE MUSICAL SYMBOL XIRON KLASMA\0" "BYZANTINE MUSICAL SYMBOL YFEN ANO\0" "BYZANTINE MUSICAL SYMBOL YFEN KATO\0" "BYZANTINE MUSICAL SYMBOL YFESIS APLI DYO DODEKATA\0" "BYZANTINE MUSICAL SYMBOL YFESIS DIGRAMMOS EX DODEKATA\0" "BYZANTINE MUSICAL SYMBOL YFESIS MONOGRAMMOS TESSERA DODEKATA\0" "BYZANTINE MUSICAL SYMBOL YFESIS TRIGRAMMOS OKTO DODEKATA\0" "BYZANTINE MUSICAL SYMBOL YFESIS TRITIMORION\0" "BYZANTINE MUSICAL SYMBOL YPOKRISIS\0" "BYZANTINE MUSICAL SYMBOL YPOKRISIS DIPLI\0" "BYZANTINE MUSICAL SYMBOL YPORROI\0" "BYZANTINE MUSICAL SYMBOL YPSILI\0" "CACTUS\0" "CADA UNA\0" "CADUCEUS\0" "CALENDAR\0" "CAMERA\0" "CANADIAN SYLLABICS A\0" "CANADIAN SYLLABICS AA\0" "CANADIAN SYLLABICS AAI\0" "CANADIAN SYLLABICS AAY\0" "CANADIAN SYLLABICS AI\0" "CANADIAN SYLLABICS AIVILIK B\0" "CANADIAN SYLLABICS AN\0" "CANADIAN SYLLABICS ATHAPASCAN M\0" "CANADIAN SYLLABICS ATHAPASCAN S\0" "CANADIAN SYLLABICS AY\0" "CANADIAN SYLLABICS BEAVER DENE L\0" "CANADIAN SYLLABICS BEAVER DENE R\0" "CANADIAN SYLLABICS BIBLE-CREE Y\0" "CANADIAN SYLLABICS BLACKFOOT A\0" "CANADIAN SYLLABICS BLACKFOOT E\0" "CANADIAN SYLLABICS BLACKFOOT I\0" "CANADIAN SYLLABICS BLACKFOOT KA\0" "CANADIAN SYLLABICS BLACKFOOT KE\0" "CANADIAN SYLLABICS BLACKFOOT KI\0" "CANADIAN SYLLABICS BLACKFOOT KO\0" "CANADIAN SYLLABICS BLACKFOOT NA\0" "CANADIAN SYLLABICS BLACKFOOT NE\0" "CANADIAN SYLLABICS BLACKFOOT NI\0" "CANADIAN SYLLABICS BLACKFOOT NO\0" "CANADIAN SYLLABICS BLACKFOOT O\0" "CANADIAN SYLLABICS BLACKFOOT S\0" "CANADIAN SYLLABICS BLACKFOOT W\0" "CANADIAN SYLLABICS BLACKFOOT WA\0" "CANADIAN SYLLABICS BLACKFOOT WE\0" "CANADIAN SYLLABICS BLACKFOOT WI\0" "CANADIAN SYLLABICS BLACKFOOT WO\0" "CANADIAN SYLLABICS C\0" "CANADIAN SYLLABICS CA\0" "CANADIAN SYLLABICS CAA\0" "CANADIAN SYLLABICS CAAI\0" "CANADIAN SYLLABICS CARRIER CHA\0" "CANADIAN SYLLABICS CARRIER CHE\0" "CANADIAN SYLLABICS CARRIER CHEE\0" "CANADIAN SYLLABICS CARRIER CHI\0" "CANADIAN SYLLABICS CARRIER CHO\0" "CANADIAN SYLLABICS CARRIER CHU\0" "CANADIAN SYLLABICS CARRIER DEE\0" "CANADIAN SYLLABICS CARRIER DENE GEE\0" "CANADIAN SYLLABICS CARRIER DENTAL S\0" "CANADIAN SYLLABICS CARRIER DI\0" "CANADIAN SYLLABICS CARRIER DLA\0" "CANADIAN SYLLABICS CARRIER DLE\0" "CANADIAN SYLLABICS CARRIER DLEE\0" "CANADIAN SYLLABICS CARRIER DLI\0" "CANADIAN SYLLABICS CARRIER DLO\0" "CANADIAN SYLLABICS CARRIER DLU\0" "CANADIAN SYLLABICS CARRIER DZA\0" "CANADIAN SYLLABICS CARRIER DZE\0" "CANADIAN SYLLABICS CARRIER DZEE\0" "CANADIAN SYLLABICS CARRIER DZI\0" "CANADIAN SYLLABICS CARRIER DZO\0" "CANADIAN SYLLABICS CARRIER DZU\0" "CANADIAN SYLLABICS CARRIER EE\0" "CANADIAN SYLLABICS CARRIER GA\0" "CANADIAN SYLLABICS CARRIER GAA\0" "CANADIAN SYLLABICS CARRIER GE\0" "CANADIAN SYLLABICS CARRIER GEE\0" "CANADIAN SYLLABICS CARRIER GHA\0" "CANADIAN SYLLABICS CARRIER GHE\0" "CANADIAN SYLLABICS CARRIER GHEE\0" "CANADIAN SYLLABICS CARRIER GHI\0" "CANADIAN SYLLABICS CARRIER GHO\0" "CANADIAN SYLLABICS CARRIER GHU\0" "CANADIAN SYLLABICS CARRIER GI\0" "CANADIAN SYLLABICS CARRIER GO\0" "CANADIAN SYLLABICS CARRIER GU\0" "CANADIAN SYLLABICS CARRIER GWA\0" "CANADIAN SYLLABICS CARRIER GWU\0" "CANADIAN SYLLABICS CARRIER H\0" "CANADIAN SYLLABICS CARRIER HEE\0" "CANADIAN SYLLABICS CARRIER HI\0" "CANADIAN SYLLABICS CARRIER HWA\0" "CANADIAN SYLLABICS CARRIER HWE\0" "CANADIAN SYLLABICS CARRIER HWEE\0" "CANADIAN SYLLABICS CARRIER HWI\0" "CANADIAN SYLLABICS CARRIER HWO\0" "CANADIAN SYLLABICS CARRIER HWU\0" "CANADIAN SYLLABICS CARRIER I\0" "CANADIAN SYLLABICS CARRIER INITIAL Z\0" "CANADIAN SYLLABICS CARRIER JA\0" "CANADIAN SYLLABICS CARRIER JE\0" "CANADIAN SYLLABICS CARRIER JEE\0" "CANADIAN SYLLABICS CARRIER JI\0" "CANADIAN SYLLABICS CARRIER JJA\0" "CANADIAN SYLLABICS CARRIER JJE\0" "CANADIAN SYLLABICS CARRIER JJEE\0" "CANADIAN SYLLABICS CARRIER JJI\0" "CANADIAN SYLLABICS CARRIER JJO\0" "CANADIAN SYLLABICS CARRIER JJU\0" "CANADIAN SYLLABICS CARRIER JO\0" "CANADIAN SYLLABICS CARRIER JU\0" "CANADIAN SYLLABICS CARRIER JWA\0" "CANADIAN SYLLABICS CARRIER KHA\0" "CANADIAN SYLLABICS CARRIER KHE\0" "CANADIAN SYLLABICS CARRIER KHEE\0" "CANADIAN SYLLABICS CARRIER KHI\0" "CANADIAN SYLLABICS CARRIER KHO\0" "CANADIAN SYLLABICS CARRIER KHU\0" "CANADIAN SYLLABICS CARRIER KK\0" "CANADIAN SYLLABICS CARRIER KKA\0" "CANADIAN SYLLABICS CARRIER KKE\0" "CANADIAN SYLLABICS CARRIER KKEE\0" "CANADIAN SYLLABICS CARRIER KKI\0" "CANADIAN SYLLABICS CARRIER KKO\0" "CANADIAN SYLLABICS CARRIER KKU\0" "CANADIAN SYLLABICS CARRIER LA\0" "CANADIAN SYLLABICS CARRIER LE\0" "CANADIAN SYLLABICS CARRIER LEE\0" "CANADIAN SYLLABICS CARRIER LHA\0" "CANADIAN SYLLABICS CARRIER LHE\0" "CANADIAN SYLLABICS CARRIER LHEE\0" "CANADIAN SYLLABICS CARRIER LHI\0" "CANADIAN SYLLABICS CARRIER LHO\0" "CANADIAN SYLLABICS CARRIER LHU\0" "CANADIAN SYLLABICS CARRIER LI\0" "CANADIAN SYLLABICS CARRIER LO\0" "CANADIAN SYLLABICS CARRIER LU\0" "CANADIAN SYLLABICS CARRIER MA\0" "CANADIAN SYLLABICS CARRIER ME\0" "CANADIAN SYLLABICS CARRIER MEE\0" "CANADIAN SYLLABICS CARRIER MI\0" "CANADIAN SYLLABICS CARRIER MO\0" "CANADIAN SYLLABICS CARRIER MU\0" "CANADIAN SYLLABICS CARRIER NA\0" "CANADIAN SYLLABICS CARRIER NE\0" "CANADIAN SYLLABICS CARRIER NEE\0" "CANADIAN SYLLABICS CARRIER NG\0" "CANADIAN SYLLABICS CARRIER NI\0" "CANADIAN SYLLABICS CARRIER NO\0" "CANADIAN SYLLABICS CARRIER NU\0" "CANADIAN SYLLABICS CARRIER P\0" "CANADIAN SYLLABICS CARRIER PA\0" "CANADIAN SYLLABICS CARRIER PE\0" "CANADIAN SYLLABICS CARRIER PEE\0" "CANADIAN SYLLABICS CARRIER PI\0" "CANADIAN SYLLABICS CARRIER PO\0" "CANADIAN SYLLABICS CARRIER PU\0" "CANADIAN SYLLABICS CARRIER RA\0" "CANADIAN SYLLABICS CARRIER RE\0" "CANADIAN SYLLABICS CARRIER REE\0" "CANADIAN SYLLABICS CARRIER RI\0" "CANADIAN SYLLABICS CARRIER RO\0" "CANADIAN SYLLABICS CARRIER RU\0" "CANADIAN SYLLABICS CARRIER SA\0" "CANADIAN SYLLABICS CARRIER SE\0" "CANADIAN SYLLABICS CARRIER SEE\0" "CANADIAN SYLLABICS CARRIER SH\0" "CANADIAN SYLLABICS CARRIER SHA\0" "CANADIAN SYLLABICS CARRIER SHE\0" "CANADIAN SYLLABICS CARRIER SHEE\0" "CANADIAN SYLLABICS CARRIER SHI\0" "CANADIAN SYLLABICS CARRIER SHO\0" "CANADIAN SYLLABICS CARRIER SHU\0" "CANADIAN SYLLABICS CARRIER SI\0" "CANADIAN SYLLABICS CARRIER SO\0" "CANADIAN SYLLABICS CARRIER SU\0" "CANADIAN SYLLABICS CARRIER THA\0" "CANADIAN SYLLABICS CARRIER THE\0" "CANADIAN SYLLABICS CARRIER THEE\0" "CANADIAN SYLLABICS CARRIER THI\0" "CANADIAN SYLLABICS CARRIER THO\0" "CANADIAN SYLLABICS CARRIER THU\0" "CANADIAN SYLLABICS CARRIER TLA\0" "CANADIAN SYLLABICS CARRIER TLE\0" "CANADIAN SYLLABICS CARRIER TLEE\0" "CANADIAN SYLLABICS CARRIER TLHA\0" "CANADIAN SYLLABICS CARRIER TLHE\0" "CANADIAN SYLLABICS CARRIER TLHEE\0" "CANADIAN SYLLABICS CARRIER TLHI\0" "CANADIAN SYLLABICS CARRIER TLHO\0" "CANADIAN SYLLABICS CARRIER TLHU\0" "CANADIAN SYLLABICS CARRIER TLI\0" "CANADIAN SYLLABICS CARRIER TLO\0" "CANADIAN SYLLABICS CARRIER TLU\0" "CANADIAN SYLLABICS CARRIER TSA\0" "CANADIAN SYLLABICS CARRIER TSE\0" "CANADIAN SYLLABICS CARRIER TSEE\0" "CANADIAN SYLLABICS CARRIER TSI\0" "CANADIAN SYLLABICS CARRIER TSO\0" "CANADIAN SYLLABICS CARRIER TSU\0" "CANADIAN SYLLABICS CARRIER TTA\0" "CANADIAN SYLLABICS CARRIER TTE\0" "CANADIAN SYLLABICS CARRIER TTEE\0" "CANADIAN SYLLABICS CARRIER TTI\0" "CANADIAN SYLLABICS CARRIER TTO\0" "CANADIAN SYLLABICS CARRIER TTSA\0" "CANADIAN SYLLABICS CARRIER TTSE\0" "CANADIAN SYLLABICS CARRIER TTSEE\0" "CANADIAN SYLLABICS CARRIER TTSI\0" "CANADIAN SYLLABICS CARRIER TTSO\0" "CANADIAN SYLLABICS CARRIER TTSU\0" "CANADIAN SYLLABICS CARRIER TTU\0" "CANADIAN SYLLABICS CARRIER WA\0" "CANADIAN SYLLABICS CARRIER WE\0" "CANADIAN SYLLABICS CARRIER WEE\0" "CANADIAN SYLLABICS CARRIER WI\0" "CANADIAN SYLLABICS CARRIER WO\0" "CANADIAN SYLLABICS CARRIER WU\0" "CANADIAN SYLLABICS CARRIER YA\0" "CANADIAN SYLLABICS CARRIER YE\0" "CANADIAN SYLLABICS CARRIER YEE\0" "CANADIAN SYLLABICS CARRIER YI\0" "CANADIAN SYLLABICS CARRIER YO\0" "CANADIAN SYLLABICS CARRIER YU\0" "CANADIAN SYLLABICS CARRIER Z\0" "CANADIAN SYLLABICS CARRIER ZA\0" "CANADIAN SYLLABICS CARRIER ZE\0" "CANADIAN SYLLABICS CARRIER ZEE\0" "CANADIAN SYLLABICS CARRIER ZI\0" "CANADIAN SYLLABICS CARRIER ZO\0" "CANADIAN SYLLABICS CARRIER ZU\0" "CANADIAN SYLLABICS CE\0" "CANADIAN SYLLABICS CHI SIGN\0" "CANADIAN SYLLABICS CI\0" "CANADIAN SYLLABICS CII\0" "CANADIAN SYLLABICS CO\0" "CANADIAN SYLLABICS COO\0" "CANADIAN SYLLABICS CWA\0" "CANADIAN SYLLABICS CWAA\0" "CANADIAN SYLLABICS CWE\0" "CANADIAN SYLLABICS CWI\0" "CANADIAN SYLLABICS CWII\0" "CANADIAN SYLLABICS CWO\0" "CANADIAN SYLLABICS CWOO\0" "CANADIAN SYLLABICS E\0" "CANADIAN SYLLABICS EASTERN W\0" "CANADIAN SYLLABICS EN\0" "CANADIAN SYLLABICS F\0" "CANADIAN SYLLABICS FA\0" "CANADIAN SYLLABICS FAA\0" "CANADIAN SYLLABICS FAAI\0" "CANADIAN SYLLABICS FE\0" "CANADIAN SYLLABICS FI\0" "CANADIAN SYLLABICS FII\0" "CANADIAN SYLLABICS FINAL ACUTE\0" "CANADIAN SYLLABICS FINAL BOTTOM HALF RING\0" "CANADIAN SYLLABICS FINAL DOUBLE ACUTE\0" "CANADIAN SYLLABICS FINAL DOUBLE SHORT VERTICAL STROKES\0" "CANADIAN SYLLABICS FINAL DOWN TACK\0" "CANADIAN SYLLABICS FINAL GRAVE\0" "CANADIAN SYLLABICS FINAL MIDDLE DOT\0" "CANADIAN SYLLABICS FINAL PLUS\0" "CANADIAN SYLLABICS FINAL RAISED DOT\0" "CANADIAN SYLLABICS FINAL RIGHT HALF RING\0" "CANADIAN SYLLABICS FINAL RING\0" "CANADIAN SYLLABICS FINAL SHORT HORIZONTAL STROKE\0" "CANADIAN SYLLABICS FINAL SMALL RING\0" "CANADIAN SYLLABICS FINAL TOP HALF RING\0" "CANADIAN SYLLABICS FO\0" "CANADIAN SYLLABICS FOO\0" "CANADIAN SYLLABICS FULL STOP\0" "CANADIAN SYLLABICS FWAA\0" "CANADIAN SYLLABICS GLOTTAL STOP\0" "CANADIAN SYLLABICS HK\0" "CANADIAN SYLLABICS HYPHEN\0" "CANADIAN SYLLABICS I\0" "CANADIAN SYLLABICS II\0" "CANADIAN SYLLABICS IN\0" "CANADIAN SYLLABICS K\0" "CANADIAN SYLLABICS KA\0" "CANADIAN SYLLABICS KAA\0" "CANADIAN SYLLABICS KAAI\0" "CANADIAN SYLLABICS KAY\0" "CANADIAN SYLLABICS KE\0" "CANADIAN SYLLABICS KI\0" "CANADIAN SYLLABICS KII\0" "CANADIAN SYLLABICS KO\0" "CANADIAN SYLLABICS KOO\0" "CANADIAN SYLLABICS KW\0" "CANADIAN SYLLABICS KWA\0" "CANADIAN SYLLABICS KWAA\0" "CANADIAN SYLLABICS KWAY\0" "CANADIAN SYLLABICS KWE\0" "CANADIAN SYLLABICS KWI\0" "CANADIAN SYLLABICS KWII\0" "CANADIAN SYLLABICS KWO\0" "CANADIAN SYLLABICS KWOO\0" "CANADIAN SYLLABICS L\0" "CANADIAN SYLLABICS LA\0" "CANADIAN SYLLABICS LAA\0" "CANADIAN SYLLABICS LAAI\0" "CANADIAN SYLLABICS LAY\0" "CANADIAN SYLLABICS LE\0" "CANADIAN SYLLABICS LH\0" "CANADIAN SYLLABICS LHA\0" "CANADIAN SYLLABICS LHAA\0" "CANADIAN SYLLABICS LHI\0" "CANADIAN SYLLABICS LHII\0" "CANADIAN SYLLABICS LHO\0" "CANADIAN SYLLABICS LHOO\0" "CANADIAN SYLLABICS LI\0" "CANADIAN SYLLABICS LII\0" "CANADIAN SYLLABICS LO\0" "CANADIAN SYLLABICS LOO\0" "CANADIAN SYLLABICS LWA\0" "CANADIAN SYLLABICS LWAA\0" "CANADIAN SYLLABICS LWE\0" "CANADIAN SYLLABICS LWI\0" "CANADIAN SYLLABICS LWII\0" "CANADIAN SYLLABICS LWO\0" "CANADIAN SYLLABICS LWOO\0" "CANADIAN SYLLABICS M\0" "CANADIAN SYLLABICS MA\0" "CANADIAN SYLLABICS MAA\0" "CANADIAN SYLLABICS MAAI\0" "CANADIAN SYLLABICS MAY\0" "CANADIAN SYLLABICS ME\0" "CANADIAN SYLLABICS MEDIAL L\0" "CANADIAN SYLLABICS MEDIAL R\0" "CANADIAN SYLLABICS MH\0" "CANADIAN SYLLABICS MI\0" "CANADIAN SYLLABICS MII\0" "CANADIAN SYLLABICS MO\0" "CANADIAN SYLLABICS MOO\0" "CANADIAN SYLLABICS MOOSE-CREE SK\0" "CANADIAN SYLLABICS MWA\0" "CANADIAN SYLLABICS MWAA\0" "CANADIAN SYLLABICS MWE\0" "CANADIAN SYLLABICS MWI\0" "CANADIAN SYLLABICS MWII\0" "CANADIAN SYLLABICS MWO\0" "CANADIAN SYLLABICS MWOO\0" "CANADIAN SYLLABICS N\0" "CANADIAN SYLLABICS N-CREE THE\0" "CANADIAN SYLLABICS N-CREE THI\0" "CANADIAN SYLLABICS N-CREE THII\0" "CANADIAN SYLLABICS NA\0" "CANADIAN SYLLABICS NAA\0" "CANADIAN SYLLABICS NAAI\0" "CANADIAN SYLLABICS NASKAPI CWAA\0" "CANADIAN SYLLABICS NASKAPI KWAA\0" "CANADIAN SYLLABICS NASKAPI MWAA\0" "CANADIAN SYLLABICS NASKAPI NWAA\0" "CANADIAN SYLLABICS NASKAPI S-W\0" "CANADIAN SYLLABICS NASKAPI SCWA\0" "CANADIAN SYLLABICS NASKAPI SKW\0" "CANADIAN SYLLABICS NASKAPI SKWA\0" "CANADIAN SYLLABICS NASKAPI SPWA\0" "CANADIAN SYLLABICS NASKAPI STWA\0" "CANADIAN SYLLABICS NASKAPI SWAA\0" "CANADIAN SYLLABICS NASKAPI TWAA\0" "CANADIAN SYLLABICS NASKAPI WAA\0" "CANADIAN SYLLABICS NASKAPI WOO\0" "CANADIAN SYLLABICS NASKAPI YWAA\0" "CANADIAN SYLLABICS NAY\0" "CANADIAN SYLLABICS NE\0" "CANADIAN SYLLABICS NG\0" "CANADIAN SYLLABICS NGA\0" "CANADIAN SYLLABICS NGAA\0" "CANADIAN SYLLABICS NGAAI\0" "CANADIAN SYLLABICS NGAI\0" "CANADIAN SYLLABICS NGI\0" "CANADIAN SYLLABICS NGII\0" "CANADIAN SYLLABICS NGO\0" "CANADIAN SYLLABICS NGOO\0" "CANADIAN SYLLABICS NH\0" "CANADIAN SYLLABICS NI\0" "CANADIAN SYLLABICS NII\0" "CANADIAN SYLLABICS NNG\0" "CANADIAN SYLLABICS NNGA\0" "CANADIAN SYLLABICS NNGAA\0" "CANADIAN SYLLABICS NNGI\0" "CANADIAN SYLLABICS NNGII\0" "CANADIAN SYLLABICS NNGO\0" "CANADIAN SYLLABICS NNGOO\0" "CANADIAN SYLLABICS NO\0" "CANADIAN SYLLABICS NOO\0" "CANADIAN SYLLABICS NOY\0" "CANADIAN SYLLABICS NUNAVIK H\0" "CANADIAN SYLLABICS NUNAVIK HA\0" "CANADIAN SYLLABICS NUNAVIK HAA\0" "CANADIAN SYLLABICS NUNAVIK HE\0" "CANADIAN SYLLABICS NUNAVIK HI\0" "CANADIAN SYLLABICS NUNAVIK HII\0" "CANADIAN SYLLABICS NUNAVIK HO\0" "CANADIAN SYLLABICS NUNAVIK HOO\0" "CANADIAN SYLLABICS NUNAVUT H\0" "CANADIAN SYLLABICS NWA\0" "CANADIAN SYLLABICS NWAA\0" "CANADIAN SYLLABICS NWE\0" "CANADIAN SYLLABICS NWI\0" "CANADIAN SYLLABICS NWII\0" "CANADIAN SYLLABICS NWO\0" "CANADIAN SYLLABICS NWOO\0" "CANADIAN SYLLABICS O\0" "CANADIAN SYLLABICS OJIBWAY C\0" "CANADIAN SYLLABICS OJIBWAY K\0" "CANADIAN SYLLABICS OJIBWAY M\0" "CANADIAN SYLLABICS OJIBWAY N\0" "CANADIAN SYLLABICS OJIBWAY NWI\0" "CANADIAN SYLLABICS OJIBWAY NWII\0" "CANADIAN SYLLABICS OJIBWAY NWO\0" "CANADIAN SYLLABICS OJIBWAY NWOO\0" "CANADIAN SYLLABICS OJIBWAY P\0" "CANADIAN SYLLABICS OJIBWAY S\0" "CANADIAN SYLLABICS OJIBWAY SH\0" "CANADIAN SYLLABICS OJIBWAY T\0" "CANADIAN SYLLABICS ON\0" "CANADIAN SYLLABICS OO\0" "CANADIAN SYLLABICS OY\0" "CANADIAN SYLLABICS P\0" "CANADIAN SYLLABICS PA\0" "CANADIAN SYLLABICS PAA\0" "CANADIAN SYLLABICS PAAI\0" "CANADIAN SYLLABICS PAY\0" "CANADIAN SYLLABICS PE\0" "CANADIAN SYLLABICS PI\0" "CANADIAN SYLLABICS PII\0" "CANADIAN SYLLABICS PO\0" "CANADIAN SYLLABICS POO\0" "CANADIAN SYLLABICS POY\0" "CANADIAN SYLLABICS PWA\0" "CANADIAN SYLLABICS PWAA\0" "CANADIAN SYLLABICS PWE\0" "CANADIAN SYLLABICS PWI\0" "CANADIAN SYLLABICS PWII\0" "CANADIAN SYLLABICS PWO\0" "CANADIAN SYLLABICS PWOO\0" "CANADIAN SYLLABICS PWOY\0" "CANADIAN SYLLABICS Q\0" "CANADIAN SYLLABICS QA\0" "CANADIAN SYLLABICS QAA\0" "CANADIAN SYLLABICS QAAI\0" "CANADIAN SYLLABICS QAI\0" "CANADIAN SYLLABICS QI\0" "CANADIAN SYLLABICS QII\0" "CANADIAN SYLLABICS QO\0" "CANADIAN SYLLABICS QOO\0" "CANADIAN SYLLABICS R\0" "CANADIAN SYLLABICS R-CREE RE\0" "CANADIAN SYLLABICS R-CREE RWE\0" "CANADIAN SYLLABICS RA\0" "CANADIAN SYLLABICS RAA\0" "CANADIAN SYLLABICS RAAI\0" "CANADIAN SYLLABICS RAY\0" "CANADIAN SYLLABICS RE\0" "CANADIAN SYLLABICS RI\0" "CANADIAN SYLLABICS RII\0" "CANADIAN SYLLABICS RO\0" "CANADIAN SYLLABICS ROO\0" "CANADIAN SYLLABICS RWA\0" "CANADIAN SYLLABICS RWAA\0" "CANADIAN SYLLABICS RWEE\0" "CANADIAN SYLLABICS RWI\0" "CANADIAN SYLLABICS RWII\0" "CANADIAN SYLLABICS RWO\0" "CANADIAN SYLLABICS RWOO\0" "CANADIAN SYLLABICS S\0" "CANADIAN SYLLABICS SA\0" "CANADIAN SYLLABICS SAA\0" "CANADIAN SYLLABICS SAAI\0" "CANADIAN SYLLABICS SAY\0" "CANADIAN SYLLABICS SAYISI HA\0" "CANADIAN SYLLABICS SAYISI HE\0" "CANADIAN SYLLABICS SAYISI HI\0" "CANADIAN SYLLABICS SAYISI HO\0" "CANADIAN SYLLABICS SAYISI HOO\0" "CANADIAN SYLLABICS SAYISI JI\0" "CANADIAN SYLLABICS SAYISI JU\0" "CANADIAN SYLLABICS SAYISI JUU\0" "CANADIAN SYLLABICS SAYISI M\0" "CANADIAN SYLLABICS SAYISI SHA\0" "CANADIAN SYLLABICS SAYISI SHE\0" "CANADIAN SYLLABICS SAYISI SHI\0" "CANADIAN SYLLABICS SAYISI SHO\0" "CANADIAN SYLLABICS SAYISI SHOO\0" "CANADIAN SYLLABICS SAYISI SHWE\0" "CANADIAN SYLLABICS SAYISI TH\0" "CANADIAN SYLLABICS SAYISI YI\0" "CANADIAN SYLLABICS SE\0" "CANADIAN SYLLABICS SH\0" "CANADIAN SYLLABICS SHA\0" "CANADIAN SYLLABICS SHAA\0" "CANADIAN SYLLABICS SHAY\0" "CANADIAN SYLLABICS SHE\0" "CANADIAN SYLLABICS SHI\0" "CANADIAN SYLLABICS SHII\0" "CANADIAN SYLLABICS SHO\0" "CANADIAN SYLLABICS SHOO\0" "CANADIAN SYLLABICS SHOY\0" "CANADIAN SYLLABICS SHWA\0" "CANADIAN SYLLABICS SHWAA\0" "CANADIAN SYLLABICS SHWE\0" "CANADIAN SYLLABICS SHWI\0" "CANADIAN SYLLABICS SHWII\0" "CANADIAN SYLLABICS SHWO\0" "CANADIAN SYLLABICS SHWOO\0" "CANADIAN SYLLABICS SHWOY\0" "CANADIAN SYLLABICS SI\0" "CANADIAN SYLLABICS SII\0" "CANADIAN SYLLABICS SO\0" "CANADIAN SYLLABICS SOO\0" "CANADIAN SYLLABICS SOUTH-SLAVEY KAH\0" "CANADIAN SYLLABICS SOUTH-SLAVEY KEH\0" "CANADIAN SYLLABICS SOUTH-SLAVEY KIH\0" "CANADIAN SYLLABICS SOUTH-SLAVEY KOH\0" "CANADIAN SYLLABICS SOY\0" "CANADIAN SYLLABICS SW\0" "CANADIAN SYLLABICS SWA\0" "CANADIAN SYLLABICS SWAA\0" "CANADIAN SYLLABICS SWE\0" "CANADIAN SYLLABICS SWI\0" "CANADIAN SYLLABICS SWII\0" "CANADIAN SYLLABICS SWO\0" "CANADIAN SYLLABICS SWOO\0" "CANADIAN SYLLABICS T\0" "CANADIAN SYLLABICS TA\0" "CANADIAN SYLLABICS TAA\0" "CANADIAN SYLLABICS TAAI\0" "CANADIAN SYLLABICS TAY\0" "CANADIAN SYLLABICS TE\0" "CANADIAN SYLLABICS TH\0" "CANADIAN SYLLABICS TH-CREE TH\0" "CANADIAN SYLLABICS TH-CREE THA\0" "CANADIAN SYLLABICS TH-CREE THAA\0" "CANADIAN SYLLABICS TH-CREE THE\0" "CANADIAN SYLLABICS TH-CREE THI\0" "CANADIAN SYLLABICS TH-CREE THII\0" "CANADIAN SYLLABICS TH-CREE THO\0" "CANADIAN SYLLABICS TH-CREE THOO\0" "CANADIAN SYLLABICS THA\0" "CANADIAN SYLLABICS THAA\0" "CANADIAN SYLLABICS THE\0" "CANADIAN SYLLABICS THI\0" "CANADIAN SYLLABICS THII\0" "CANADIAN SYLLABICS THO\0" "CANADIAN SYLLABICS THOO\0" "CANADIAN SYLLABICS THWA\0" "CANADIAN SYLLABICS THWAA\0" "CANADIAN SYLLABICS THWE\0" "CANADIAN SYLLABICS TI\0" "CANADIAN SYLLABICS TII\0" "CANADIAN SYLLABICS TLHA\0" "CANADIAN SYLLABICS TLHE\0" "CANADIAN SYLLABICS TLHI\0" "CANADIAN SYLLABICS TLHO\0" "CANADIAN SYLLABICS TLHOO\0" "CANADIAN SYLLABICS TLHWE\0" "CANADIAN SYLLABICS TO\0" "CANADIAN SYLLABICS TOO\0" "CANADIAN SYLLABICS TTA\0" "CANADIAN SYLLABICS TTE\0" "CANADIAN SYLLABICS TTH\0" "CANADIAN SYLLABICS TTHA\0" "CANADIAN SYLLABICS TTHAA\0" "CANADIAN SYLLABICS TTHE\0" "CANADIAN SYLLABICS TTHI\0" "CANADIAN SYLLABICS TTHO\0" "CANADIAN SYLLABICS TTHOO\0" "CANADIAN SYLLABICS TTHWE\0" "CANADIAN SYLLABICS TTI\0" "CANADIAN SYLLABICS TTO\0" "CANADIAN SYLLABICS TWA\0" "CANADIAN SYLLABICS TWAA\0" "CANADIAN SYLLABICS TWE\0" "CANADIAN SYLLABICS TWI\0" "CANADIAN SYLLABICS TWII\0" "CANADIAN SYLLABICS TWO\0" "CANADIAN SYLLABICS TWOO\0" "CANADIAN SYLLABICS TYA\0" "CANADIAN SYLLABICS TYE\0" "CANADIAN SYLLABICS TYI\0" "CANADIAN SYLLABICS TYO\0" "CANADIAN SYLLABICS WA\0" "CANADIAN SYLLABICS WAA\0" "CANADIAN SYLLABICS WAY\0" "CANADIAN SYLLABICS WE\0" "CANADIAN SYLLABICS WEST-CREE CWA\0" "CANADIAN SYLLABICS WEST-CREE CWAA\0" "CANADIAN SYLLABICS WEST-CREE CWE\0" "CANADIAN SYLLABICS WEST-CREE CWI\0" "CANADIAN SYLLABICS WEST-CREE CWII\0" "CANADIAN SYLLABICS WEST-CREE CWO\0" "CANADIAN SYLLABICS WEST-CREE CWOO\0" "CANADIAN SYLLABICS WEST-CREE FWAA\0" "CANADIAN SYLLABICS WEST-CREE KWA\0" "CANADIAN SYLLABICS WEST-CREE KWAA\0" "CANADIAN SYLLABICS WEST-CREE KWE\0" "CANADIAN SYLLABICS WEST-CREE KWI\0" "CANADIAN SYLLABICS WEST-CREE KWII\0" "CANADIAN SYLLABICS WEST-CREE KWO\0" "CANADIAN SYLLABICS WEST-CREE KWOO\0" "CANADIAN SYLLABICS WEST-CREE L\0" "CANADIAN SYLLABICS WEST-CREE LA\0" "CANADIAN SYLLABICS WEST-CREE LAA\0" "CANADIAN SYLLABICS WEST-CREE LE\0" "CANADIAN SYLLABICS WEST-CREE LO\0" "CANADIAN SYLLABICS WEST-CREE LOO\0" "CANADIAN SYLLABICS WEST-CREE LWA\0" "CANADIAN SYLLABICS WEST-CREE LWAA\0" "CANADIAN SYLLABICS WEST-CREE LWE\0" "CANADIAN SYLLABICS WEST-CREE LWI\0" "CANADIAN SYLLABICS WEST-CREE LWII\0" "CANADIAN SYLLABICS WEST-CREE LWO\0" "CANADIAN SYLLABICS WEST-CREE LWOO\0" "CANADIAN SYLLABICS WEST-CREE M\0" "CANADIAN SYLLABICS WEST-CREE MWA\0" "CANADIAN SYLLABICS WEST-CREE MWAA\0" "CANADIAN SYLLABICS WEST-CREE MWE\0" "CANADIAN SYLLABICS WEST-CREE MWI\0" "CANADIAN SYLLABICS WEST-CREE MWII\0" "CANADIAN SYLLABICS WEST-CREE MWO\0" "CANADIAN SYLLABICS WEST-CREE MWOO\0" "CANADIAN SYLLABICS WEST-CREE NWA\0" "CANADIAN SYLLABICS WEST-CREE NWAA\0" "CANADIAN SYLLABICS WEST-CREE NWE\0" "CANADIAN SYLLABICS WEST-CREE P\0" "CANADIAN SYLLABICS WEST-CREE PWA\0" "CANADIAN SYLLABICS WEST-CREE PWAA\0" "CANADIAN SYLLABICS WEST-CREE PWE\0" "CANADIAN SYLLABICS WEST-CREE PWI\0" "CANADIAN SYLLABICS WEST-CREE PWII\0" "CANADIAN SYLLABICS WEST-CREE PWO\0" "CANADIAN SYLLABICS WEST-CREE PWOO\0" "CANADIAN SYLLABICS WEST-CREE R\0" "CANADIAN SYLLABICS WEST-CREE RA\0" "CANADIAN SYLLABICS WEST-CREE RE\0" "CANADIAN SYLLABICS WEST-CREE RI\0" "CANADIAN SYLLABICS WEST-CREE RO\0" "CANADIAN SYLLABICS WEST-CREE RWAA\0" "CANADIAN SYLLABICS WEST-CREE SHWA\0" "CANADIAN SYLLABICS WEST-CREE SHWAA\0" "CANADIAN SYLLABICS WEST-CREE SHWE\0" "CANADIAN SYLLABICS WEST-CREE SHWI\0" "CANADIAN SYLLABICS WEST-CREE SHWII\0" "CANADIAN SYLLABICS WEST-CREE SHWO\0" "CANADIAN SYLLABICS WEST-CREE SHWOO\0" "CANADIAN SYLLABICS WEST-CREE SWA\0" "CANADIAN SYLLABICS WEST-CREE SWAA\0" "CANADIAN SYLLABICS WEST-CREE SWE\0" "CANADIAN SYLLABICS WEST-CREE SWI\0" "CANADIAN SYLLABICS WEST-CREE SWII\0" "CANADIAN SYLLABICS WEST-CREE SWO\0" "CANADIAN SYLLABICS WEST-CREE SWOO\0" "CANADIAN SYLLABICS WEST-CREE THWAA\0" "CANADIAN SYLLABICS WEST-CREE TWA\0" "CANADIAN SYLLABICS WEST-CREE TWAA\0" "CANADIAN SYLLABICS WEST-CREE TWE\0" "CANADIAN SYLLABICS WEST-CREE TWI\0" "CANADIAN SYLLABICS WEST-CREE TWII\0" "CANADIAN SYLLABICS WEST-CREE TWO\0" "CANADIAN SYLLABICS WEST-CREE TWOO\0" "CANADIAN SYLLABICS WEST-CREE WA\0" "CANADIAN SYLLABICS WEST-CREE WAA\0" "CANADIAN SYLLABICS WEST-CREE WE\0" "CANADIAN SYLLABICS WEST-CREE WI\0" "CANADIAN SYLLABICS WEST-CREE WII\0" "CANADIAN SYLLABICS WEST-CREE WO\0" "CANADIAN SYLLABICS WEST-CREE WOO\0" "CANADIAN SYLLABICS WEST-CREE Y\0" "CANADIAN SYLLABICS WEST-CREE YWA\0" "CANADIAN SYLLABICS WEST-CREE YWAA\0" "CANADIAN SYLLABICS WEST-CREE YWE\0" "CANADIAN SYLLABICS WEST-CREE YWI\0" "CANADIAN SYLLABICS WEST-CREE YWII\0" "CANADIAN SYLLABICS WEST-CREE YWO\0" "CANADIAN SYLLABICS WEST-CREE YWOO\0" "CANADIAN SYLLABICS WESTERN W\0" "CANADIAN SYLLABICS WI\0" "CANADIAN SYLLABICS WII\0" "CANADIAN SYLLABICS WO\0" "CANADIAN SYLLABICS WOO\0" "CANADIAN SYLLABICS WOODS-CREE FINAL TH\0" "CANADIAN SYLLABICS WOODS-CREE TH\0" "CANADIAN SYLLABICS WOODS-CREE THA\0" "CANADIAN SYLLABICS WOODS-CREE THE\0" "CANADIAN SYLLABICS WOODS-CREE THI\0" "CANADIAN SYLLABICS WOODS-CREE THO\0" "CANADIAN SYLLABICS WOODS-CREE THWA\0" "CANADIAN SYLLABICS WOODS-CREE THWAA\0" "CANADIAN SYLLABICS WOODS-CREE THWEE\0" "CANADIAN SYLLABICS WOODS-CREE THWI\0" "CANADIAN SYLLABICS WOODS-CREE THWII\0" "CANADIAN SYLLABICS WOODS-CREE THWO\0" "CANADIAN SYLLABICS WOODS-CREE THWOO\0" "CANADIAN SYLLABICS Y\0" "CANADIAN SYLLABICS Y-CREE COO\0" "CANADIAN SYLLABICS Y-CREE KOO\0" "CANADIAN SYLLABICS Y-CREE LOO\0" "CANADIAN SYLLABICS Y-CREE MOO\0" "CANADIAN SYLLABICS Y-CREE NOO\0" "CANADIAN SYLLABICS Y-CREE OO\0" "CANADIAN SYLLABICS Y-CREE POO\0" "CANADIAN SYLLABICS Y-CREE PWAA\0" "CANADIAN SYLLABICS Y-CREE SOO\0" "CANADIAN SYLLABICS Y-CREE TOO\0" "CANADIAN SYLLABICS Y-CREE W\0" "CANADIAN SYLLABICS Y-CREE YOO\0" "CANADIAN SYLLABICS YA\0" "CANADIAN SYLLABICS YAA\0" "CANADIAN SYLLABICS YAAI\0" "CANADIAN SYLLABICS YAY\0" "CANADIAN SYLLABICS YE\0" "CANADIAN SYLLABICS YI\0" "CANADIAN SYLLABICS YII\0" "CANADIAN SYLLABICS YO\0" "CANADIAN SYLLABICS YOO\0" "CANADIAN SYLLABICS YOY\0" "CANADIAN SYLLABICS YWA\0" "CANADIAN SYLLABICS YWAA\0" "CANADIAN SYLLABICS YWE\0" "CANADIAN SYLLABICS YWI\0" "CANADIAN SYLLABICS YWII\0" "CANADIAN SYLLABICS YWO\0" "CANADIAN SYLLABICS YWOO\0" "CANCEL TAG\0" "CANCER\0" "CANDY\0" "CAPRICORN\0" "CAR SLIDING\0" "CARD INDEX\0" "CARE OF\0" "CARET\0" "CARET INSERTION POINT\0" "CARIAN LETTER A\0" "CARIAN LETTER A2\0" "CARIAN LETTER B\0" "CARIAN LETTER C-18\0" "CARIAN LETTER C-39\0" "CARIAN LETTER D\0" "CARIAN LETTER D2\0" "CARIAN LETTER E\0" "CARIAN LETTER E2\0" "CARIAN LETTER G\0" "CARIAN LETTER G2\0" "CARIAN LETTER I\0" "CARIAN LETTER II\0" "CARIAN LETTER K\0" "CARIAN LETTER K2\0" "CARIAN LETTER L\0" "CARIAN LETTER LD\0" "CARIAN LETTER LD2\0" "CARIAN LETTER M\0" "CARIAN LETTER MB\0" "CARIAN LETTER MB2\0" "CARIAN LETTER MB3\0" "CARIAN LETTER MB4\0" "CARIAN LETTER N\0" "CARIAN LETTER ND\0" "CARIAN LETTER NG\0" "CARIAN LETTER NN\0" "CARIAN LETTER O\0" "CARIAN LETTER P\0" "CARIAN LETTER P2\0" "CARIAN LETTER Q\0" "CARIAN LETTER R\0" "CARIAN LETTER RR\0" "CARIAN LETTER S\0" "CARIAN LETTER SH\0" "CARIAN LETTER SH2\0" "CARIAN LETTER SS\0" "CARIAN LETTER ST\0" "CARIAN LETTER ST2\0" "CARIAN LETTER T\0" "CARIAN LETTER TT\0" "CARIAN LETTER TT2\0" "CARIAN LETTER U\0" "CARIAN LETTER UU\0" "CARIAN LETTER UUU\0" "CARIAN LETTER UUU2\0" "CARIAN LETTER UUU3\0" "CARIAN LETTER UUUU\0" "CARIAN LETTER X\0" "CARON\0" "CAROUSEL HORSE\0" "CARP STREAMER\0" "CASTLE\0" "CAT\0" "CAT FACE\0" "CAT FACE WITH TEARS OF JOY\0" "CAT FACE WITH WRY SMILE\0" "CAUTION SIGN\0" "CEDI SIGN\0" "CEDILLA\0" "CENT SIGN\0" "CENTRE LINE SYMBOL\0" "CENTRELINE LOW LINE\0" "CENTRELINE OVERLINE\0" "CERES\0" "CHAINS\0" "CHAM CONSONANT SIGN FINAL H\0" "CHAM CONSONANT SIGN FINAL M\0" "CHAM CONSONANT SIGN FINAL NG\0" "CHAM CONSONANT SIGN LA\0" "CHAM CONSONANT SIGN RA\0" "CHAM CONSONANT SIGN WA\0" "CHAM CONSONANT SIGN YA\0" "CHAM DIGIT EIGHT\0" "CHAM DIGIT FIVE\0" "CHAM DIGIT FOUR\0" "CHAM DIGIT NINE\0" "CHAM DIGIT ONE\0" "CHAM DIGIT SEVEN\0" "CHAM DIGIT SIX\0" "CHAM DIGIT THREE\0" "CHAM DIGIT TWO\0" "CHAM DIGIT ZERO\0" "CHAM LETTER A\0" "CHAM LETTER AI\0" "CHAM LETTER BA\0" "CHAM LETTER BBA\0" "CHAM LETTER BHA\0" "CHAM LETTER CHA\0" "CHAM LETTER CHHA\0" "CHAM LETTER DA\0" "CHAM LETTER DDA\0" "CHAM LETTER DHA\0" "CHAM LETTER E\0" "CHAM LETTER FINAL CH\0" "CHAM LETTER FINAL G\0" "CHAM LETTER FINAL K\0" "CHAM LETTER FINAL L\0" "CHAM LETTER FINAL N\0" "CHAM LETTER FINAL NG\0" "CHAM LETTER FINAL P\0" "CHAM LETTER FINAL R\0" "CHAM LETTER FINAL SS\0" "CHAM LETTER FINAL T\0" "CHAM LETTER FINAL Y\0" "CHAM LETTER GA\0" "CHAM LETTER GHA\0" "CHAM LETTER HA\0" "CHAM LETTER I\0" "CHAM LETTER JA\0" "CHAM LETTER JHA\0" "CHAM LETTER KA\0" "CHAM LETTER KHA\0" "CHAM LETTER LA\0" "CHAM LETTER MA\0" "CHAM LETTER MUE\0" "CHAM LETTER NA\0" "CHAM LETTER NGA\0" "CHAM LETTER NGUE\0" "CHAM LETTER NHA\0" "CHAM LETTER NHJA\0" "CHAM LETTER NHUE\0" "CHAM LETTER NUE\0" "CHAM LETTER O\0" "CHAM LETTER PA\0" "CHAM LETTER PHA\0" "CHAM LETTER PPA\0" "CHAM LETTER RA\0" "CHAM LETTER SA\0" "CHAM LETTER SSA\0" "CHAM LETTER TA\0" "CHAM LETTER THA\0" "CHAM LETTER U\0" "CHAM LETTER VA\0" "CHAM LETTER YA\0" "CHAM PUNCTUATION DANDA\0" "CHAM PUNCTUATION DOUBLE DANDA\0" "CHAM PUNCTUATION SPIRAL\0" "CHAM PUNCTUATION TRIPLE DANDA\0" "CHAM VOWEL SIGN AA\0" "CHAM VOWEL SIGN AI\0" "CHAM VOWEL SIGN AU\0" "CHAM VOWEL SIGN EI\0" "CHAM VOWEL SIGN I\0" "CHAM VOWEL SIGN II\0" "CHAM VOWEL SIGN O\0" "CHAM VOWEL SIGN OE\0" "CHAM VOWEL SIGN U\0" "CHAM VOWEL SIGN UE\0" "CHARACTER TIE\0" "CHART WITH DOWNWARDS TREND\0" "CHART WITH UPWARDS TREND\0" "CHART WITH UPWARDS TREND AND YEN SIGN\0" "CHECK MARK\0" "CHEERING MEGAPHONE\0" "CHEQUERED FLAG\0" "CHEROKEE LETTER A\0" "CHEROKEE LETTER DA\0" "CHEROKEE LETTER DE\0" "CHEROKEE LETTER DI\0" "CHEROKEE LETTER DLA\0" "CHEROKEE LETTER DO\0" "CHEROKEE LETTER DU\0" "CHEROKEE LETTER DV\0" "CHEROKEE LETTER E\0" "CHEROKEE LETTER GA\0" "CHEROKEE LETTER GE\0" "CHEROKEE LETTER GI\0" "CHEROKEE LETTER GO\0" "CHEROKEE LETTER GU\0" "CHEROKEE LETTER GV\0" "CHEROKEE LETTER HA\0" "CHEROKEE LETTER HE\0" "CHEROKEE LETTER HI\0" "CHEROKEE LETTER HNA\0" "CHEROKEE LETTER HO\0" "CHEROKEE LETTER HU\0" "CHEROKEE LETTER HV\0" "CHEROKEE LETTER I\0" "CHEROKEE LETTER KA\0" "CHEROKEE LETTER LA\0" "CHEROKEE LETTER LE\0" "CHEROKEE LETTER LI\0" "CHEROKEE LETTER LO\0" "CHEROKEE LETTER LU\0" "CHEROKEE LETTER LV\0" "CHEROKEE LETTER MA\0" "CHEROKEE LETTER ME\0" "CHEROKEE LETTER MI\0" "CHEROKEE LETTER MO\0" "CHEROKEE LETTER MU\0" "CHEROKEE LETTER NA\0" "CHEROKEE LETTER NAH\0" "CHEROKEE LETTER NE\0" "CHEROKEE LETTER NI\0" "CHEROKEE LETTER NO\0" "CHEROKEE LETTER NU\0" "CHEROKEE LETTER NV\0" "CHEROKEE LETTER O\0" "CHEROKEE LETTER QUA\0" "CHEROKEE LETTER QUE\0" "CHEROKEE LETTER QUI\0" "CHEROKEE LETTER QUO\0" "CHEROKEE LETTER QUU\0" "CHEROKEE LETTER QUV\0" "CHEROKEE LETTER S\0" "CHEROKEE LETTER SA\0" "CHEROKEE LETTER SE\0" "CHEROKEE LETTER SI\0" "CHEROKEE LETTER SO\0" "CHEROKEE LETTER SU\0" "CHEROKEE LETTER SV\0" "CHEROKEE LETTER TA\0" "CHEROKEE LETTER TE\0" "CHEROKEE LETTER TI\0" "CHEROKEE LETTER TLA\0" "CHEROKEE LETTER TLE\0" "CHEROKEE LETTER TLI\0" "CHEROKEE LETTER TLO\0" "CHEROKEE LETTER TLU\0" "CHEROKEE LETTER TLV\0" "CHEROKEE LETTER TSA\0" "CHEROKEE LETTER TSE\0" "CHEROKEE LETTER TSI\0" "CHEROKEE LETTER TSO\0" "CHEROKEE LETTER TSU\0" "CHEROKEE LETTER TSV\0" "CHEROKEE LETTER U\0" "CHEROKEE LETTER V\0" "CHEROKEE LETTER WA\0" "CHEROKEE LETTER WE\0" "CHEROKEE LETTER WI\0" "CHEROKEE LETTER WO\0" "CHEROKEE LETTER WU\0" "CHEROKEE LETTER WV\0" "CHEROKEE LETTER YA\0" "CHEROKEE LETTER YE\0" "CHEROKEE LETTER YI\0" "CHEROKEE LETTER YO\0" "CHEROKEE LETTER YU\0" "CHEROKEE LETTER YV\0" "CHERRIES\0" "CHERRY BLOSSOM\0" "CHESTNUT\0" "CHI RHO\0" "CHICKEN\0" "CHILDREN CROSSING\0" "CHIRON\0" "CHOCOLATE BAR\0" "CHRISTMAS TREE\0" "CHURCH\0" "CINEMA\0" "CIRCLE DIVIDED BY HORIZONTAL BAR AND TOP HALF DIVIDED BY VERTICAL BAR\0" "CIRCLE WITH ALL BUT UPPER LEFT QUADRANT BLACK\0" "CIRCLE WITH HORIZONTAL BAR\0" "CIRCLE WITH LEFT HALF BLACK\0" "CIRCLE WITH LOWER HALF BLACK\0" "CIRCLE WITH RIGHT HALF BLACK\0" "CIRCLE WITH SMALL CIRCLE TO THE RIGHT\0" "CIRCLE WITH SUPERIMPOSED X\0" "CIRCLE WITH TWO HORIZONTAL STROKES TO THE RIGHT\0" "CIRCLE WITH UPPER HALF BLACK\0" "CIRCLE WITH UPPER RIGHT QUADRANT BLACK\0" "CIRCLE WITH VERTICAL FILL\0" "CIRCLED ANTICLOCKWISE-ROTATED DIVISION SIGN\0" "CIRCLED ASTERISK OPERATOR\0" "CIRCLED BULLET\0" "CIRCLED CD\0" "CIRCLED CROSSING LANES\0" "CIRCLED DASH\0" "CIRCLED DIGIT EIGHT\0" "CIRCLED DIGIT FIVE\0" "CIRCLED DIGIT FOUR\0" "CIRCLED DIGIT NINE\0" "CIRCLED DIGIT ONE\0" "CIRCLED DIGIT SEVEN\0" "CIRCLED DIGIT SIX\0" "CIRCLED DIGIT THREE\0" "CIRCLED DIGIT TWO\0" "CIRCLED DIGIT ZERO\0" "CIRCLED DIVISION SIGN\0" "CIRCLED DIVISION SLASH\0" "CIRCLED DOT OPERATOR\0" "CIRCLED EQUALS\0" "CIRCLED GREATER-THAN\0" "CIRCLED HANGUL CHIEUCH\0" "CIRCLED HANGUL CHIEUCH A\0" "CIRCLED HANGUL CIEUC\0" "CIRCLED HANGUL CIEUC A\0" "CIRCLED HANGUL HIEUH\0" "CIRCLED HANGUL HIEUH A\0" "CIRCLED HANGUL IEUNG\0" "CIRCLED HANGUL IEUNG A\0" "CIRCLED HANGUL IEUNG U\0" "CIRCLED HANGUL KHIEUKH\0" "CIRCLED HANGUL KHIEUKH A\0" "CIRCLED HANGUL KIYEOK\0" "CIRCLED HANGUL KIYEOK A\0" "CIRCLED HANGUL MIEUM\0" "CIRCLED HANGUL MIEUM A\0" "CIRCLED HANGUL NIEUN\0" "CIRCLED HANGUL NIEUN A\0" "CIRCLED HANGUL PHIEUPH\0" "CIRCLED HANGUL PHIEUPH A\0" "CIRCLED HANGUL PIEUP\0" "CIRCLED HANGUL PIEUP A\0" "CIRCLED HANGUL RIEUL\0" "CIRCLED HANGUL RIEUL A\0" "CIRCLED HANGUL SIOS\0" "CIRCLED HANGUL SIOS A\0" "CIRCLED HANGUL THIEUTH\0" "CIRCLED HANGUL THIEUTH A\0" "CIRCLED HANGUL TIKEUT\0" "CIRCLED HANGUL TIKEUT A\0" "CIRCLED HEAVY WHITE RIGHTWARDS ARROW\0" "CIRCLED HORIZONTAL BAR WITH NOTCH\0" "CIRCLED IDEOGRAPH ACCEPT\0" "CIRCLED IDEOGRAPH ADVANTAGE\0" "CIRCLED IDEOGRAPH ALLIANCE\0" "CIRCLED IDEOGRAPH ATTENTION\0" "CIRCLED IDEOGRAPH CENTRE\0" "CIRCLED IDEOGRAPH CONGRATULATION\0" "CIRCLED IDEOGRAPH COPY\0" "CIRCLED IDEOGRAPH CORRECT\0" "CIRCLED IDEOGRAPH EARTH\0" "CIRCLED IDEOGRAPH EIGHT\0" "CIRCLED IDEOGRAPH ENTERPRISE\0" "CIRCLED IDEOGRAPH EXCELLENT\0" "CIRCLED IDEOGRAPH FEMALE\0" "CIRCLED IDEOGRAPH FINANCIAL\0" "CIRCLED IDEOGRAPH FIRE\0" "CIRCLED IDEOGRAPH FIVE\0" "CIRCLED IDEOGRAPH FOUR\0" "CIRCLED IDEOGRAPH HAVE\0" "CIRCLED IDEOGRAPH HIGH\0" "CIRCLED IDEOGRAPH ITEM\0" "CIRCLED IDEOGRAPH KINDERGARTEN\0" "CIRCLED IDEOGRAPH KOTO\0" "CIRCLED IDEOGRAPH LABOR\0" "CIRCLED IDEOGRAPH LEFT\0" "CIRCLED IDEOGRAPH LOW\0" "CIRCLED IDEOGRAPH MALE\0" "CIRCLED IDEOGRAPH MEDICINE\0" "CIRCLED IDEOGRAPH METAL\0" "CIRCLED IDEOGRAPH MOON\0" "CIRCLED IDEOGRAPH NAME\0" "CIRCLED IDEOGRAPH NIGHT\0" "CIRCLED IDEOGRAPH NINE\0" "CIRCLED IDEOGRAPH ONE\0" "CIRCLED IDEOGRAPH PRINT\0" "CIRCLED IDEOGRAPH QUESTION\0" "CIRCLED IDEOGRAPH RELIGION\0" "CIRCLED IDEOGRAPH RESOURCE\0" "CIRCLED IDEOGRAPH REST\0" "CIRCLED IDEOGRAPH RIGHT\0" "CIRCLED IDEOGRAPH SCHOOL\0" "CIRCLED IDEOGRAPH SECRET\0" "CIRCLED IDEOGRAPH SEVEN\0" "CIRCLED IDEOGRAPH SIX\0" "CIRCLED IDEOGRAPH SOCIETY\0" "CIRCLED IDEOGRAPH SPECIAL\0" "CIRCLED IDEOGRAPH STOCK\0" "CIRCLED IDEOGRAPH STUDY\0" "CIRCLED IDEOGRAPH SUITABLE\0" "CIRCLED IDEOGRAPH SUN\0" "CIRCLED IDEOGRAPH SUPERVISE\0" "CIRCLED IDEOGRAPH TEN\0" "CIRCLED IDEOGRAPH THREE\0" "CIRCLED IDEOGRAPH TWO\0" "CIRCLED IDEOGRAPH WATER\0" "CIRCLED IDEOGRAPH WOOD\0" "CIRCLED ITALIC LATIN CAPITAL LETTER C\0" "CIRCLED ITALIC LATIN CAPITAL LETTER R\0" "CIRCLED KATAKANA A\0" "CIRCLED KATAKANA E\0" "CIRCLED KATAKANA HA\0" "CIRCLED KATAKANA HE\0" "CIRCLED KATAKANA HI\0" "CIRCLED KATAKANA HO\0" "CIRCLED KATAKANA HU\0" "CIRCLED KATAKANA I\0" "CIRCLED KATAKANA KA\0" "CIRCLED KATAKANA KE\0" "CIRCLED KATAKANA KI\0" "CIRCLED KATAKANA KO\0" "CIRCLED KATAKANA KU\0" "CIRCLED KATAKANA MA\0" "CIRCLED KATAKANA ME\0" "CIRCLED KATAKANA MI\0" "CIRCLED KATAKANA MO\0" "CIRCLED KATAKANA MU\0" "CIRCLED KATAKANA NA\0" "CIRCLED KATAKANA NE\0" "CIRCLED KATAKANA NI\0" "CIRCLED KATAKANA NO\0" "CIRCLED KATAKANA NU\0" "CIRCLED KATAKANA O\0" "CIRCLED KATAKANA RA\0" "CIRCLED KATAKANA RE\0" "CIRCLED KATAKANA RI\0" "CIRCLED KATAKANA RO\0" "CIRCLED KATAKANA RU\0" "CIRCLED KATAKANA SA\0" "CIRCLED KATAKANA SE\0" "CIRCLED KATAKANA SI\0" "CIRCLED KATAKANA SO\0" "CIRCLED KATAKANA SU\0" "CIRCLED KATAKANA TA\0" "CIRCLED KATAKANA TE\0" "CIRCLED KATAKANA TI\0" "CIRCLED KATAKANA TO\0" "CIRCLED KATAKANA TU\0" "CIRCLED KATAKANA U\0" "CIRCLED KATAKANA WA\0" "CIRCLED KATAKANA WE\0" "CIRCLED KATAKANA WI\0" "CIRCLED KATAKANA WO\0" "CIRCLED KATAKANA YA\0" "CIRCLED KATAKANA YO\0" "CIRCLED KATAKANA YU\0" "CIRCLED KOREAN CHARACTER CHAMKO\0" "CIRCLED KOREAN CHARACTER JUEUI\0" "CIRCLED LATIN CAPITAL LETTER A\0" "CIRCLED LATIN CAPITAL LETTER B\0" "CIRCLED LATIN CAPITAL LETTER C\0" "CIRCLED LATIN CAPITAL LETTER D\0" "CIRCLED LATIN CAPITAL LETTER E\0" "CIRCLED LATIN CAPITAL LETTER F\0" "CIRCLED LATIN CAPITAL LETTER G\0" "CIRCLED LATIN CAPITAL LETTER H\0" "CIRCLED LATIN CAPITAL LETTER I\0" "CIRCLED LATIN CAPITAL LETTER J\0" "CIRCLED LATIN CAPITAL LETTER K\0" "CIRCLED LATIN CAPITAL LETTER L\0" "CIRCLED LATIN CAPITAL LETTER M\0" "CIRCLED LATIN CAPITAL LETTER N\0" "CIRCLED LATIN CAPITAL LETTER O\0" "CIRCLED LATIN CAPITAL LETTER P\0" "CIRCLED LATIN CAPITAL LETTER Q\0" "CIRCLED LATIN CAPITAL LETTER R\0" "CIRCLED LATIN CAPITAL LETTER S\0" "CIRCLED LATIN CAPITAL LETTER T\0" "CIRCLED LATIN CAPITAL LETTER U\0" "CIRCLED LATIN CAPITAL LETTER V\0" "CIRCLED LATIN CAPITAL LETTER W\0" "CIRCLED LATIN CAPITAL LETTER X\0" "CIRCLED LATIN CAPITAL LETTER Y\0" "CIRCLED LATIN CAPITAL LETTER Z\0" "CIRCLED LATIN SMALL LETTER A\0" "CIRCLED LATIN SMALL LETTER B\0" "CIRCLED LATIN SMALL LETTER C\0" "CIRCLED LATIN SMALL LETTER D\0" "CIRCLED LATIN SMALL LETTER E\0" "CIRCLED LATIN SMALL LETTER F\0" "CIRCLED LATIN SMALL LETTER G\0" "CIRCLED LATIN SMALL LETTER H\0" "CIRCLED LATIN SMALL LETTER I\0" "CIRCLED LATIN SMALL LETTER J\0" "CIRCLED LATIN SMALL LETTER K\0" "CIRCLED LATIN SMALL LETTER L\0" "CIRCLED LATIN SMALL LETTER M\0" "CIRCLED LATIN SMALL LETTER N\0" "CIRCLED LATIN SMALL LETTER O\0" "CIRCLED LATIN SMALL LETTER P\0" "CIRCLED LATIN SMALL LETTER Q\0" "CIRCLED LATIN SMALL LETTER R\0" "CIRCLED LATIN SMALL LETTER S\0" "CIRCLED LATIN SMALL LETTER T\0" "CIRCLED LATIN SMALL LETTER U\0" "CIRCLED LATIN SMALL LETTER V\0" "CIRCLED LATIN SMALL LETTER W\0" "CIRCLED LATIN SMALL LETTER X\0" "CIRCLED LATIN SMALL LETTER Y\0" "CIRCLED LATIN SMALL LETTER Z\0" "CIRCLED LESS-THAN\0" "CIRCLED MINUS\0" "CIRCLED MULTIPLICATION SIGN WITH CIRCUMFLEX ACCENT\0" "CIRCLED NUMBER EIGHTEEN\0" "CIRCLED NUMBER EIGHTY ON BLACK SQUARE\0" "CIRCLED NUMBER ELEVEN\0" "CIRCLED NUMBER FIFTEEN\0" "CIRCLED NUMBER FIFTY\0" "CIRCLED NUMBER FIFTY ON BLACK SQUARE\0" "CIRCLED NUMBER FORTY\0" "CIRCLED NUMBER FORTY EIGHT\0" "CIRCLED NUMBER FORTY FIVE\0" "CIRCLED NUMBER FORTY FOUR\0" "CIRCLED NUMBER FORTY NINE\0" "CIRCLED NUMBER FORTY ON BLACK SQUARE\0" "CIRCLED NUMBER FORTY ONE\0" "CIRCLED NUMBER FORTY SEVEN\0" "CIRCLED NUMBER FORTY SIX\0" "CIRCLED NUMBER FORTY THREE\0" "CIRCLED NUMBER FORTY TWO\0" "CIRCLED NUMBER FOURTEEN\0" "CIRCLED NUMBER NINETEEN\0" "CIRCLED NUMBER SEVENTEEN\0" "CIRCLED NUMBER SEVENTY ON BLACK SQUARE\0" "CIRCLED NUMBER SIXTEEN\0" "CIRCLED NUMBER SIXTY ON BLACK SQUARE\0" "CIRCLED NUMBER TEN\0" "CIRCLED NUMBER TEN ON BLACK SQUARE\0" "CIRCLED NUMBER THIRTEEN\0" "CIRCLED NUMBER THIRTY\0" "CIRCLED NUMBER THIRTY EIGHT\0" "CIRCLED NUMBER THIRTY FIVE\0" "CIRCLED NUMBER THIRTY FOUR\0" "CIRCLED NUMBER THIRTY NINE\0" "CIRCLED NUMBER THIRTY ON BLACK SQUARE\0" "CIRCLED NUMBER THIRTY ONE\0" "CIRCLED NUMBER THIRTY SEVEN\0" "CIRCLED NUMBER THIRTY SIX\0" "CIRCLED NUMBER THIRTY THREE\0" "CIRCLED NUMBER THIRTY TWO\0" "CIRCLED NUMBER TWELVE\0" "CIRCLED NUMBER TWENTY\0" "CIRCLED NUMBER TWENTY EIGHT\0" "CIRCLED NUMBER TWENTY FIVE\0" "CIRCLED NUMBER TWENTY FOUR\0" "CIRCLED NUMBER TWENTY NINE\0" "CIRCLED NUMBER TWENTY ON BLACK SQUARE\0" "CIRCLED NUMBER TWENTY ONE\0" "CIRCLED NUMBER TWENTY SEVEN\0" "CIRCLED NUMBER TWENTY SIX\0" "CIRCLED NUMBER TWENTY THREE\0" "CIRCLED NUMBER TWENTY TWO\0" "CIRCLED OPEN CENTRE EIGHT POINTED STAR\0" "CIRCLED PARALLEL\0" "CIRCLED PERPENDICULAR\0" "CIRCLED PLUS\0" "CIRCLED POSTAL MARK\0" "CIRCLED REVERSE SOLIDUS\0" "CIRCLED RING OPERATOR\0" "CIRCLED TIMES\0" "CIRCLED TRIANGLE DOWN\0" "CIRCLED VERTICAL BAR\0" "CIRCLED WHITE BULLET\0" "CIRCLED WHITE STAR\0" "CIRCLED WZ\0" "CIRCULATION FUNCTION\0" "CIRCUMFLEX ACCENT\0" "CIRCUS TENT\0" "CITYSCAPE AT DUSK\0" "CJK COMPATIBILITY IDEOGRAPH-2F800\0" "CJK COMPATIBILITY IDEOGRAPH-2F801\0" "CJK COMPATIBILITY IDEOGRAPH-2F802\0" "CJK COMPATIBILITY IDEOGRAPH-2F803\0" "CJK COMPATIBILITY IDEOGRAPH-2F804\0" "CJK COMPATIBILITY IDEOGRAPH-2F805\0" "CJK COMPATIBILITY IDEOGRAPH-2F806\0" "CJK COMPATIBILITY IDEOGRAPH-2F807\0" "CJK COMPATIBILITY IDEOGRAPH-2F808\0" "CJK COMPATIBILITY IDEOGRAPH-2F809\0" "CJK COMPATIBILITY IDEOGRAPH-2F80A\0" "CJK COMPATIBILITY IDEOGRAPH-2F80B\0" "CJK COMPATIBILITY IDEOGRAPH-2F80C\0" "CJK COMPATIBILITY IDEOGRAPH-2F80D\0" "CJK COMPATIBILITY IDEOGRAPH-2F80E\0" "CJK COMPATIBILITY IDEOGRAPH-2F80F\0" "CJK COMPATIBILITY IDEOGRAPH-2F810\0" "CJK COMPATIBILITY IDEOGRAPH-2F811\0" "CJK COMPATIBILITY IDEOGRAPH-2F812\0" "CJK COMPATIBILITY IDEOGRAPH-2F813\0" "CJK COMPATIBILITY IDEOGRAPH-2F814\0" "CJK COMPATIBILITY IDEOGRAPH-2F815\0" "CJK COMPATIBILITY IDEOGRAPH-2F816\0" "CJK COMPATIBILITY IDEOGRAPH-2F817\0" "CJK COMPATIBILITY IDEOGRAPH-2F818\0" "CJK COMPATIBILITY IDEOGRAPH-2F819\0" "CJK COMPATIBILITY IDEOGRAPH-2F81A\0" "CJK COMPATIBILITY IDEOGRAPH-2F81B\0" "CJK COMPATIBILITY IDEOGRAPH-2F81C\0" "CJK COMPATIBILITY IDEOGRAPH-2F81D\0" "CJK COMPATIBILITY IDEOGRAPH-2F81E\0" "CJK COMPATIBILITY IDEOGRAPH-2F81F\0" "CJK COMPATIBILITY IDEOGRAPH-2F820\0" "CJK COMPATIBILITY IDEOGRAPH-2F821\0" "CJK COMPATIBILITY IDEOGRAPH-2F822\0" "CJK COMPATIBILITY IDEOGRAPH-2F823\0" "CJK COMPATIBILITY IDEOGRAPH-2F824\0" "CJK COMPATIBILITY IDEOGRAPH-2F825\0" "CJK COMPATIBILITY IDEOGRAPH-2F826\0" "CJK COMPATIBILITY IDEOGRAPH-2F827\0" "CJK COMPATIBILITY IDEOGRAPH-2F828\0" "CJK COMPATIBILITY IDEOGRAPH-2F829\0" "CJK COMPATIBILITY IDEOGRAPH-2F82A\0" "CJK COMPATIBILITY IDEOGRAPH-2F82B\0" "CJK COMPATIBILITY IDEOGRAPH-2F82C\0" "CJK COMPATIBILITY IDEOGRAPH-2F82D\0" "CJK COMPATIBILITY IDEOGRAPH-2F82E\0" "CJK COMPATIBILITY IDEOGRAPH-2F82F\0" "CJK COMPATIBILITY IDEOGRAPH-2F830\0" "CJK COMPATIBILITY IDEOGRAPH-2F831\0" "CJK COMPATIBILITY IDEOGRAPH-2F832\0" "CJK COMPATIBILITY IDEOGRAPH-2F833\0" "CJK COMPATIBILITY IDEOGRAPH-2F834\0" "CJK COMPATIBILITY IDEOGRAPH-2F835\0" "CJK COMPATIBILITY IDEOGRAPH-2F836\0" "CJK COMPATIBILITY IDEOGRAPH-2F837\0" "CJK COMPATIBILITY IDEOGRAPH-2F838\0" "CJK COMPATIBILITY IDEOGRAPH-2F839\0" "CJK COMPATIBILITY IDEOGRAPH-2F83A\0" "CJK COMPATIBILITY IDEOGRAPH-2F83B\0" "CJK COMPATIBILITY IDEOGRAPH-2F83C\0" "CJK COMPATIBILITY IDEOGRAPH-2F83D\0" "CJK COMPATIBILITY IDEOGRAPH-2F83E\0" "CJK COMPATIBILITY IDEOGRAPH-2F83F\0" "CJK COMPATIBILITY IDEOGRAPH-2F840\0" "CJK COMPATIBILITY IDEOGRAPH-2F841\0" "CJK COMPATIBILITY IDEOGRAPH-2F842\0" "CJK COMPATIBILITY IDEOGRAPH-2F843\0" "CJK COMPATIBILITY IDEOGRAPH-2F844\0" "CJK COMPATIBILITY IDEOGRAPH-2F845\0" "CJK COMPATIBILITY IDEOGRAPH-2F846\0" "CJK COMPATIBILITY IDEOGRAPH-2F847\0" "CJK COMPATIBILITY IDEOGRAPH-2F848\0" "CJK COMPATIBILITY IDEOGRAPH-2F849\0" "CJK COMPATIBILITY IDEOGRAPH-2F84A\0" "CJK COMPATIBILITY IDEOGRAPH-2F84B\0" "CJK COMPATIBILITY IDEOGRAPH-2F84C\0" "CJK COMPATIBILITY IDEOGRAPH-2F84D\0" "CJK COMPATIBILITY IDEOGRAPH-2F84E\0" "CJK COMPATIBILITY IDEOGRAPH-2F84F\0" "CJK COMPATIBILITY IDEOGRAPH-2F850\0" "CJK COMPATIBILITY IDEOGRAPH-2F851\0" "CJK COMPATIBILITY IDEOGRAPH-2F852\0" "CJK COMPATIBILITY IDEOGRAPH-2F853\0" "CJK COMPATIBILITY IDEOGRAPH-2F854\0" "CJK COMPATIBILITY IDEOGRAPH-2F855\0" "CJK COMPATIBILITY IDEOGRAPH-2F856\0" "CJK COMPATIBILITY IDEOGRAPH-2F857\0" "CJK COMPATIBILITY IDEOGRAPH-2F858\0" "CJK COMPATIBILITY IDEOGRAPH-2F859\0" "CJK COMPATIBILITY IDEOGRAPH-2F85A\0" "CJK COMPATIBILITY IDEOGRAPH-2F85B\0" "CJK COMPATIBILITY IDEOGRAPH-2F85C\0" "CJK COMPATIBILITY IDEOGRAPH-2F85D\0" "CJK COMPATIBILITY IDEOGRAPH-2F85E\0" "CJK COMPATIBILITY IDEOGRAPH-2F85F\0" "CJK COMPATIBILITY IDEOGRAPH-2F860\0" "CJK COMPATIBILITY IDEOGRAPH-2F861\0" "CJK COMPATIBILITY IDEOGRAPH-2F862\0" "CJK COMPATIBILITY IDEOGRAPH-2F863\0" "CJK COMPATIBILITY IDEOGRAPH-2F864\0" "CJK COMPATIBILITY IDEOGRAPH-2F865\0" "CJK COMPATIBILITY IDEOGRAPH-2F866\0" "CJK COMPATIBILITY IDEOGRAPH-2F867\0" "CJK COMPATIBILITY IDEOGRAPH-2F868\0" "CJK COMPATIBILITY IDEOGRAPH-2F869\0" "CJK COMPATIBILITY IDEOGRAPH-2F86A\0" "CJK COMPATIBILITY IDEOGRAPH-2F86B\0" "CJK COMPATIBILITY IDEOGRAPH-2F86C\0" "CJK COMPATIBILITY IDEOGRAPH-2F86D\0" "CJK COMPATIBILITY IDEOGRAPH-2F86E\0" "CJK COMPATIBILITY IDEOGRAPH-2F86F\0" "CJK COMPATIBILITY IDEOGRAPH-2F870\0" "CJK COMPATIBILITY IDEOGRAPH-2F871\0" "CJK COMPATIBILITY IDEOGRAPH-2F872\0" "CJK COMPATIBILITY IDEOGRAPH-2F873\0" "CJK COMPATIBILITY IDEOGRAPH-2F874\0" "CJK COMPATIBILITY IDEOGRAPH-2F875\0" "CJK COMPATIBILITY IDEOGRAPH-2F876\0" "CJK COMPATIBILITY IDEOGRAPH-2F877\0" "CJK COMPATIBILITY IDEOGRAPH-2F878\0" "CJK COMPATIBILITY IDEOGRAPH-2F879\0" "CJK COMPATIBILITY IDEOGRAPH-2F87A\0" "CJK COMPATIBILITY IDEOGRAPH-2F87B\0" "CJK COMPATIBILITY IDEOGRAPH-2F87C\0" "CJK COMPATIBILITY IDEOGRAPH-2F87D\0" "CJK COMPATIBILITY IDEOGRAPH-2F87E\0" "CJK COMPATIBILITY IDEOGRAPH-2F87F\0" "CJK COMPATIBILITY IDEOGRAPH-2F880\0" "CJK COMPATIBILITY IDEOGRAPH-2F881\0" "CJK COMPATIBILITY IDEOGRAPH-2F882\0" "CJK COMPATIBILITY IDEOGRAPH-2F883\0" "CJK COMPATIBILITY IDEOGRAPH-2F884\0" "CJK COMPATIBILITY IDEOGRAPH-2F885\0" "CJK COMPATIBILITY IDEOGRAPH-2F886\0" "CJK COMPATIBILITY IDEOGRAPH-2F887\0" "CJK COMPATIBILITY IDEOGRAPH-2F888\0" "CJK COMPATIBILITY IDEOGRAPH-2F889\0" "CJK COMPATIBILITY IDEOGRAPH-2F88A\0" "CJK COMPATIBILITY IDEOGRAPH-2F88B\0" "CJK COMPATIBILITY IDEOGRAPH-2F88C\0" "CJK COMPATIBILITY IDEOGRAPH-2F88D\0" "CJK COMPATIBILITY IDEOGRAPH-2F88E\0" "CJK COMPATIBILITY IDEOGRAPH-2F88F\0" "CJK COMPATIBILITY IDEOGRAPH-2F890\0" "CJK COMPATIBILITY IDEOGRAPH-2F891\0" "CJK COMPATIBILITY IDEOGRAPH-2F892\0" "CJK COMPATIBILITY IDEOGRAPH-2F893\0" "CJK COMPATIBILITY IDEOGRAPH-2F894\0" "CJK COMPATIBILITY IDEOGRAPH-2F895\0" "CJK COMPATIBILITY IDEOGRAPH-2F896\0" "CJK COMPATIBILITY IDEOGRAPH-2F897\0" "CJK COMPATIBILITY IDEOGRAPH-2F898\0" "CJK COMPATIBILITY IDEOGRAPH-2F899\0" "CJK COMPATIBILITY IDEOGRAPH-2F89A\0" "CJK COMPATIBILITY IDEOGRAPH-2F89B\0" "CJK COMPATIBILITY IDEOGRAPH-2F89C\0" "CJK COMPATIBILITY IDEOGRAPH-2F89D\0" "CJK COMPATIBILITY IDEOGRAPH-2F89E\0" "CJK COMPATIBILITY IDEOGRAPH-2F89F\0" "CJK COMPATIBILITY IDEOGRAPH-2F8A0\0" "CJK COMPATIBILITY IDEOGRAPH-2F8A1\0" "CJK COMPATIBILITY IDEOGRAPH-2F8A2\0" "CJK COMPATIBILITY IDEOGRAPH-2F8A3\0" "CJK COMPATIBILITY IDEOGRAPH-2F8A4\0" "CJK COMPATIBILITY IDEOGRAPH-2F8A5\0" "CJK COMPATIBILITY IDEOGRAPH-2F8A6\0" "CJK COMPATIBILITY IDEOGRAPH-2F8A7\0" "CJK COMPATIBILITY IDEOGRAPH-2F8A8\0" "CJK COMPATIBILITY IDEOGRAPH-2F8A9\0" "CJK COMPATIBILITY IDEOGRAPH-2F8AA\0" "CJK COMPATIBILITY IDEOGRAPH-2F8AB\0" "CJK COMPATIBILITY IDEOGRAPH-2F8AC\0" "CJK COMPATIBILITY IDEOGRAPH-2F8AD\0" "CJK COMPATIBILITY IDEOGRAPH-2F8AE\0" "CJK COMPATIBILITY IDEOGRAPH-2F8AF\0" "CJK COMPATIBILITY IDEOGRAPH-2F8B0\0" "CJK COMPATIBILITY IDEOGRAPH-2F8B1\0" "CJK COMPATIBILITY IDEOGRAPH-2F8B2\0" "CJK COMPATIBILITY IDEOGRAPH-2F8B3\0" "CJK COMPATIBILITY IDEOGRAPH-2F8B4\0" "CJK COMPATIBILITY IDEOGRAPH-2F8B5\0" "CJK COMPATIBILITY IDEOGRAPH-2F8B6\0" "CJK COMPATIBILITY IDEOGRAPH-2F8B7\0" "CJK COMPATIBILITY IDEOGRAPH-2F8B8\0" "CJK COMPATIBILITY IDEOGRAPH-2F8B9\0" "CJK COMPATIBILITY IDEOGRAPH-2F8BA\0" "CJK COMPATIBILITY IDEOGRAPH-2F8BB\0" "CJK COMPATIBILITY IDEOGRAPH-2F8BC\0" "CJK COMPATIBILITY IDEOGRAPH-2F8BD\0" "CJK COMPATIBILITY IDEOGRAPH-2F8BE\0" "CJK COMPATIBILITY IDEOGRAPH-2F8BF\0" "CJK COMPATIBILITY IDEOGRAPH-2F8C0\0" "CJK COMPATIBILITY IDEOGRAPH-2F8C1\0" "CJK COMPATIBILITY IDEOGRAPH-2F8C2\0" "CJK COMPATIBILITY IDEOGRAPH-2F8C3\0" "CJK COMPATIBILITY IDEOGRAPH-2F8C4\0" "CJK COMPATIBILITY IDEOGRAPH-2F8C5\0" "CJK COMPATIBILITY IDEOGRAPH-2F8C6\0" "CJK COMPATIBILITY IDEOGRAPH-2F8C7\0" "CJK COMPATIBILITY IDEOGRAPH-2F8C8\0" "CJK COMPATIBILITY IDEOGRAPH-2F8C9\0" "CJK COMPATIBILITY IDEOGRAPH-2F8CA\0" "CJK COMPATIBILITY IDEOGRAPH-2F8CB\0" "CJK COMPATIBILITY IDEOGRAPH-2F8CC\0" "CJK COMPATIBILITY IDEOGRAPH-2F8CD\0" "CJK COMPATIBILITY IDEOGRAPH-2F8CE\0" "CJK COMPATIBILITY IDEOGRAPH-2F8CF\0" "CJK COMPATIBILITY IDEOGRAPH-2F8D0\0" "CJK COMPATIBILITY IDEOGRAPH-2F8D1\0" "CJK COMPATIBILITY IDEOGRAPH-2F8D2\0" "CJK COMPATIBILITY IDEOGRAPH-2F8D3\0" "CJK COMPATIBILITY IDEOGRAPH-2F8D4\0" "CJK COMPATIBILITY IDEOGRAPH-2F8D5\0" "CJK COMPATIBILITY IDEOGRAPH-2F8D6\0" "CJK COMPATIBILITY IDEOGRAPH-2F8D7\0" "CJK COMPATIBILITY IDEOGRAPH-2F8D8\0" "CJK COMPATIBILITY IDEOGRAPH-2F8D9\0" "CJK COMPATIBILITY IDEOGRAPH-2F8DA\0" "CJK COMPATIBILITY IDEOGRAPH-2F8DB\0" "CJK COMPATIBILITY IDEOGRAPH-2F8DC\0" "CJK COMPATIBILITY IDEOGRAPH-2F8DD\0" "CJK COMPATIBILITY IDEOGRAPH-2F8DE\0" "CJK COMPATIBILITY IDEOGRAPH-2F8DF\0" "CJK COMPATIBILITY IDEOGRAPH-2F8E0\0" "CJK COMPATIBILITY IDEOGRAPH-2F8E1\0" "CJK COMPATIBILITY IDEOGRAPH-2F8E2\0" "CJK COMPATIBILITY IDEOGRAPH-2F8E3\0" "CJK COMPATIBILITY IDEOGRAPH-2F8E4\0" "CJK COMPATIBILITY IDEOGRAPH-2F8E5\0" "CJK COMPATIBILITY IDEOGRAPH-2F8E6\0" "CJK COMPATIBILITY IDEOGRAPH-2F8E7\0" "CJK COMPATIBILITY IDEOGRAPH-2F8E8\0" "CJK COMPATIBILITY IDEOGRAPH-2F8E9\0" "CJK COMPATIBILITY IDEOGRAPH-2F8EA\0" "CJK COMPATIBILITY IDEOGRAPH-2F8EB\0" "CJK COMPATIBILITY IDEOGRAPH-2F8EC\0" "CJK COMPATIBILITY IDEOGRAPH-2F8ED\0" "CJK COMPATIBILITY IDEOGRAPH-2F8EE\0" "CJK COMPATIBILITY IDEOGRAPH-2F8EF\0" "CJK COMPATIBILITY IDEOGRAPH-2F8F0\0" "CJK COMPATIBILITY IDEOGRAPH-2F8F1\0" "CJK COMPATIBILITY IDEOGRAPH-2F8F2\0" "CJK COMPATIBILITY IDEOGRAPH-2F8F3\0" "CJK COMPATIBILITY IDEOGRAPH-2F8F4\0" "CJK COMPATIBILITY IDEOGRAPH-2F8F5\0" "CJK COMPATIBILITY IDEOGRAPH-2F8F6\0" "CJK COMPATIBILITY IDEOGRAPH-2F8F7\0" "CJK COMPATIBILITY IDEOGRAPH-2F8F8\0" "CJK COMPATIBILITY IDEOGRAPH-2F8F9\0" "CJK COMPATIBILITY IDEOGRAPH-2F8FA\0" "CJK COMPATIBILITY IDEOGRAPH-2F8FB\0" "CJK COMPATIBILITY IDEOGRAPH-2F8FC\0" "CJK COMPATIBILITY IDEOGRAPH-2F8FD\0" "CJK COMPATIBILITY IDEOGRAPH-2F8FE\0" "CJK COMPATIBILITY IDEOGRAPH-2F8FF\0" "CJK COMPATIBILITY IDEOGRAPH-2F900\0" "CJK COMPATIBILITY IDEOGRAPH-2F901\0" "CJK COMPATIBILITY IDEOGRAPH-2F902\0" "CJK COMPATIBILITY IDEOGRAPH-2F903\0" "CJK COMPATIBILITY IDEOGRAPH-2F904\0" "CJK COMPATIBILITY IDEOGRAPH-2F905\0" "CJK COMPATIBILITY IDEOGRAPH-2F906\0" "CJK COMPATIBILITY IDEOGRAPH-2F907\0" "CJK COMPATIBILITY IDEOGRAPH-2F908\0" "CJK COMPATIBILITY IDEOGRAPH-2F909\0" "CJK COMPATIBILITY IDEOGRAPH-2F90A\0" "CJK COMPATIBILITY IDEOGRAPH-2F90B\0" "CJK COMPATIBILITY IDEOGRAPH-2F90C\0" "CJK COMPATIBILITY IDEOGRAPH-2F90D\0" "CJK COMPATIBILITY IDEOGRAPH-2F90E\0" "CJK COMPATIBILITY IDEOGRAPH-2F90F\0" "CJK COMPATIBILITY IDEOGRAPH-2F910\0" "CJK COMPATIBILITY IDEOGRAPH-2F911\0" "CJK COMPATIBILITY IDEOGRAPH-2F912\0" "CJK COMPATIBILITY IDEOGRAPH-2F913\0" "CJK COMPATIBILITY IDEOGRAPH-2F914\0" "CJK COMPATIBILITY IDEOGRAPH-2F915\0" "CJK COMPATIBILITY IDEOGRAPH-2F916\0" "CJK COMPATIBILITY IDEOGRAPH-2F917\0" "CJK COMPATIBILITY IDEOGRAPH-2F918\0" "CJK COMPATIBILITY IDEOGRAPH-2F919\0" "CJK COMPATIBILITY IDEOGRAPH-2F91A\0" "CJK COMPATIBILITY IDEOGRAPH-2F91B\0" "CJK COMPATIBILITY IDEOGRAPH-2F91C\0" "CJK COMPATIBILITY IDEOGRAPH-2F91D\0" "CJK COMPATIBILITY IDEOGRAPH-2F91E\0" "CJK COMPATIBILITY IDEOGRAPH-2F91F\0" "CJK COMPATIBILITY IDEOGRAPH-2F920\0" "CJK COMPATIBILITY IDEOGRAPH-2F921\0" "CJK COMPATIBILITY IDEOGRAPH-2F922\0" "CJK COMPATIBILITY IDEOGRAPH-2F923\0" "CJK COMPATIBILITY IDEOGRAPH-2F924\0" "CJK COMPATIBILITY IDEOGRAPH-2F925\0" "CJK COMPATIBILITY IDEOGRAPH-2F926\0" "CJK COMPATIBILITY IDEOGRAPH-2F927\0" "CJK COMPATIBILITY IDEOGRAPH-2F928\0" "CJK COMPATIBILITY IDEOGRAPH-2F929\0" "CJK COMPATIBILITY IDEOGRAPH-2F92A\0" "CJK COMPATIBILITY IDEOGRAPH-2F92B\0" "CJK COMPATIBILITY IDEOGRAPH-2F92C\0" "CJK COMPATIBILITY IDEOGRAPH-2F92D\0" "CJK COMPATIBILITY IDEOGRAPH-2F92E\0" "CJK COMPATIBILITY IDEOGRAPH-2F92F\0" "CJK COMPATIBILITY IDEOGRAPH-2F930\0" "CJK COMPATIBILITY IDEOGRAPH-2F931\0" "CJK COMPATIBILITY IDEOGRAPH-2F932\0" "CJK COMPATIBILITY IDEOGRAPH-2F933\0" "CJK COMPATIBILITY IDEOGRAPH-2F934\0" "CJK COMPATIBILITY IDEOGRAPH-2F935\0" "CJK COMPATIBILITY IDEOGRAPH-2F936\0" "CJK COMPATIBILITY IDEOGRAPH-2F937\0" "CJK COMPATIBILITY IDEOGRAPH-2F938\0" "CJK COMPATIBILITY IDEOGRAPH-2F939\0" "CJK COMPATIBILITY IDEOGRAPH-2F93A\0" "CJK COMPATIBILITY IDEOGRAPH-2F93B\0" "CJK COMPATIBILITY IDEOGRAPH-2F93C\0" "CJK COMPATIBILITY IDEOGRAPH-2F93D\0" "CJK COMPATIBILITY IDEOGRAPH-2F93E\0" "CJK COMPATIBILITY IDEOGRAPH-2F93F\0" "CJK COMPATIBILITY IDEOGRAPH-2F940\0" "CJK COMPATIBILITY IDEOGRAPH-2F941\0" "CJK COMPATIBILITY IDEOGRAPH-2F942\0" "CJK COMPATIBILITY IDEOGRAPH-2F943\0" "CJK COMPATIBILITY IDEOGRAPH-2F944\0" "CJK COMPATIBILITY IDEOGRAPH-2F945\0" "CJK COMPATIBILITY IDEOGRAPH-2F946\0" "CJK COMPATIBILITY IDEOGRAPH-2F947\0" "CJK COMPATIBILITY IDEOGRAPH-2F948\0" "CJK COMPATIBILITY IDEOGRAPH-2F949\0" "CJK COMPATIBILITY IDEOGRAPH-2F94A\0" "CJK COMPATIBILITY IDEOGRAPH-2F94B\0" "CJK COMPATIBILITY IDEOGRAPH-2F94C\0" "CJK COMPATIBILITY IDEOGRAPH-2F94D\0" "CJK COMPATIBILITY IDEOGRAPH-2F94E\0" "CJK COMPATIBILITY IDEOGRAPH-2F94F\0" "CJK COMPATIBILITY IDEOGRAPH-2F950\0" "CJK COMPATIBILITY IDEOGRAPH-2F951\0" "CJK COMPATIBILITY IDEOGRAPH-2F952\0" "CJK COMPATIBILITY IDEOGRAPH-2F953\0" "CJK COMPATIBILITY IDEOGRAPH-2F954\0" "CJK COMPATIBILITY IDEOGRAPH-2F955\0" "CJK COMPATIBILITY IDEOGRAPH-2F956\0" "CJK COMPATIBILITY IDEOGRAPH-2F957\0" "CJK COMPATIBILITY IDEOGRAPH-2F958\0" "CJK COMPATIBILITY IDEOGRAPH-2F959\0" "CJK COMPATIBILITY IDEOGRAPH-2F95A\0" "CJK COMPATIBILITY IDEOGRAPH-2F95B\0" "CJK COMPATIBILITY IDEOGRAPH-2F95C\0" "CJK COMPATIBILITY IDEOGRAPH-2F95D\0" "CJK COMPATIBILITY IDEOGRAPH-2F95E\0" "CJK COMPATIBILITY IDEOGRAPH-2F95F\0" "CJK COMPATIBILITY IDEOGRAPH-2F960\0" "CJK COMPATIBILITY IDEOGRAPH-2F961\0" "CJK COMPATIBILITY IDEOGRAPH-2F962\0" "CJK COMPATIBILITY IDEOGRAPH-2F963\0" "CJK COMPATIBILITY IDEOGRAPH-2F964\0" "CJK COMPATIBILITY IDEOGRAPH-2F965\0" "CJK COMPATIBILITY IDEOGRAPH-2F966\0" "CJK COMPATIBILITY IDEOGRAPH-2F967\0" "CJK COMPATIBILITY IDEOGRAPH-2F968\0" "CJK COMPATIBILITY IDEOGRAPH-2F969\0" "CJK COMPATIBILITY IDEOGRAPH-2F96A\0" "CJK COMPATIBILITY IDEOGRAPH-2F96B\0" "CJK COMPATIBILITY IDEOGRAPH-2F96C\0" "CJK COMPATIBILITY IDEOGRAPH-2F96D\0" "CJK COMPATIBILITY IDEOGRAPH-2F96E\0" "CJK COMPATIBILITY IDEOGRAPH-2F96F\0" "CJK COMPATIBILITY IDEOGRAPH-2F970\0" "CJK COMPATIBILITY IDEOGRAPH-2F971\0" "CJK COMPATIBILITY IDEOGRAPH-2F972\0" "CJK COMPATIBILITY IDEOGRAPH-2F973\0" "CJK COMPATIBILITY IDEOGRAPH-2F974\0" "CJK COMPATIBILITY IDEOGRAPH-2F975\0" "CJK COMPATIBILITY IDEOGRAPH-2F976\0" "CJK COMPATIBILITY IDEOGRAPH-2F977\0" "CJK COMPATIBILITY IDEOGRAPH-2F978\0" "CJK COMPATIBILITY IDEOGRAPH-2F979\0" "CJK COMPATIBILITY IDEOGRAPH-2F97A\0" "CJK COMPATIBILITY IDEOGRAPH-2F97B\0" "CJK COMPATIBILITY IDEOGRAPH-2F97C\0" "CJK COMPATIBILITY IDEOGRAPH-2F97D\0" "CJK COMPATIBILITY IDEOGRAPH-2F97E\0" "CJK COMPATIBILITY IDEOGRAPH-2F97F\0" "CJK COMPATIBILITY IDEOGRAPH-2F980\0" "CJK COMPATIBILITY IDEOGRAPH-2F981\0" "CJK COMPATIBILITY IDEOGRAPH-2F982\0" "CJK COMPATIBILITY IDEOGRAPH-2F983\0" "CJK COMPATIBILITY IDEOGRAPH-2F984\0" "CJK COMPATIBILITY IDEOGRAPH-2F985\0" "CJK COMPATIBILITY IDEOGRAPH-2F986\0" "CJK COMPATIBILITY IDEOGRAPH-2F987\0" "CJK COMPATIBILITY IDEOGRAPH-2F988\0" "CJK COMPATIBILITY IDEOGRAPH-2F989\0" "CJK COMPATIBILITY IDEOGRAPH-2F98A\0" "CJK COMPATIBILITY IDEOGRAPH-2F98B\0" "CJK COMPATIBILITY IDEOGRAPH-2F98C\0" "CJK COMPATIBILITY IDEOGRAPH-2F98D\0" "CJK COMPATIBILITY IDEOGRAPH-2F98E\0" "CJK COMPATIBILITY IDEOGRAPH-2F98F\0" "CJK COMPATIBILITY IDEOGRAPH-2F990\0" "CJK COMPATIBILITY IDEOGRAPH-2F991\0" "CJK COMPATIBILITY IDEOGRAPH-2F992\0" "CJK COMPATIBILITY IDEOGRAPH-2F993\0" "CJK COMPATIBILITY IDEOGRAPH-2F994\0" "CJK COMPATIBILITY IDEOGRAPH-2F995\0" "CJK COMPATIBILITY IDEOGRAPH-2F996\0" "CJK COMPATIBILITY IDEOGRAPH-2F997\0" "CJK COMPATIBILITY IDEOGRAPH-2F998\0" "CJK COMPATIBILITY IDEOGRAPH-2F999\0" "CJK COMPATIBILITY IDEOGRAPH-2F99A\0" "CJK COMPATIBILITY IDEOGRAPH-2F99B\0" "CJK COMPATIBILITY IDEOGRAPH-2F99C\0" "CJK COMPATIBILITY IDEOGRAPH-2F99D\0" "CJK COMPATIBILITY IDEOGRAPH-2F99E\0" "CJK COMPATIBILITY IDEOGRAPH-2F99F\0" "CJK COMPATIBILITY IDEOGRAPH-2F9A0\0" "CJK COMPATIBILITY IDEOGRAPH-2F9A1\0" "CJK COMPATIBILITY IDEOGRAPH-2F9A2\0" "CJK COMPATIBILITY IDEOGRAPH-2F9A3\0" "CJK COMPATIBILITY IDEOGRAPH-2F9A4\0" "CJK COMPATIBILITY IDEOGRAPH-2F9A5\0" "CJK COMPATIBILITY IDEOGRAPH-2F9A6\0" "CJK COMPATIBILITY IDEOGRAPH-2F9A7\0" "CJK COMPATIBILITY IDEOGRAPH-2F9A8\0" "CJK COMPATIBILITY IDEOGRAPH-2F9A9\0" "CJK COMPATIBILITY IDEOGRAPH-2F9AA\0" "CJK COMPATIBILITY IDEOGRAPH-2F9AB\0" "CJK COMPATIBILITY IDEOGRAPH-2F9AC\0" "CJK COMPATIBILITY IDEOGRAPH-2F9AD\0" "CJK COMPATIBILITY IDEOGRAPH-2F9AE\0" "CJK COMPATIBILITY IDEOGRAPH-2F9AF\0" "CJK COMPATIBILITY IDEOGRAPH-2F9B0\0" "CJK COMPATIBILITY IDEOGRAPH-2F9B1\0" "CJK COMPATIBILITY IDEOGRAPH-2F9B2\0" "CJK COMPATIBILITY IDEOGRAPH-2F9B3\0" "CJK COMPATIBILITY IDEOGRAPH-2F9B4\0" "CJK COMPATIBILITY IDEOGRAPH-2F9B5\0" "CJK COMPATIBILITY IDEOGRAPH-2F9B6\0" "CJK COMPATIBILITY IDEOGRAPH-2F9B7\0" "CJK COMPATIBILITY IDEOGRAPH-2F9B8\0" "CJK COMPATIBILITY IDEOGRAPH-2F9B9\0" "CJK COMPATIBILITY IDEOGRAPH-2F9BA\0" "CJK COMPATIBILITY IDEOGRAPH-2F9BB\0" "CJK COMPATIBILITY IDEOGRAPH-2F9BC\0" "CJK COMPATIBILITY IDEOGRAPH-2F9BD\0" "CJK COMPATIBILITY IDEOGRAPH-2F9BE\0" "CJK COMPATIBILITY IDEOGRAPH-2F9BF\0" "CJK COMPATIBILITY IDEOGRAPH-2F9C0\0" "CJK COMPATIBILITY IDEOGRAPH-2F9C1\0" "CJK COMPATIBILITY IDEOGRAPH-2F9C2\0" "CJK COMPATIBILITY IDEOGRAPH-2F9C3\0" "CJK COMPATIBILITY IDEOGRAPH-2F9C4\0" "CJK COMPATIBILITY IDEOGRAPH-2F9C5\0" "CJK COMPATIBILITY IDEOGRAPH-2F9C6\0" "CJK COMPATIBILITY IDEOGRAPH-2F9C7\0" "CJK COMPATIBILITY IDEOGRAPH-2F9C8\0" "CJK COMPATIBILITY IDEOGRAPH-2F9C9\0" "CJK COMPATIBILITY IDEOGRAPH-2F9CA\0" "CJK COMPATIBILITY IDEOGRAPH-2F9CB\0" "CJK COMPATIBILITY IDEOGRAPH-2F9CC\0" "CJK COMPATIBILITY IDEOGRAPH-2F9CD\0" "CJK COMPATIBILITY IDEOGRAPH-2F9CE\0" "CJK COMPATIBILITY IDEOGRAPH-2F9CF\0" "CJK COMPATIBILITY IDEOGRAPH-2F9D0\0" "CJK COMPATIBILITY IDEOGRAPH-2F9D1\0" "CJK COMPATIBILITY IDEOGRAPH-2F9D2\0" "CJK COMPATIBILITY IDEOGRAPH-2F9D3\0" "CJK COMPATIBILITY IDEOGRAPH-2F9D4\0" "CJK COMPATIBILITY IDEOGRAPH-2F9D5\0" "CJK COMPATIBILITY IDEOGRAPH-2F9D6\0" "CJK COMPATIBILITY IDEOGRAPH-2F9D7\0" "CJK COMPATIBILITY IDEOGRAPH-2F9D8\0" "CJK COMPATIBILITY IDEOGRAPH-2F9D9\0" "CJK COMPATIBILITY IDEOGRAPH-2F9DA\0" "CJK COMPATIBILITY IDEOGRAPH-2F9DB\0" "CJK COMPATIBILITY IDEOGRAPH-2F9DC\0" "CJK COMPATIBILITY IDEOGRAPH-2F9DD\0" "CJK COMPATIBILITY IDEOGRAPH-2F9DE\0" "CJK COMPATIBILITY IDEOGRAPH-2F9DF\0" "CJK COMPATIBILITY IDEOGRAPH-2F9E0\0" "CJK COMPATIBILITY IDEOGRAPH-2F9E1\0" "CJK COMPATIBILITY IDEOGRAPH-2F9E2\0" "CJK COMPATIBILITY IDEOGRAPH-2F9E3\0" "CJK COMPATIBILITY IDEOGRAPH-2F9E4\0" "CJK COMPATIBILITY IDEOGRAPH-2F9E5\0" "CJK COMPATIBILITY IDEOGRAPH-2F9E6\0" "CJK COMPATIBILITY IDEOGRAPH-2F9E7\0" "CJK COMPATIBILITY IDEOGRAPH-2F9E8\0" "CJK COMPATIBILITY IDEOGRAPH-2F9E9\0" "CJK COMPATIBILITY IDEOGRAPH-2F9EA\0" "CJK COMPATIBILITY IDEOGRAPH-2F9EB\0" "CJK COMPATIBILITY IDEOGRAPH-2F9EC\0" "CJK COMPATIBILITY IDEOGRAPH-2F9ED\0" "CJK COMPATIBILITY IDEOGRAPH-2F9EE\0" "CJK COMPATIBILITY IDEOGRAPH-2F9EF\0" "CJK COMPATIBILITY IDEOGRAPH-2F9F0\0" "CJK COMPATIBILITY IDEOGRAPH-2F9F1\0" "CJK COMPATIBILITY IDEOGRAPH-2F9F2\0" "CJK COMPATIBILITY IDEOGRAPH-2F9F3\0" "CJK COMPATIBILITY IDEOGRAPH-2F9F4\0" "CJK COMPATIBILITY IDEOGRAPH-2F9F5\0" "CJK COMPATIBILITY IDEOGRAPH-2F9F6\0" "CJK COMPATIBILITY IDEOGRAPH-2F9F7\0" "CJK COMPATIBILITY IDEOGRAPH-2F9F8\0" "CJK COMPATIBILITY IDEOGRAPH-2F9F9\0" "CJK COMPATIBILITY IDEOGRAPH-2F9FA\0" "CJK COMPATIBILITY IDEOGRAPH-2F9FB\0" "CJK COMPATIBILITY IDEOGRAPH-2F9FC\0" "CJK COMPATIBILITY IDEOGRAPH-2F9FD\0" "CJK COMPATIBILITY IDEOGRAPH-2F9FE\0" "CJK COMPATIBILITY IDEOGRAPH-2F9FF\0" "CJK COMPATIBILITY IDEOGRAPH-2FA00\0" "CJK COMPATIBILITY IDEOGRAPH-2FA01\0" "CJK COMPATIBILITY IDEOGRAPH-2FA02\0" "CJK COMPATIBILITY IDEOGRAPH-2FA03\0" "CJK COMPATIBILITY IDEOGRAPH-2FA04\0" "CJK COMPATIBILITY IDEOGRAPH-2FA05\0" "CJK COMPATIBILITY IDEOGRAPH-2FA06\0" "CJK COMPATIBILITY IDEOGRAPH-2FA07\0" "CJK COMPATIBILITY IDEOGRAPH-2FA08\0" "CJK COMPATIBILITY IDEOGRAPH-2FA09\0" "CJK COMPATIBILITY IDEOGRAPH-2FA0A\0" "CJK COMPATIBILITY IDEOGRAPH-2FA0B\0" "CJK COMPATIBILITY IDEOGRAPH-2FA0C\0" "CJK COMPATIBILITY IDEOGRAPH-2FA0D\0" "CJK COMPATIBILITY IDEOGRAPH-2FA0E\0" "CJK COMPATIBILITY IDEOGRAPH-2FA0F\0" "CJK COMPATIBILITY IDEOGRAPH-2FA10\0" "CJK COMPATIBILITY IDEOGRAPH-2FA11\0" "CJK COMPATIBILITY IDEOGRAPH-2FA12\0" "CJK COMPATIBILITY IDEOGRAPH-2FA13\0" "CJK COMPATIBILITY IDEOGRAPH-2FA14\0" "CJK COMPATIBILITY IDEOGRAPH-2FA15\0" "CJK COMPATIBILITY IDEOGRAPH-2FA16\0" "CJK COMPATIBILITY IDEOGRAPH-2FA17\0" "CJK COMPATIBILITY IDEOGRAPH-2FA18\0" "CJK COMPATIBILITY IDEOGRAPH-2FA19\0" "CJK COMPATIBILITY IDEOGRAPH-2FA1A\0" "CJK COMPATIBILITY IDEOGRAPH-2FA1B\0" "CJK COMPATIBILITY IDEOGRAPH-2FA1C\0" "CJK COMPATIBILITY IDEOGRAPH-2FA1D\0" "CJK COMPATIBILITY IDEOGRAPH-F900\0" "CJK COMPATIBILITY IDEOGRAPH-F901\0" "CJK COMPATIBILITY IDEOGRAPH-F902\0" "CJK COMPATIBILITY IDEOGRAPH-F903\0" "CJK COMPATIBILITY IDEOGRAPH-F904\0" "CJK COMPATIBILITY IDEOGRAPH-F905\0" "CJK COMPATIBILITY IDEOGRAPH-F906\0" "CJK COMPATIBILITY IDEOGRAPH-F907\0" "CJK COMPATIBILITY IDEOGRAPH-F908\0" "CJK COMPATIBILITY IDEOGRAPH-F909\0" "CJK COMPATIBILITY IDEOGRAPH-F90A\0" "CJK COMPATIBILITY IDEOGRAPH-F90B\0" "CJK COMPATIBILITY IDEOGRAPH-F90C\0" "CJK COMPATIBILITY IDEOGRAPH-F90D\0" "CJK COMPATIBILITY IDEOGRAPH-F90E\0" "CJK COMPATIBILITY IDEOGRAPH-F90F\0" "CJK COMPATIBILITY IDEOGRAPH-F910\0" "CJK COMPATIBILITY IDEOGRAPH-F911\0" "CJK COMPATIBILITY IDEOGRAPH-F912\0" "CJK COMPATIBILITY IDEOGRAPH-F913\0" "CJK COMPATIBILITY IDEOGRAPH-F914\0" "CJK COMPATIBILITY IDEOGRAPH-F915\0" "CJK COMPATIBILITY IDEOGRAPH-F916\0" "CJK COMPATIBILITY IDEOGRAPH-F917\0" "CJK COMPATIBILITY IDEOGRAPH-F918\0" "CJK COMPATIBILITY IDEOGRAPH-F919\0" "CJK COMPATIBILITY IDEOGRAPH-F91A\0" "CJK COMPATIBILITY IDEOGRAPH-F91B\0" "CJK COMPATIBILITY IDEOGRAPH-F91C\0" "CJK COMPATIBILITY IDEOGRAPH-F91D\0" "CJK COMPATIBILITY IDEOGRAPH-F91E\0" "CJK COMPATIBILITY IDEOGRAPH-F91F\0" "CJK COMPATIBILITY IDEOGRAPH-F920\0" "CJK COMPATIBILITY IDEOGRAPH-F921\0" "CJK COMPATIBILITY IDEOGRAPH-F922\0" "CJK COMPATIBILITY IDEOGRAPH-F923\0" "CJK COMPATIBILITY IDEOGRAPH-F924\0" "CJK COMPATIBILITY IDEOGRAPH-F925\0" "CJK COMPATIBILITY IDEOGRAPH-F926\0" "CJK COMPATIBILITY IDEOGRAPH-F927\0" "CJK COMPATIBILITY IDEOGRAPH-F928\0" "CJK COMPATIBILITY IDEOGRAPH-F929\0" "CJK COMPATIBILITY IDEOGRAPH-F92A\0" "CJK COMPATIBILITY IDEOGRAPH-F92B\0" "CJK COMPATIBILITY IDEOGRAPH-F92C\0" "CJK COMPATIBILITY IDEOGRAPH-F92D\0" "CJK COMPATIBILITY IDEOGRAPH-F92E\0" "CJK COMPATIBILITY IDEOGRAPH-F92F\0" "CJK COMPATIBILITY IDEOGRAPH-F930\0" "CJK COMPATIBILITY IDEOGRAPH-F931\0" "CJK COMPATIBILITY IDEOGRAPH-F932\0" "CJK COMPATIBILITY IDEOGRAPH-F933\0" "CJK COMPATIBILITY IDEOGRAPH-F934\0" "CJK COMPATIBILITY IDEOGRAPH-F935\0" "CJK COMPATIBILITY IDEOGRAPH-F936\0" "CJK COMPATIBILITY IDEOGRAPH-F937\0" "CJK COMPATIBILITY IDEOGRAPH-F938\0" "CJK COMPATIBILITY IDEOGRAPH-F939\0" "CJK COMPATIBILITY IDEOGRAPH-F93A\0" "CJK COMPATIBILITY IDEOGRAPH-F93B\0" "CJK COMPATIBILITY IDEOGRAPH-F93C\0" "CJK COMPATIBILITY IDEOGRAPH-F93D\0" "CJK COMPATIBILITY IDEOGRAPH-F93E\0" "CJK COMPATIBILITY IDEOGRAPH-F93F\0" "CJK COMPATIBILITY IDEOGRAPH-F940\0" "CJK COMPATIBILITY IDEOGRAPH-F941\0" "CJK COMPATIBILITY IDEOGRAPH-F942\0" "CJK COMPATIBILITY IDEOGRAPH-F943\0" "CJK COMPATIBILITY IDEOGRAPH-F944\0" "CJK COMPATIBILITY IDEOGRAPH-F945\0" "CJK COMPATIBILITY IDEOGRAPH-F946\0" "CJK COMPATIBILITY IDEOGRAPH-F947\0" "CJK COMPATIBILITY IDEOGRAPH-F948\0" "CJK COMPATIBILITY IDEOGRAPH-F949\0" "CJK COMPATIBILITY IDEOGRAPH-F94A\0" "CJK COMPATIBILITY IDEOGRAPH-F94B\0" "CJK COMPATIBILITY IDEOGRAPH-F94C\0" "CJK COMPATIBILITY IDEOGRAPH-F94D\0" "CJK COMPATIBILITY IDEOGRAPH-F94E\0" "CJK COMPATIBILITY IDEOGRAPH-F94F\0" "CJK COMPATIBILITY IDEOGRAPH-F950\0" "CJK COMPATIBILITY IDEOGRAPH-F951\0" "CJK COMPATIBILITY IDEOGRAPH-F952\0" "CJK COMPATIBILITY IDEOGRAPH-F953\0" "CJK COMPATIBILITY IDEOGRAPH-F954\0" "CJK COMPATIBILITY IDEOGRAPH-F955\0" "CJK COMPATIBILITY IDEOGRAPH-F956\0" "CJK COMPATIBILITY IDEOGRAPH-F957\0" "CJK COMPATIBILITY IDEOGRAPH-F958\0" "CJK COMPATIBILITY IDEOGRAPH-F959\0" "CJK COMPATIBILITY IDEOGRAPH-F95A\0" "CJK COMPATIBILITY IDEOGRAPH-F95B\0" "CJK COMPATIBILITY IDEOGRAPH-F95C\0" "CJK COMPATIBILITY IDEOGRAPH-F95D\0" "CJK COMPATIBILITY IDEOGRAPH-F95E\0" "CJK COMPATIBILITY IDEOGRAPH-F95F\0" "CJK COMPATIBILITY IDEOGRAPH-F960\0" "CJK COMPATIBILITY IDEOGRAPH-F961\0" "CJK COMPATIBILITY IDEOGRAPH-F962\0" "CJK COMPATIBILITY IDEOGRAPH-F963\0" "CJK COMPATIBILITY IDEOGRAPH-F964\0" "CJK COMPATIBILITY IDEOGRAPH-F965\0" "CJK COMPATIBILITY IDEOGRAPH-F966\0" "CJK COMPATIBILITY IDEOGRAPH-F967\0" "CJK COMPATIBILITY IDEOGRAPH-F968\0" "CJK COMPATIBILITY IDEOGRAPH-F969\0" "CJK COMPATIBILITY IDEOGRAPH-F96A\0" "CJK COMPATIBILITY IDEOGRAPH-F96B\0" "CJK COMPATIBILITY IDEOGRAPH-F96C\0" "CJK COMPATIBILITY IDEOGRAPH-F96D\0" "CJK COMPATIBILITY IDEOGRAPH-F96E\0" "CJK COMPATIBILITY IDEOGRAPH-F96F\0" "CJK COMPATIBILITY IDEOGRAPH-F970\0" "CJK COMPATIBILITY IDEOGRAPH-F971\0" "CJK COMPATIBILITY IDEOGRAPH-F972\0" "CJK COMPATIBILITY IDEOGRAPH-F973\0" "CJK COMPATIBILITY IDEOGRAPH-F974\0" "CJK COMPATIBILITY IDEOGRAPH-F975\0" "CJK COMPATIBILITY IDEOGRAPH-F976\0" "CJK COMPATIBILITY IDEOGRAPH-F977\0" "CJK COMPATIBILITY IDEOGRAPH-F978\0" "CJK COMPATIBILITY IDEOGRAPH-F979\0" "CJK COMPATIBILITY IDEOGRAPH-F97A\0" "CJK COMPATIBILITY IDEOGRAPH-F97B\0" "CJK COMPATIBILITY IDEOGRAPH-F97C\0" "CJK COMPATIBILITY IDEOGRAPH-F97D\0" "CJK COMPATIBILITY IDEOGRAPH-F97E\0" "CJK COMPATIBILITY IDEOGRAPH-F97F\0" "CJK COMPATIBILITY IDEOGRAPH-F980\0" "CJK COMPATIBILITY IDEOGRAPH-F981\0" "CJK COMPATIBILITY IDEOGRAPH-F982\0" "CJK COMPATIBILITY IDEOGRAPH-F983\0" "CJK COMPATIBILITY IDEOGRAPH-F984\0" "CJK COMPATIBILITY IDEOGRAPH-F985\0" "CJK COMPATIBILITY IDEOGRAPH-F986\0" "CJK COMPATIBILITY IDEOGRAPH-F987\0" "CJK COMPATIBILITY IDEOGRAPH-F988\0" "CJK COMPATIBILITY IDEOGRAPH-F989\0" "CJK COMPATIBILITY IDEOGRAPH-F98A\0" "CJK COMPATIBILITY IDEOGRAPH-F98B\0" "CJK COMPATIBILITY IDEOGRAPH-F98C\0" "CJK COMPATIBILITY IDEOGRAPH-F98D\0" "CJK COMPATIBILITY IDEOGRAPH-F98E\0" "CJK COMPATIBILITY IDEOGRAPH-F98F\0" "CJK COMPATIBILITY IDEOGRAPH-F990\0" "CJK COMPATIBILITY IDEOGRAPH-F991\0" "CJK COMPATIBILITY IDEOGRAPH-F992\0" "CJK COMPATIBILITY IDEOGRAPH-F993\0" "CJK COMPATIBILITY IDEOGRAPH-F994\0" "CJK COMPATIBILITY IDEOGRAPH-F995\0" "CJK COMPATIBILITY IDEOGRAPH-F996\0" "CJK COMPATIBILITY IDEOGRAPH-F997\0" "CJK COMPATIBILITY IDEOGRAPH-F998\0" "CJK COMPATIBILITY IDEOGRAPH-F999\0" "CJK COMPATIBILITY IDEOGRAPH-F99A\0" "CJK COMPATIBILITY IDEOGRAPH-F99B\0" "CJK COMPATIBILITY IDEOGRAPH-F99C\0" "CJK COMPATIBILITY IDEOGRAPH-F99D\0" "CJK COMPATIBILITY IDEOGRAPH-F99E\0" "CJK COMPATIBILITY IDEOGRAPH-F99F\0" "CJK COMPATIBILITY IDEOGRAPH-F9A0\0" "CJK COMPATIBILITY IDEOGRAPH-F9A1\0" "CJK COMPATIBILITY IDEOGRAPH-F9A2\0" "CJK COMPATIBILITY IDEOGRAPH-F9A3\0" "CJK COMPATIBILITY IDEOGRAPH-F9A4\0" "CJK COMPATIBILITY IDEOGRAPH-F9A5\0" "CJK COMPATIBILITY IDEOGRAPH-F9A6\0" "CJK COMPATIBILITY IDEOGRAPH-F9A7\0" "CJK COMPATIBILITY IDEOGRAPH-F9A8\0" "CJK COMPATIBILITY IDEOGRAPH-F9A9\0" "CJK COMPATIBILITY IDEOGRAPH-F9AA\0" "CJK COMPATIBILITY IDEOGRAPH-F9AB\0" "CJK COMPATIBILITY IDEOGRAPH-F9AC\0" "CJK COMPATIBILITY IDEOGRAPH-F9AD\0" "CJK COMPATIBILITY IDEOGRAPH-F9AE\0" "CJK COMPATIBILITY IDEOGRAPH-F9AF\0" "CJK COMPATIBILITY IDEOGRAPH-F9B0\0" "CJK COMPATIBILITY IDEOGRAPH-F9B1\0" "CJK COMPATIBILITY IDEOGRAPH-F9B2\0" "CJK COMPATIBILITY IDEOGRAPH-F9B3\0" "CJK COMPATIBILITY IDEOGRAPH-F9B4\0" "CJK COMPATIBILITY IDEOGRAPH-F9B5\0" "CJK COMPATIBILITY IDEOGRAPH-F9B6\0" "CJK COMPATIBILITY IDEOGRAPH-F9B7\0" "CJK COMPATIBILITY IDEOGRAPH-F9B8\0" "CJK COMPATIBILITY IDEOGRAPH-F9B9\0" "CJK COMPATIBILITY IDEOGRAPH-F9BA\0" "CJK COMPATIBILITY IDEOGRAPH-F9BB\0" "CJK COMPATIBILITY IDEOGRAPH-F9BC\0" "CJK COMPATIBILITY IDEOGRAPH-F9BD\0" "CJK COMPATIBILITY IDEOGRAPH-F9BE\0" "CJK COMPATIBILITY IDEOGRAPH-F9BF\0" "CJK COMPATIBILITY IDEOGRAPH-F9C0\0" "CJK COMPATIBILITY IDEOGRAPH-F9C1\0" "CJK COMPATIBILITY IDEOGRAPH-F9C2\0" "CJK COMPATIBILITY IDEOGRAPH-F9C3\0" "CJK COMPATIBILITY IDEOGRAPH-F9C4\0" "CJK COMPATIBILITY IDEOGRAPH-F9C5\0" "CJK COMPATIBILITY IDEOGRAPH-F9C6\0" "CJK COMPATIBILITY IDEOGRAPH-F9C7\0" "CJK COMPATIBILITY IDEOGRAPH-F9C8\0" "CJK COMPATIBILITY IDEOGRAPH-F9C9\0" "CJK COMPATIBILITY IDEOGRAPH-F9CA\0" "CJK COMPATIBILITY IDEOGRAPH-F9CB\0" "CJK COMPATIBILITY IDEOGRAPH-F9CC\0" "CJK COMPATIBILITY IDEOGRAPH-F9CD\0" "CJK COMPATIBILITY IDEOGRAPH-F9CE\0" "CJK COMPATIBILITY IDEOGRAPH-F9CF\0" "CJK COMPATIBILITY IDEOGRAPH-F9D0\0" "CJK COMPATIBILITY IDEOGRAPH-F9D1\0" "CJK COMPATIBILITY IDEOGRAPH-F9D2\0" "CJK COMPATIBILITY IDEOGRAPH-F9D3\0" "CJK COMPATIBILITY IDEOGRAPH-F9D4\0" "CJK COMPATIBILITY IDEOGRAPH-F9D5\0" "CJK COMPATIBILITY IDEOGRAPH-F9D6\0" "CJK COMPATIBILITY IDEOGRAPH-F9D7\0" "CJK COMPATIBILITY IDEOGRAPH-F9D8\0" "CJK COMPATIBILITY IDEOGRAPH-F9D9\0" "CJK COMPATIBILITY IDEOGRAPH-F9DA\0" "CJK COMPATIBILITY IDEOGRAPH-F9DB\0" "CJK COMPATIBILITY IDEOGRAPH-F9DC\0" "CJK COMPATIBILITY IDEOGRAPH-F9DD\0" "CJK COMPATIBILITY IDEOGRAPH-F9DE\0" "CJK COMPATIBILITY IDEOGRAPH-F9DF\0" "CJK COMPATIBILITY IDEOGRAPH-F9E0\0" "CJK COMPATIBILITY IDEOGRAPH-F9E1\0" "CJK COMPATIBILITY IDEOGRAPH-F9E2\0" "CJK COMPATIBILITY IDEOGRAPH-F9E3\0" "CJK COMPATIBILITY IDEOGRAPH-F9E4\0" "CJK COMPATIBILITY IDEOGRAPH-F9E5\0" "CJK COMPATIBILITY IDEOGRAPH-F9E6\0" "CJK COMPATIBILITY IDEOGRAPH-F9E7\0" "CJK COMPATIBILITY IDEOGRAPH-F9E8\0" "CJK COMPATIBILITY IDEOGRAPH-F9E9\0" "CJK COMPATIBILITY IDEOGRAPH-F9EA\0" "CJK COMPATIBILITY IDEOGRAPH-F9EB\0" "CJK COMPATIBILITY IDEOGRAPH-F9EC\0" "CJK COMPATIBILITY IDEOGRAPH-F9ED\0" "CJK COMPATIBILITY IDEOGRAPH-F9EE\0" "CJK COMPATIBILITY IDEOGRAPH-F9EF\0" "CJK COMPATIBILITY IDEOGRAPH-F9F0\0" "CJK COMPATIBILITY IDEOGRAPH-F9F1\0" "CJK COMPATIBILITY IDEOGRAPH-F9F2\0" "CJK COMPATIBILITY IDEOGRAPH-F9F3\0" "CJK COMPATIBILITY IDEOGRAPH-F9F4\0" "CJK COMPATIBILITY IDEOGRAPH-F9F5\0" "CJK COMPATIBILITY IDEOGRAPH-F9F6\0" "CJK COMPATIBILITY IDEOGRAPH-F9F7\0" "CJK COMPATIBILITY IDEOGRAPH-F9F8\0" "CJK COMPATIBILITY IDEOGRAPH-F9F9\0" "CJK COMPATIBILITY IDEOGRAPH-F9FA\0" "CJK COMPATIBILITY IDEOGRAPH-F9FB\0" "CJK COMPATIBILITY IDEOGRAPH-F9FC\0" "CJK COMPATIBILITY IDEOGRAPH-F9FD\0" "CJK COMPATIBILITY IDEOGRAPH-F9FE\0" "CJK COMPATIBILITY IDEOGRAPH-F9FF\0" "CJK COMPATIBILITY IDEOGRAPH-FA00\0" "CJK COMPATIBILITY IDEOGRAPH-FA01\0" "CJK COMPATIBILITY IDEOGRAPH-FA02\0" "CJK COMPATIBILITY IDEOGRAPH-FA03\0" "CJK COMPATIBILITY IDEOGRAPH-FA04\0" "CJK COMPATIBILITY IDEOGRAPH-FA05\0" "CJK COMPATIBILITY IDEOGRAPH-FA06\0" "CJK COMPATIBILITY IDEOGRAPH-FA07\0" "CJK COMPATIBILITY IDEOGRAPH-FA08\0" "CJK COMPATIBILITY IDEOGRAPH-FA09\0" "CJK COMPATIBILITY IDEOGRAPH-FA0A\0" "CJK COMPATIBILITY IDEOGRAPH-FA0B\0" "CJK COMPATIBILITY IDEOGRAPH-FA0C\0" "CJK COMPATIBILITY IDEOGRAPH-FA0D\0" "CJK COMPATIBILITY IDEOGRAPH-FA0E\0" "CJK COMPATIBILITY IDEOGRAPH-FA0F\0" "CJK COMPATIBILITY IDEOGRAPH-FA10\0" "CJK COMPATIBILITY IDEOGRAPH-FA11\0" "CJK COMPATIBILITY IDEOGRAPH-FA12\0" "CJK COMPATIBILITY IDEOGRAPH-FA13\0" "CJK COMPATIBILITY IDEOGRAPH-FA14\0" "CJK COMPATIBILITY IDEOGRAPH-FA15\0" "CJK COMPATIBILITY IDEOGRAPH-FA16\0" "CJK COMPATIBILITY IDEOGRAPH-FA17\0" "CJK COMPATIBILITY IDEOGRAPH-FA18\0" "CJK COMPATIBILITY IDEOGRAPH-FA19\0" "CJK COMPATIBILITY IDEOGRAPH-FA1A\0" "CJK COMPATIBILITY IDEOGRAPH-FA1B\0" "CJK COMPATIBILITY IDEOGRAPH-FA1C\0" "CJK COMPATIBILITY IDEOGRAPH-FA1D\0" "CJK COMPATIBILITY IDEOGRAPH-FA1E\0" "CJK COMPATIBILITY IDEOGRAPH-FA1F\0" "CJK COMPATIBILITY IDEOGRAPH-FA20\0" "CJK COMPATIBILITY IDEOGRAPH-FA21\0" "CJK COMPATIBILITY IDEOGRAPH-FA22\0" "CJK COMPATIBILITY IDEOGRAPH-FA23\0" "CJK COMPATIBILITY IDEOGRAPH-FA24\0" "CJK COMPATIBILITY IDEOGRAPH-FA25\0" "CJK COMPATIBILITY IDEOGRAPH-FA26\0" "CJK COMPATIBILITY IDEOGRAPH-FA27\0" "CJK COMPATIBILITY IDEOGRAPH-FA28\0" "CJK COMPATIBILITY IDEOGRAPH-FA29\0" "CJK COMPATIBILITY IDEOGRAPH-FA2A\0" "CJK COMPATIBILITY IDEOGRAPH-FA2B\0" "CJK COMPATIBILITY IDEOGRAPH-FA2C\0" "CJK COMPATIBILITY IDEOGRAPH-FA2D\0" "CJK COMPATIBILITY IDEOGRAPH-FA30\0" "CJK COMPATIBILITY IDEOGRAPH-FA31\0" "CJK COMPATIBILITY IDEOGRAPH-FA32\0" "CJK COMPATIBILITY IDEOGRAPH-FA33\0" "CJK COMPATIBILITY IDEOGRAPH-FA34\0" "CJK COMPATIBILITY IDEOGRAPH-FA35\0" "CJK COMPATIBILITY IDEOGRAPH-FA36\0" "CJK COMPATIBILITY IDEOGRAPH-FA37\0" "CJK COMPATIBILITY IDEOGRAPH-FA38\0" "CJK COMPATIBILITY IDEOGRAPH-FA39\0" "CJK COMPATIBILITY IDEOGRAPH-FA3A\0" "CJK COMPATIBILITY IDEOGRAPH-FA3B\0" "CJK COMPATIBILITY IDEOGRAPH-FA3C\0" "CJK COMPATIBILITY IDEOGRAPH-FA3D\0" "CJK COMPATIBILITY IDEOGRAPH-FA3E\0" "CJK COMPATIBILITY IDEOGRAPH-FA3F\0" "CJK COMPATIBILITY IDEOGRAPH-FA40\0" "CJK COMPATIBILITY IDEOGRAPH-FA41\0" "CJK COMPATIBILITY IDEOGRAPH-FA42\0" "CJK COMPATIBILITY IDEOGRAPH-FA43\0" "CJK COMPATIBILITY IDEOGRAPH-FA44\0" "CJK COMPATIBILITY IDEOGRAPH-FA45\0" "CJK COMPATIBILITY IDEOGRAPH-FA46\0" "CJK COMPATIBILITY IDEOGRAPH-FA47\0" "CJK COMPATIBILITY IDEOGRAPH-FA48\0" "CJK COMPATIBILITY IDEOGRAPH-FA49\0" "CJK COMPATIBILITY IDEOGRAPH-FA4A\0" "CJK COMPATIBILITY IDEOGRAPH-FA4B\0" "CJK COMPATIBILITY IDEOGRAPH-FA4C\0" "CJK COMPATIBILITY IDEOGRAPH-FA4D\0" "CJK COMPATIBILITY IDEOGRAPH-FA4E\0" "CJK COMPATIBILITY IDEOGRAPH-FA4F\0" "CJK COMPATIBILITY IDEOGRAPH-FA50\0" "CJK COMPATIBILITY IDEOGRAPH-FA51\0" "CJK COMPATIBILITY IDEOGRAPH-FA52\0" "CJK COMPATIBILITY IDEOGRAPH-FA53\0" "CJK COMPATIBILITY IDEOGRAPH-FA54\0" "CJK COMPATIBILITY IDEOGRAPH-FA55\0" "CJK COMPATIBILITY IDEOGRAPH-FA56\0" "CJK COMPATIBILITY IDEOGRAPH-FA57\0" "CJK COMPATIBILITY IDEOGRAPH-FA58\0" "CJK COMPATIBILITY IDEOGRAPH-FA59\0" "CJK COMPATIBILITY IDEOGRAPH-FA5A\0" "CJK COMPATIBILITY IDEOGRAPH-FA5B\0" "CJK COMPATIBILITY IDEOGRAPH-FA5C\0" "CJK COMPATIBILITY IDEOGRAPH-FA5D\0" "CJK COMPATIBILITY IDEOGRAPH-FA5E\0" "CJK COMPATIBILITY IDEOGRAPH-FA5F\0" "CJK COMPATIBILITY IDEOGRAPH-FA60\0" "CJK COMPATIBILITY IDEOGRAPH-FA61\0" "CJK COMPATIBILITY IDEOGRAPH-FA62\0" "CJK COMPATIBILITY IDEOGRAPH-FA63\0" "CJK COMPATIBILITY IDEOGRAPH-FA64\0" "CJK COMPATIBILITY IDEOGRAPH-FA65\0" "CJK COMPATIBILITY IDEOGRAPH-FA66\0" "CJK COMPATIBILITY IDEOGRAPH-FA67\0" "CJK COMPATIBILITY IDEOGRAPH-FA68\0" "CJK COMPATIBILITY IDEOGRAPH-FA69\0" "CJK COMPATIBILITY IDEOGRAPH-FA6A\0" "CJK COMPATIBILITY IDEOGRAPH-FA6B\0" "CJK COMPATIBILITY IDEOGRAPH-FA6C\0" "CJK COMPATIBILITY IDEOGRAPH-FA6D\0" "CJK COMPATIBILITY IDEOGRAPH-FA70\0" "CJK COMPATIBILITY IDEOGRAPH-FA71\0" "CJK COMPATIBILITY IDEOGRAPH-FA72\0" "CJK COMPATIBILITY IDEOGRAPH-FA73\0" "CJK COMPATIBILITY IDEOGRAPH-FA74\0" "CJK COMPATIBILITY IDEOGRAPH-FA75\0" "CJK COMPATIBILITY IDEOGRAPH-FA76\0" "CJK COMPATIBILITY IDEOGRAPH-FA77\0" "CJK COMPATIBILITY IDEOGRAPH-FA78\0" "CJK COMPATIBILITY IDEOGRAPH-FA79\0" "CJK COMPATIBILITY IDEOGRAPH-FA7A\0" "CJK COMPATIBILITY IDEOGRAPH-FA7B\0" "CJK COMPATIBILITY IDEOGRAPH-FA7C\0" "CJK COMPATIBILITY IDEOGRAPH-FA7D\0" "CJK COMPATIBILITY IDEOGRAPH-FA7E\0" "CJK COMPATIBILITY IDEOGRAPH-FA7F\0" "CJK COMPATIBILITY IDEOGRAPH-FA80\0" "CJK COMPATIBILITY IDEOGRAPH-FA81\0" "CJK COMPATIBILITY IDEOGRAPH-FA82\0" "CJK COMPATIBILITY IDEOGRAPH-FA83\0" "CJK COMPATIBILITY IDEOGRAPH-FA84\0" "CJK COMPATIBILITY IDEOGRAPH-FA85\0" "CJK COMPATIBILITY IDEOGRAPH-FA86\0" "CJK COMPATIBILITY IDEOGRAPH-FA87\0" "CJK COMPATIBILITY IDEOGRAPH-FA88\0" "CJK COMPATIBILITY IDEOGRAPH-FA89\0" "CJK COMPATIBILITY IDEOGRAPH-FA8A\0" "CJK COMPATIBILITY IDEOGRAPH-FA8B\0" "CJK COMPATIBILITY IDEOGRAPH-FA8C\0" "CJK COMPATIBILITY IDEOGRAPH-FA8D\0" "CJK COMPATIBILITY IDEOGRAPH-FA8E\0" "CJK COMPATIBILITY IDEOGRAPH-FA8F\0" "CJK COMPATIBILITY IDEOGRAPH-FA90\0" "CJK COMPATIBILITY IDEOGRAPH-FA91\0" "CJK COMPATIBILITY IDEOGRAPH-FA92\0" "CJK COMPATIBILITY IDEOGRAPH-FA93\0" "CJK COMPATIBILITY IDEOGRAPH-FA94\0" "CJK COMPATIBILITY IDEOGRAPH-FA95\0" "CJK COMPATIBILITY IDEOGRAPH-FA96\0" "CJK COMPATIBILITY IDEOGRAPH-FA97\0" "CJK COMPATIBILITY IDEOGRAPH-FA98\0" "CJK COMPATIBILITY IDEOGRAPH-FA99\0" "CJK COMPATIBILITY IDEOGRAPH-FA9A\0" "CJK COMPATIBILITY IDEOGRAPH-FA9B\0" "CJK COMPATIBILITY IDEOGRAPH-FA9C\0" "CJK COMPATIBILITY IDEOGRAPH-FA9D\0" "CJK COMPATIBILITY IDEOGRAPH-FA9E\0" "CJK COMPATIBILITY IDEOGRAPH-FA9F\0" "CJK COMPATIBILITY IDEOGRAPH-FAA0\0" "CJK COMPATIBILITY IDEOGRAPH-FAA1\0" "CJK COMPATIBILITY IDEOGRAPH-FAA2\0" "CJK COMPATIBILITY IDEOGRAPH-FAA3\0" "CJK COMPATIBILITY IDEOGRAPH-FAA4\0" "CJK COMPATIBILITY IDEOGRAPH-FAA5\0" "CJK COMPATIBILITY IDEOGRAPH-FAA6\0" "CJK COMPATIBILITY IDEOGRAPH-FAA7\0" "CJK COMPATIBILITY IDEOGRAPH-FAA8\0" "CJK COMPATIBILITY IDEOGRAPH-FAA9\0" "CJK COMPATIBILITY IDEOGRAPH-FAAA\0" "CJK COMPATIBILITY IDEOGRAPH-FAAB\0" "CJK COMPATIBILITY IDEOGRAPH-FAAC\0" "CJK COMPATIBILITY IDEOGRAPH-FAAD\0" "CJK COMPATIBILITY IDEOGRAPH-FAAE\0" "CJK COMPATIBILITY IDEOGRAPH-FAAF\0" "CJK COMPATIBILITY IDEOGRAPH-FAB0\0" "CJK COMPATIBILITY IDEOGRAPH-FAB1\0" "CJK COMPATIBILITY IDEOGRAPH-FAB2\0" "CJK COMPATIBILITY IDEOGRAPH-FAB3\0" "CJK COMPATIBILITY IDEOGRAPH-FAB4\0" "CJK COMPATIBILITY IDEOGRAPH-FAB5\0" "CJK COMPATIBILITY IDEOGRAPH-FAB6\0" "CJK COMPATIBILITY IDEOGRAPH-FAB7\0" "CJK COMPATIBILITY IDEOGRAPH-FAB8\0" "CJK COMPATIBILITY IDEOGRAPH-FAB9\0" "CJK COMPATIBILITY IDEOGRAPH-FABA\0" "CJK COMPATIBILITY IDEOGRAPH-FABB\0" "CJK COMPATIBILITY IDEOGRAPH-FABC\0" "CJK COMPATIBILITY IDEOGRAPH-FABD\0" "CJK COMPATIBILITY IDEOGRAPH-FABE\0" "CJK COMPATIBILITY IDEOGRAPH-FABF\0" "CJK COMPATIBILITY IDEOGRAPH-FAC0\0" "CJK COMPATIBILITY IDEOGRAPH-FAC1\0" "CJK COMPATIBILITY IDEOGRAPH-FAC2\0" "CJK COMPATIBILITY IDEOGRAPH-FAC3\0" "CJK COMPATIBILITY IDEOGRAPH-FAC4\0" "CJK COMPATIBILITY IDEOGRAPH-FAC5\0" "CJK COMPATIBILITY IDEOGRAPH-FAC6\0" "CJK COMPATIBILITY IDEOGRAPH-FAC7\0" "CJK COMPATIBILITY IDEOGRAPH-FAC8\0" "CJK COMPATIBILITY IDEOGRAPH-FAC9\0" "CJK COMPATIBILITY IDEOGRAPH-FACA\0" "CJK COMPATIBILITY IDEOGRAPH-FACB\0" "CJK COMPATIBILITY IDEOGRAPH-FACC\0" "CJK COMPATIBILITY IDEOGRAPH-FACD\0" "CJK COMPATIBILITY IDEOGRAPH-FACE\0" "CJK COMPATIBILITY IDEOGRAPH-FACF\0" "CJK COMPATIBILITY IDEOGRAPH-FAD0\0" "CJK COMPATIBILITY IDEOGRAPH-FAD1\0" "CJK COMPATIBILITY IDEOGRAPH-FAD2\0" "CJK COMPATIBILITY IDEOGRAPH-FAD3\0" "CJK COMPATIBILITY IDEOGRAPH-FAD4\0" "CJK COMPATIBILITY IDEOGRAPH-FAD5\0" "CJK COMPATIBILITY IDEOGRAPH-FAD6\0" "CJK COMPATIBILITY IDEOGRAPH-FAD7\0" "CJK COMPATIBILITY IDEOGRAPH-FAD8\0" "CJK COMPATIBILITY IDEOGRAPH-FAD9\0" "CJK RADICAL BAMBOO\0" "CJK RADICAL BLUE\0" "CJK RADICAL BOLT OF CLOTH\0" "CJK RADICAL BONE\0" "CJK RADICAL BOX\0" "CJK RADICAL BRUSH ONE\0" "CJK RADICAL BRUSH TWO\0" "CJK RADICAL C-SIMPLIFIED BIRD\0" "CJK RADICAL C-SIMPLIFIED CART\0" "CJK RADICAL C-SIMPLIFIED DRAGON\0" "CJK RADICAL C-SIMPLIFIED EAT\0" "CJK RADICAL C-SIMPLIFIED EVEN\0" "CJK RADICAL C-SIMPLIFIED FISH\0" "CJK RADICAL C-SIMPLIFIED FLY\0" "CJK RADICAL C-SIMPLIFIED FROG\0" "CJK RADICAL C-SIMPLIFIED GATE\0" "CJK RADICAL C-SIMPLIFIED GOLD\0" "CJK RADICAL C-SIMPLIFIED HORSE\0" "CJK RADICAL C-SIMPLIFIED LEAF\0" "CJK RADICAL C-SIMPLIFIED LONG\0" "CJK RADICAL C-SIMPLIFIED SALT\0" "CJK RADICAL C-SIMPLIFIED SEE\0" "CJK RADICAL C-SIMPLIFIED SHELL\0" "CJK RADICAL C-SIMPLIFIED SILK\0" "CJK RADICAL C-SIMPLIFIED SPEECH\0" "CJK RADICAL C-SIMPLIFIED TANNED LEATHER\0" "CJK RADICAL C-SIMPLIFIED TOOTH\0" "CJK RADICAL C-SIMPLIFIED TURTLE\0" "CJK RADICAL C-SIMPLIFIED WIND\0" "CJK RADICAL CHOKE\0" "CJK RADICAL CITY\0" "CJK RADICAL CIVILIAN\0" "CJK RADICAL CLIFF\0" "CJK RADICAL CLOTHES\0" "CJK RADICAL COW\0" "CJK RADICAL DEATH\0" "CJK RADICAL DIVINATION\0" "CJK RADICAL DOG\0" "CJK RADICAL EAT ONE\0" "CJK RADICAL EAT THREE\0" "CJK RADICAL EAT TWO\0" "CJK RADICAL EWE\0" "CJK RADICAL EYE\0" "CJK RADICAL FIRE\0" "CJK RADICAL FOOT\0" "CJK RADICAL GHOST\0" "CJK RADICAL GRASS ONE\0" "CJK RADICAL GRASS THREE\0" "CJK RADICAL GRASS TWO\0" "CJK RADICAL HAND\0" "CJK RADICAL HEAD\0" "CJK RADICAL HEART ONE\0" "CJK RADICAL HEART TWO\0" "CJK RADICAL HORN\0" "CJK RADICAL J-SIMPLIFIED DRAGON\0" "CJK RADICAL J-SIMPLIFIED EVEN\0" "CJK RADICAL J-SIMPLIFIED TOOTH\0" "CJK RADICAL J-SIMPLIFIED TURTLE\0" "CJK RADICAL JADE\0" "CJK RADICAL KNIFE ONE\0" "CJK RADICAL KNIFE TWO\0" "CJK RADICAL LAME FOUR\0" "CJK RADICAL LAME ONE\0" "CJK RADICAL LAME THREE\0" "CJK RADICAL LAME TWO\0" "CJK RADICAL LONG ONE\0" "CJK RADICAL LONG TWO\0" "CJK RADICAL MEAT\0" "CJK RADICAL MESH\0" "CJK RADICAL MOON\0" "CJK RADICAL MORTAR\0" "CJK RADICAL MOTHER\0" "CJK RADICAL MOUND ONE\0" "CJK RADICAL MOUND TWO\0" "CJK RADICAL NET FOUR\0" "CJK RADICAL NET ONE\0" "CJK RADICAL NET THREE\0" "CJK RADICAL NET TWO\0" "CJK RADICAL OLD\0" "CJK RADICAL PAW ONE\0" "CJK RADICAL PAW TWO\0" "CJK RADICAL PERSON\0" "CJK RADICAL RAIN\0" "CJK RADICAL RAM\0" "CJK RADICAL RAP\0" "CJK RADICAL REPEAT\0" "CJK RADICAL SEAL\0" "CJK RADICAL SECOND ONE\0" "CJK RADICAL SECOND THREE\0" "CJK RADICAL SECOND TWO\0" "CJK RADICAL SHEEP\0" "CJK RADICAL SILK\0" "CJK RADICAL SIMPLIFIED HALF TREE TRUNK\0" "CJK RADICAL SIMPLIFIED HORN\0" "CJK RADICAL SIMPLIFIED WALK\0" "CJK RADICAL SIMPLIFIED WHEAT\0" "CJK RADICAL SIMPLIFIED YELLOW\0" "CJK RADICAL SMALL ONE\0" "CJK RADICAL SMALL TWO\0" "CJK RADICAL SNAKE\0" "CJK RADICAL SNOUT ONE\0" "CJK RADICAL SNOUT TWO\0" "CJK RADICAL SPIRIT ONE\0" "CJK RADICAL SPIRIT TWO\0" "CJK RADICAL SUN\0" "CJK RADICAL TABLE\0" "CJK RADICAL THREAD\0" "CJK RADICAL TIGER\0" "CJK RADICAL TURTLE\0" "CJK RADICAL WALK ONE\0" "CJK RADICAL WALK TWO\0" "CJK RADICAL WATER ONE\0" "CJK RADICAL WATER TWO\0" "CJK RADICAL WEST ONE\0" "CJK RADICAL WEST TWO\0" "CJK STROKE BXG\0" "CJK STROKE D\0" "CJK STROKE H\0" "CJK STROKE HG\0" "CJK STROKE HP\0" "CJK STROKE HPWG\0" "CJK STROKE HXWG\0" "CJK STROKE HZ\0" "CJK STROKE HZG\0" "CJK STROKE HZT\0" "CJK STROKE HZW\0" "CJK STROKE HZWG\0" "CJK STROKE HZZ\0" "CJK STROKE HZZP\0" "CJK STROKE HZZZ\0" "CJK STROKE HZZZG\0" "CJK STROKE N\0" "CJK STROKE P\0" "CJK STROKE PD\0" "CJK STROKE PG\0" "CJK STROKE PZ\0" "CJK STROKE Q\0" "CJK STROKE S\0" "CJK STROKE SG\0" "CJK STROKE SP\0" "CJK STROKE ST\0" "CJK STROKE SW\0" "CJK STROKE SWG\0" "CJK STROKE SWZ\0" "CJK STROKE SZ\0" "CJK STROKE SZWG\0" "CJK STROKE SZZ\0" "CJK STROKE T\0" "CJK STROKE TN\0" "CJK STROKE WG\0" "CJK STROKE XG\0" "CLAPPER BOARD\0" "CLAPPING HANDS SIGN\0" "CLEAR SCREEN SYMBOL\0" "CLINKING BEER MUGS\0" "CLIPBOARD\0" "CLOCK FACE EIGHT OCLOCK\0" "CLOCK FACE EIGHT-THIRTY\0" "CLOCK FACE ELEVEN OCLOCK\0" "CLOCK FACE ELEVEN-THIRTY\0" "CLOCK FACE FIVE OCLOCK\0" "CLOCK FACE FIVE-THIRTY\0" "CLOCK FACE FOUR OCLOCK\0" "CLOCK FACE FOUR-THIRTY\0" "CLOCK FACE NINE OCLOCK\0" "CLOCK FACE NINE-THIRTY\0" "CLOCK FACE ONE OCLOCK\0" "CLOCK FACE ONE-THIRTY\0" "CLOCK FACE SEVEN OCLOCK\0" "CLOCK FACE SEVEN-THIRTY\0" "CLOCK FACE SIX OCLOCK\0" "CLOCK FACE SIX-THIRTY\0" "CLOCK FACE TEN OCLOCK\0" "CLOCK FACE TEN-THIRTY\0" "CLOCK FACE THREE OCLOCK\0" "CLOCK FACE THREE-THIRTY\0" "CLOCK FACE TWELVE OCLOCK\0" "CLOCK FACE TWELVE-THIRTY\0" "CLOCK FACE TWO OCLOCK\0" "CLOCK FACE TWO-THIRTY\0" "CLOCKWISE CLOSED CIRCLE ARROW\0" "CLOCKWISE CONTOUR INTEGRAL\0" "CLOCKWISE DOWNWARDS AND UPWARDS OPEN CIRCLE ARROWS\0" "CLOCKWISE GAPPED CIRCLE ARROW\0" "CLOCKWISE INTEGRAL\0" "CLOCKWISE OPEN CIRCLE ARROW\0" "CLOCKWISE RIGHTWARDS AND LEFTWARDS OPEN CIRCLE ARROWS\0" "CLOCKWISE RIGHTWARDS AND LEFTWARDS OPEN CIRCLE ARROWS WITH CIRCLED ONE OVERLAY\0" "CLOCKWISE TOP SEMICIRCLE ARROW\0" "CLOSE UP\0" "CLOSED BOOK\0" "CLOSED INTERSECTION WITH SERIFS\0" "CLOSED LOCK WITH KEY\0" "CLOSED MAILBOX WITH LOWERED FLAG\0" "CLOSED MAILBOX WITH RAISED FLAG\0" "CLOSED SUBSET\0" "CLOSED SUBSET OR EQUAL TO\0" "CLOSED SUPERSET\0" "CLOSED SUPERSET OR EQUAL TO\0" "CLOSED UMBRELLA\0" "CLOSED UNION WITH SERIFS\0" "CLOSED UNION WITH SERIFS AND SMASH PRODUCT\0" "CLOUD\0" "COCKTAIL GLASS\0" "COFFIN\0" "COLLISION SYMBOL\0" "COLON\0" "COLON EQUALS\0" "COLON SIGN\0" "COMBINING ACUTE ACCENT\0" "COMBINING ACUTE ACCENT BELOW\0" "COMBINING ACUTE TONE MARK\0" "COMBINING ACUTE-GRAVE-ACUTE\0" "COMBINING ACUTE-MACRON\0" "COMBINING ALMOST EQUAL TO ABOVE\0" "COMBINING ALMOST EQUAL TO BELOW\0" "COMBINING ANNUITY SYMBOL\0" "COMBINING ANTICLOCKWISE ARROW ABOVE\0" "COMBINING ANTICLOCKWISE RING OVERLAY\0" "COMBINING ASTERISK ABOVE\0" "COMBINING ASTERISK BELOW\0" "COMBINING BREVE\0" "COMBINING BREVE BELOW\0" "COMBINING BREVE-MACRON\0" "COMBINING BRIDGE ABOVE\0" "COMBINING BRIDGE BELOW\0" "COMBINING CANDRABINDU\0" "COMBINING CARON\0" "COMBINING CARON BELOW\0" "COMBINING CEDILLA\0" "COMBINING CIRCUMFLEX ACCENT\0" "COMBINING CIRCUMFLEX ACCENT BELOW\0" "COMBINING CLOCKWISE ARROW ABOVE\0" "COMBINING CLOCKWISE RING OVERLAY\0" "COMBINING COMMA ABOVE\0" "COMBINING COMMA ABOVE RIGHT\0" "COMBINING COMMA BELOW\0" "COMBINING CONJOINING MACRON\0" "COMBINING CYRILLIC DASIA PNEUMATA\0" "COMBINING CYRILLIC HUNDRED MILLIONS SIGN\0" "COMBINING CYRILLIC HUNDRED THOUSANDS SIGN\0" "COMBINING CYRILLIC KAVYKA\0" "COMBINING CYRILLIC LETTER A\0" "COMBINING CYRILLIC LETTER BE\0" "COMBINING CYRILLIC LETTER BIG YUS\0" "COMBINING CYRILLIC LETTER CHE\0" "COMBINING CYRILLIC LETTER DE\0" "COMBINING CYRILLIC LETTER DJERV\0" "COMBINING CYRILLIC LETTER EL\0" "COMBINING CYRILLIC LETTER EM\0" "COMBINING CYRILLIC LETTER EN\0" "COMBINING CYRILLIC LETTER ER\0" "COMBINING CYRILLIC LETTER ES\0" "COMBINING CYRILLIC LETTER ES-TE\0" "COMBINING CYRILLIC LETTER FITA\0" "COMBINING CYRILLIC LETTER GHE\0" "COMBINING CYRILLIC LETTER HA\0" "COMBINING CYRILLIC LETTER IE\0" "COMBINING CYRILLIC LETTER IOTIFIED A\0" "COMBINING CYRILLIC LETTER IOTIFIED BIG YUS\0" "COMBINING CYRILLIC LETTER KA\0" "COMBINING CYRILLIC LETTER LITTLE YUS\0" "COMBINING CYRILLIC LETTER MONOGRAPH UK\0" "COMBINING CYRILLIC LETTER O\0" "COMBINING CYRILLIC LETTER PE\0" "COMBINING CYRILLIC LETTER SHA\0" "COMBINING CYRILLIC LETTER SHCHA\0" "COMBINING CYRILLIC LETTER TE\0" "COMBINING CYRILLIC LETTER TSE\0" "COMBINING CYRILLIC LETTER VE\0" "COMBINING CYRILLIC LETTER YAT\0" "COMBINING CYRILLIC LETTER YU\0" "COMBINING CYRILLIC LETTER ZE\0" "COMBINING CYRILLIC LETTER ZHE\0" "COMBINING CYRILLIC MILLIONS SIGN\0" "COMBINING CYRILLIC PALATALIZATION\0" "COMBINING CYRILLIC PAYEROK\0" "COMBINING CYRILLIC POKRYTIE\0" "COMBINING CYRILLIC PSILI PNEUMATA\0" "COMBINING CYRILLIC TEN MILLIONS SIGN\0" "COMBINING CYRILLIC THOUSAND MILLIONS SIGN\0" "COMBINING CYRILLIC TITLO\0" "COMBINING CYRILLIC VZMET\0" "COMBINING DEVANAGARI DIGIT EIGHT\0" "COMBINING DEVANAGARI DIGIT FIVE\0" "COMBINING DEVANAGARI DIGIT FOUR\0" "COMBINING DEVANAGARI DIGIT NINE\0" "COMBINING DEVANAGARI DIGIT ONE\0" "COMBINING DEVANAGARI DIGIT SEVEN\0" "COMBINING DEVANAGARI DIGIT SIX\0" "COMBINING DEVANAGARI DIGIT THREE\0" "COMBINING DEVANAGARI DIGIT TWO\0" "COMBINING DEVANAGARI DIGIT ZERO\0" "COMBINING DEVANAGARI LETTER A\0" "COMBINING DEVANAGARI LETTER KA\0" "COMBINING DEVANAGARI LETTER NA\0" "COMBINING DEVANAGARI LETTER PA\0" "COMBINING DEVANAGARI LETTER RA\0" "COMBINING DEVANAGARI LETTER U\0" "COMBINING DEVANAGARI LETTER VI\0" "COMBINING DEVANAGARI SIGN AVAGRAHA\0" "COMBINING DIAERESIS\0" "COMBINING DIAERESIS BELOW\0" "COMBINING DOT ABOVE\0" "COMBINING DOT ABOVE RIGHT\0" "COMBINING DOT BELOW\0" "COMBINING DOTTED ACUTE ACCENT\0" "COMBINING DOTTED GRAVE ACCENT\0" "COMBINING DOUBLE ACUTE ACCENT\0" "COMBINING DOUBLE BREVE\0" "COMBINING DOUBLE BREVE BELOW\0" "COMBINING DOUBLE CIRCUMFLEX ABOVE\0" "COMBINING DOUBLE GRAVE ACCENT\0" "COMBINING DOUBLE INVERTED BREVE\0" "COMBINING DOUBLE INVERTED BREVE BELOW\0" "COMBINING DOUBLE LOW LINE\0" "COMBINING DOUBLE MACRON\0" "COMBINING DOUBLE MACRON BELOW\0" "COMBINING DOUBLE OVERLINE\0" "COMBINING DOUBLE RIGHTWARDS ARROW BELOW\0" "COMBINING DOUBLE RING BELOW\0" "COMBINING DOUBLE TILDE\0" "COMBINING DOUBLE TILDE LEFT HALF\0" "COMBINING DOUBLE TILDE RIGHT HALF\0" "COMBINING DOUBLE VERTICAL LINE ABOVE\0" "COMBINING DOUBLE VERTICAL LINE BELOW\0" "COMBINING DOUBLE VERTICAL STROKE OVERLAY\0" "COMBINING DOWN TACK BELOW\0" "COMBINING ENCLOSING CIRCLE\0" "COMBINING ENCLOSING CIRCLE BACKSLASH\0" "COMBINING ENCLOSING DIAMOND\0" "COMBINING ENCLOSING KEYCAP\0" "COMBINING ENCLOSING SCREEN\0" "COMBINING ENCLOSING SQUARE\0" "COMBINING ENCLOSING UPWARD POINTING TRIANGLE\0" "COMBINING EQUALS SIGN BELOW\0" "COMBINING FERMATA\0" "COMBINING FOUR DOTS ABOVE\0" "COMBINING GRAPHEME JOINER\0" "COMBINING GRAVE ACCENT\0" "COMBINING GRAVE ACCENT BELOW\0" "COMBINING GRAVE TONE MARK\0" "COMBINING GRAVE-ACUTE-GRAVE\0" "COMBINING GRAVE-MACRON\0" "COMBINING GREEK DIALYTIKA TONOS\0" "COMBINING GREEK KORONIS\0" "COMBINING GREEK MUSICAL PENTASEME\0" "COMBINING GREEK MUSICAL TETRASEME\0" "COMBINING GREEK MUSICAL TRISEME\0" "COMBINING GREEK PERISPOMENI\0" "COMBINING GREEK YPOGEGRAMMENI\0" "COMBINING HOMOTHETIC ABOVE\0" "COMBINING HOOK ABOVE\0" "COMBINING HORN\0" "COMBINING INVERTED BREVE\0" "COMBINING INVERTED BREVE BELOW\0" "COMBINING INVERTED BRIDGE BELOW\0" "COMBINING INVERTED DOUBLE ARCH BELOW\0" "COMBINING IS BELOW\0" "COMBINING KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK\0" "COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK\0" "COMBINING LATIN LETTER SMALL CAPITAL G\0" "COMBINING LATIN LETTER SMALL CAPITAL L\0" "COMBINING LATIN LETTER SMALL CAPITAL M\0" "COMBINING LATIN LETTER SMALL CAPITAL N\0" "COMBINING LATIN LETTER SMALL CAPITAL R\0" "COMBINING LATIN SMALL LETTER A\0" "COMBINING LATIN SMALL LETTER AE\0" "COMBINING LATIN SMALL LETTER AO\0" "COMBINING LATIN SMALL LETTER AV\0" "COMBINING LATIN SMALL LETTER C\0" "COMBINING LATIN SMALL LETTER C CEDILLA\0" "COMBINING LATIN SMALL LETTER D\0" "COMBINING LATIN SMALL LETTER E\0" "COMBINING LATIN SMALL LETTER ETH\0" "COMBINING LATIN SMALL LETTER FLATTENED OPEN A ABOVE\0" "COMBINING LATIN SMALL LETTER G\0" "COMBINING LATIN SMALL LETTER H\0" "COMBINING LATIN SMALL LETTER I\0" "COMBINING LATIN SMALL LETTER INSULAR D\0" "COMBINING LATIN SMALL LETTER K\0" "COMBINING LATIN SMALL LETTER L\0" "COMBINING LATIN SMALL LETTER LONG S\0" "COMBINING LATIN SMALL LETTER M\0" "COMBINING LATIN SMALL LETTER N\0" "COMBINING LATIN SMALL LETTER O\0" "COMBINING LATIN SMALL LETTER R\0" "COMBINING LATIN SMALL LETTER R BELOW\0" "COMBINING LATIN SMALL LETTER R ROTUNDA\0" "COMBINING LATIN SMALL LETTER S\0" "COMBINING LATIN SMALL LETTER T\0" "COMBINING LATIN SMALL LETTER U\0" "COMBINING LATIN SMALL LETTER V\0" "COMBINING LATIN SMALL LETTER X\0" "COMBINING LATIN SMALL LETTER Z\0" "COMBINING LEFT ANGLE ABOVE\0" "COMBINING LEFT ANGLE BELOW\0" "COMBINING LEFT ARROW ABOVE\0" "COMBINING LEFT ARROW BELOW\0" "COMBINING LEFT ARROWHEAD ABOVE\0" "COMBINING LEFT ARROWHEAD BELOW\0" "COMBINING LEFT HALF RING ABOVE\0" "COMBINING LEFT HALF RING BELOW\0" "COMBINING LEFT HARPOON ABOVE\0" "COMBINING LEFT RIGHT ARROW ABOVE\0" "COMBINING LEFT RIGHT ARROW BELOW\0" "COMBINING LEFT TACK BELOW\0" "COMBINING LEFTWARDS ARROW OVERLAY\0" "COMBINING LEFTWARDS HARPOON WITH BARB DOWNWARDS\0" "COMBINING LIGATURE LEFT HALF\0" "COMBINING LIGATURE RIGHT HALF\0" "COMBINING LONG DOUBLE SOLIDUS OVERLAY\0" "COMBINING LONG SOLIDUS OVERLAY\0" "COMBINING LONG STROKE OVERLAY\0" "COMBINING LONG VERTICAL LINE OVERLAY\0" "COMBINING LOW LINE\0" "COMBINING MACRON\0" "COMBINING MACRON BELOW\0" "COMBINING MACRON LEFT HALF\0" "COMBINING MACRON RIGHT HALF\0" "COMBINING MACRON-ACUTE\0" "COMBINING MACRON-BREVE\0" "COMBINING MACRON-GRAVE\0" "COMBINING MINUS SIGN BELOW\0" "COMBINING NOT TILDE ABOVE\0" "COMBINING OGONEK\0" "COMBINING OGONEK ABOVE\0" "COMBINING OVERLINE\0" "COMBINING PALATALIZED HOOK BELOW\0" "COMBINING PLUS SIGN BELOW\0" "COMBINING RETROFLEX HOOK BELOW\0" "COMBINING REVERSE SOLIDUS OVERLAY\0" "COMBINING REVERSED COMMA ABOVE\0" "COMBINING RIGHT ARROW ABOVE\0" "COMBINING RIGHT ARROW BELOW\0" "COMBINING RIGHT ARROWHEAD ABOVE\0" "COMBINING RIGHT ARROWHEAD AND DOWN ARROWHEAD BELOW\0" "COMBINING RIGHT ARROWHEAD AND UP ARROWHEAD BELOW\0" "COMBINING RIGHT ARROWHEAD BELOW\0" "COMBINING RIGHT HALF RING ABOVE\0" "COMBINING RIGHT HALF RING BELOW\0" "COMBINING RIGHT HARPOON ABOVE\0" "COMBINING RIGHT TACK BELOW\0" "COMBINING RIGHTWARDS HARPOON WITH BARB DOWNWARDS\0" "COMBINING RING ABOVE\0" "COMBINING RING BELOW\0" "COMBINING RING OVERLAY\0" "COMBINING SEAGULL BELOW\0" "COMBINING SHORT SOLIDUS OVERLAY\0" "COMBINING SHORT STROKE OVERLAY\0" "COMBINING SHORT VERTICAL LINE OVERLAY\0" "COMBINING SNAKE BELOW\0" "COMBINING SQUARE BELOW\0" "COMBINING SUSPENSION MARK\0" "COMBINING THREE DOTS ABOVE\0" "COMBINING TILDE\0" "COMBINING TILDE BELOW\0" "COMBINING TILDE OVERLAY\0" "COMBINING TRIPLE UNDERDOT\0" "COMBINING TURNED COMMA ABOVE\0" "COMBINING UP TACK BELOW\0" "COMBINING UPWARDS ARROW BELOW\0" "COMBINING UR ABOVE\0" "COMBINING US ABOVE\0" "COMBINING VERTICAL LINE ABOVE\0" "COMBINING VERTICAL LINE BELOW\0" "COMBINING VERTICAL TILDE\0" "COMBINING WIDE BRIDGE ABOVE\0" "COMBINING X ABOVE\0" "COMBINING X BELOW\0" "COMBINING ZIGZAG ABOVE\0" "COMBINING ZIGZAG BELOW\0" "COMET\0" "COMMA\0" "COMMERCIAL AT\0" "COMMERCIAL MINUS SIGN\0" "COMPLEMENT\0" "COMPOSITION SYMBOL\0" "CONFETTI BALL\0" "CONFOUNDED FACE\0" "CONGRUENT WITH DOT ABOVE\0" "CONICAL TAPER\0" "CONJUNCTION\0" "CONSTRUCTION SIGN\0" "CONSTRUCTION WORKER\0" "CONTAINS AS MEMBER\0" "CONTAINS AS NORMAL SUBGROUP\0" "CONTAINS AS NORMAL SUBGROUP OR EQUAL TO\0" "CONTAINS WITH LONG HORIZONTAL STROKE\0" "CONTAINS WITH OVERBAR\0" "CONTAINS WITH VERTICAL BAR AT END OF HORIZONTAL STROKE\0" "CONTINUOUS UNDERLINE SYMBOL\0" "CONTOUR INTEGRAL\0" "CONVENIENCE STORE\0" "COOKED RICE\0" "COOKIE\0" "COOKING\0" "COPTIC CAPITAL LETTER AKHMIMIC KHEI\0" "COPTIC CAPITAL LETTER ALFA\0" "COPTIC CAPITAL LETTER CROSSED SHEI\0" "COPTIC CAPITAL LETTER CRYPTOGRAMMIC EIE\0" "COPTIC CAPITAL LETTER CRYPTOGRAMMIC GANGIA\0" "COPTIC CAPITAL LETTER CRYPTOGRAMMIC NI\0" "COPTIC CAPITAL LETTER CRYPTOGRAMMIC SHEI\0" "COPTIC CAPITAL LETTER DALDA\0" "COPTIC CAPITAL LETTER DEI\0" "COPTIC CAPITAL LETTER DIALECT-P ALEF\0" "COPTIC CAPITAL LETTER DIALECT-P HORI\0" "COPTIC CAPITAL LETTER DIALECT-P KAPA\0" "COPTIC CAPITAL LETTER DIALECT-P NI\0" "COPTIC CAPITAL LETTER EIE\0" "COPTIC CAPITAL LETTER FEI\0" "COPTIC CAPITAL LETTER FI\0" "COPTIC CAPITAL LETTER GAMMA\0" "COPTIC CAPITAL LETTER GANGIA\0" "COPTIC CAPITAL LETTER HATE\0" "COPTIC CAPITAL LETTER HORI\0" "COPTIC CAPITAL LETTER IAUDA\0" "COPTIC CAPITAL LETTER KAPA\0" "COPTIC CAPITAL LETTER KHEI\0" "COPTIC CAPITAL LETTER KHI\0" "COPTIC CAPITAL LETTER KSI\0" "COPTIC CAPITAL LETTER L-SHAPED HA\0" "COPTIC CAPITAL LETTER LAULA\0" "COPTIC CAPITAL LETTER MI\0" "COPTIC CAPITAL LETTER NI\0" "COPTIC CAPITAL LETTER O\0" "COPTIC CAPITAL LETTER OLD COPTIC AIN\0" "COPTIC CAPITAL LETTER OLD COPTIC DJA\0" "COPTIC CAPITAL LETTER OLD COPTIC ESH\0" "COPTIC CAPITAL LETTER OLD COPTIC GANGIA\0" "COPTIC CAPITAL LETTER OLD COPTIC HA\0" "COPTIC CAPITAL LETTER OLD COPTIC HAT\0" "COPTIC CAPITAL LETTER OLD COPTIC HEI\0" "COPTIC CAPITAL LETTER OLD COPTIC HORI\0" "COPTIC CAPITAL LETTER OLD COPTIC OOU\0" "COPTIC CAPITAL LETTER OLD COPTIC SHEI\0" "COPTIC CAPITAL LETTER OLD COPTIC SHIMA\0" "COPTIC CAPITAL LETTER OLD NUBIAN NGI\0" "COPTIC CAPITAL LETTER OLD NUBIAN NYI\0" "COPTIC CAPITAL LETTER OLD NUBIAN SHIMA\0" "COPTIC CAPITAL LETTER OLD NUBIAN WAU\0" "COPTIC CAPITAL LETTER OOU\0" "COPTIC CAPITAL LETTER PI\0" "COPTIC CAPITAL LETTER PSI\0" "COPTIC CAPITAL LETTER RO\0" "COPTIC CAPITAL LETTER SAMPI\0" "COPTIC CAPITAL LETTER SHEI\0" "COPTIC CAPITAL LETTER SHIMA\0" "COPTIC CAPITAL LETTER SIMA\0" "COPTIC CAPITAL LETTER SOU\0" "COPTIC CAPITAL LETTER TAU\0" "COPTIC CAPITAL LETTER THETHE\0" "COPTIC CAPITAL LETTER UA\0" "COPTIC CAPITAL LETTER VIDA\0" "COPTIC CAPITAL LETTER ZATA\0" "COPTIC COMBINING NI ABOVE\0" "COPTIC COMBINING SPIRITUS ASPER\0" "COPTIC COMBINING SPIRITUS LENIS\0" "COPTIC FRACTION ONE HALF\0" "COPTIC FULL STOP\0" "COPTIC MORPHOLOGICAL DIVIDER\0" "COPTIC OLD NUBIAN DIRECT QUESTION MARK\0" "COPTIC OLD NUBIAN FULL STOP\0" "COPTIC OLD NUBIAN INDIRECT QUESTION MARK\0" "COPTIC OLD NUBIAN VERSE DIVIDER\0" "COPTIC SMALL LETTER AKHMIMIC KHEI\0" "COPTIC SMALL LETTER ALFA\0" "COPTIC SMALL LETTER CROSSED SHEI\0" "COPTIC SMALL LETTER CRYPTOGRAMMIC EIE\0" "COPTIC SMALL LETTER CRYPTOGRAMMIC GANGIA\0" "COPTIC SMALL LETTER CRYPTOGRAMMIC NI\0" "COPTIC SMALL LETTER CRYPTOGRAMMIC SHEI\0" "COPTIC SMALL LETTER DALDA\0" "COPTIC SMALL LETTER DEI\0" "COPTIC SMALL LETTER DIALECT-P ALEF\0" "COPTIC SMALL LETTER DIALECT-P HORI\0" "COPTIC SMALL LETTER DIALECT-P KAPA\0" "COPTIC SMALL LETTER DIALECT-P NI\0" "COPTIC SMALL LETTER EIE\0" "COPTIC SMALL LETTER FEI\0" "COPTIC SMALL LETTER FI\0" "COPTIC SMALL LETTER GAMMA\0" "COPTIC SMALL LETTER GANGIA\0" "COPTIC SMALL LETTER HATE\0" "COPTIC SMALL LETTER HORI\0" "COPTIC SMALL LETTER IAUDA\0" "COPTIC SMALL LETTER KAPA\0" "COPTIC SMALL LETTER KHEI\0" "COPTIC SMALL LETTER KHI\0" "COPTIC SMALL LETTER KSI\0" "COPTIC SMALL LETTER L-SHAPED HA\0" "COPTIC SMALL LETTER LAULA\0" "COPTIC SMALL LETTER MI\0" "COPTIC SMALL LETTER NI\0" "COPTIC SMALL LETTER O\0" "COPTIC SMALL LETTER OLD COPTIC AIN\0" "COPTIC SMALL LETTER OLD COPTIC DJA\0" "COPTIC SMALL LETTER OLD COPTIC ESH\0" "COPTIC SMALL LETTER OLD COPTIC GANGIA\0" "COPTIC SMALL LETTER OLD COPTIC HA\0" "COPTIC SMALL LETTER OLD COPTIC HAT\0" "COPTIC SMALL LETTER OLD COPTIC HEI\0" "COPTIC SMALL LETTER OLD COPTIC HORI\0" "COPTIC SMALL LETTER OLD COPTIC OOU\0" "COPTIC SMALL LETTER OLD COPTIC SHEI\0" "COPTIC SMALL LETTER OLD COPTIC SHIMA\0" "COPTIC SMALL LETTER OLD NUBIAN NGI\0" "COPTIC SMALL LETTER OLD NUBIAN NYI\0" "COPTIC SMALL LETTER OLD NUBIAN SHIMA\0" "COPTIC SMALL LETTER OLD NUBIAN WAU\0" "COPTIC SMALL LETTER OOU\0" "COPTIC SMALL LETTER PI\0" "COPTIC SMALL LETTER PSI\0" "COPTIC SMALL LETTER RO\0" "COPTIC SMALL LETTER SAMPI\0" "COPTIC SMALL LETTER SHEI\0" "COPTIC SMALL LETTER SHIMA\0" "COPTIC SMALL LETTER SIMA\0" "COPTIC SMALL LETTER SOU\0" "COPTIC SMALL LETTER TAU\0" "COPTIC SMALL LETTER THETHE\0" "COPTIC SMALL LETTER UA\0" "COPTIC SMALL LETTER VIDA\0" "COPTIC SMALL LETTER ZATA\0" "COPTIC SYMBOL KAI\0" "COPTIC SYMBOL KHI RO\0" "COPTIC SYMBOL MI RO\0" "COPTIC SYMBOL PI RO\0" "COPTIC SYMBOL SHIMA SIMA\0" "COPTIC SYMBOL STAUROS\0" "COPTIC SYMBOL TAU RO\0" "COPYRIGHT SIGN\0" "CORRESPONDS TO\0" "COUNTERBORE\0" "COUNTERSINK\0" "COUNTING ROD TENS DIGIT EIGHT\0" "COUNTING ROD TENS DIGIT FIVE\0" "COUNTING ROD TENS DIGIT FOUR\0" "COUNTING ROD TENS DIGIT NINE\0" "COUNTING ROD TENS DIGIT ONE\0" "COUNTING ROD TENS DIGIT SEVEN\0" "COUNTING ROD TENS DIGIT SIX\0" "COUNTING ROD TENS DIGIT THREE\0" "COUNTING ROD TENS DIGIT TWO\0" "COUNTING ROD UNIT DIGIT EIGHT\0" "COUNTING ROD UNIT DIGIT FIVE\0" "COUNTING ROD UNIT DIGIT FOUR\0" "COUNTING ROD UNIT DIGIT NINE\0" "COUNTING ROD UNIT DIGIT ONE\0" "COUNTING ROD UNIT DIGIT SEVEN\0" "COUNTING ROD UNIT DIGIT SIX\0" "COUNTING ROD UNIT DIGIT THREE\0" "COUNTING ROD UNIT DIGIT TWO\0" "COUPLE WITH HEART\0" "COW\0" "COW FACE\0" "CREDIT CARD\0" "CRESCENT MOON\0" "CROCODILE\0" "CROSS MARK\0" "CROSS OF JERUSALEM\0" "CROSS OF LORRAINE\0" "CROSSED FLAGS\0" "CROSSED NEGATIVE SQUARED LATIN CAPITAL LETTER P\0" "CROSSED SWORDS\0" "CROSSING LANES\0" "CROWN\0" "CRUZEIRO SIGN\0" "CRYING CAT FACE\0" "CRYING FACE\0" "CRYSTAL BALL\0" "CUBE ROOT\0" "CUNEIFORM NUMERIC SIGN EIGHT ASH\0" "CUNEIFORM NUMERIC SIGN EIGHT DISH\0" "CUNEIFORM NUMERIC SIGN EIGHT GESH2\0" "CUNEIFORM NUMERIC SIGN EIGHT SHAR2\0" "CUNEIFORM NUMERIC SIGN EIGHT U\0" "CUNEIFORM NUMERIC SIGN EIGHT VARIANT FORM USSU\0" "CUNEIFORM NUMERIC SIGN EIGHT VARIANT FORM USSU3\0" "CUNEIFORM NUMERIC SIGN FIVE ASH\0" "CUNEIFORM NUMERIC SIGN FIVE ASH TENU\0" "CUNEIFORM NUMERIC SIGN FIVE BAN2\0" "CUNEIFORM NUMERIC SIGN FIVE BAN2 VARIANT FORM\0" "CUNEIFORM NUMERIC SIGN FIVE BURU\0" "CUNEIFORM NUMERIC SIGN FIVE DISH\0" "CUNEIFORM NUMERIC SIGN FIVE GESH2\0" "CUNEIFORM NUMERIC SIGN FIVE GESHU\0" "CUNEIFORM NUMERIC SIGN FIVE SHAR2\0" "CUNEIFORM NUMERIC SIGN FIVE SHARU\0" "CUNEIFORM NUMERIC SIGN FIVE SIXTHS DISH\0" "CUNEIFORM NUMERIC SIGN FIVE U\0" "CUNEIFORM NUMERIC SIGN FOUR ASH\0" "CUNEIFORM NUMERIC SIGN FOUR ASH TENU\0" "CUNEIFORM NUMERIC SIGN FOUR BAN2\0" "CUNEIFORM NUMERIC SIGN FOUR BAN2 VARIANT FORM\0" "CUNEIFORM NUMERIC SIGN FOUR BURU\0" "CUNEIFORM NUMERIC SIGN FOUR DISH\0" "CUNEIFORM NUMERIC SIGN FOUR GESH2\0" "CUNEIFORM NUMERIC SIGN FOUR GESHU\0" "CUNEIFORM NUMERIC SIGN FOUR SHAR2\0" "CUNEIFORM NUMERIC SIGN FOUR SHARU\0" "CUNEIFORM NUMERIC SIGN FOUR U\0" "CUNEIFORM NUMERIC SIGN FOUR VARIANT FORM LIMMU\0" "CUNEIFORM NUMERIC SIGN FOUR VARIANT FORM LIMMU A\0" "CUNEIFORM NUMERIC SIGN FOUR VARIANT FORM LIMMU B\0" "CUNEIFORM NUMERIC SIGN FOUR VARIANT FORM LIMMU4\0" "CUNEIFORM NUMERIC SIGN NIGIDAESH\0" "CUNEIFORM NUMERIC SIGN NIGIDAMIN\0" "CUNEIFORM NUMERIC SIGN NINE ASH\0" "CUNEIFORM NUMERIC SIGN NINE DISH\0" "CUNEIFORM NUMERIC SIGN NINE GESH2\0" "CUNEIFORM NUMERIC SIGN NINE SHAR2\0" "CUNEIFORM NUMERIC SIGN NINE U\0" "CUNEIFORM NUMERIC SIGN NINE VARIANT FORM ILIMMU\0" "CUNEIFORM NUMERIC SIGN NINE VARIANT FORM ILIMMU A\0" "CUNEIFORM NUMERIC SIGN NINE VARIANT FORM ILIMMU3\0" "CUNEIFORM NUMERIC SIGN NINE VARIANT FORM ILIMMU4\0" "CUNEIFORM NUMERIC SIGN OLD ASSYRIAN ONE QUARTER\0" "CUNEIFORM NUMERIC SIGN OLD ASSYRIAN ONE SIXTH\0" "CUNEIFORM NUMERIC SIGN ONE BAN2\0" "CUNEIFORM NUMERIC SIGN ONE BURU\0" "CUNEIFORM NUMERIC SIGN ONE EIGHTH ASH\0" "CUNEIFORM NUMERIC SIGN ONE ESHE3\0" "CUNEIFORM NUMERIC SIGN ONE GESH2\0" "CUNEIFORM NUMERIC SIGN ONE GESHU\0" "CUNEIFORM NUMERIC SIGN ONE QUARTER ASH\0" "CUNEIFORM NUMERIC SIGN ONE SHARU\0" "CUNEIFORM NUMERIC SIGN ONE THIRD DISH\0" "CUNEIFORM NUMERIC SIGN ONE THIRD VARIANT FORM A\0" "CUNEIFORM NUMERIC SIGN SEVEN ASH\0" "CUNEIFORM NUMERIC SIGN SEVEN DISH\0" "CUNEIFORM NUMERIC SIGN SEVEN GESH2\0" "CUNEIFORM NUMERIC SIGN SEVEN SHAR2\0" "CUNEIFORM NUMERIC SIGN SEVEN U\0" "CUNEIFORM NUMERIC SIGN SEVEN VARIANT FORM IMIN A\0" "CUNEIFORM NUMERIC SIGN SEVEN VARIANT FORM IMIN B\0" "CUNEIFORM NUMERIC SIGN SEVEN VARIANT FORM IMIN3\0" "CUNEIFORM NUMERIC SIGN SHAR2 TIMES GAL PLUS DISH\0" "CUNEIFORM NUMERIC SIGN SHAR2 TIMES GAL PLUS MIN\0" "CUNEIFORM NUMERIC SIGN SIX ASH\0" "CUNEIFORM NUMERIC SIGN SIX ASH TENU\0" "CUNEIFORM NUMERIC SIGN SIX DISH\0" "CUNEIFORM NUMERIC SIGN SIX GESH2\0" "CUNEIFORM NUMERIC SIGN SIX SHAR2\0" "CUNEIFORM NUMERIC SIGN SIX U\0" "CUNEIFORM NUMERIC SIGN SIX VARIANT FORM ASH9\0" "CUNEIFORM NUMERIC SIGN THREE ASH\0" "CUNEIFORM NUMERIC SIGN THREE ASH TENU\0" "CUNEIFORM NUMERIC SIGN THREE BAN2\0" "CUNEIFORM NUMERIC SIGN THREE BURU\0" "CUNEIFORM NUMERIC SIGN THREE BURU VARIANT FORM\0" "CUNEIFORM NUMERIC SIGN THREE DISH\0" "CUNEIFORM NUMERIC SIGN THREE GESH2\0" "CUNEIFORM NUMERIC SIGN THREE GESHU\0" "CUNEIFORM NUMERIC SIGN THREE SHAR2\0" "CUNEIFORM NUMERIC SIGN THREE SHAR2 VARIANT FORM\0" "CUNEIFORM NUMERIC SIGN THREE SHARU\0" "CUNEIFORM NUMERIC SIGN THREE SHARU VARIANT FORM\0" "CUNEIFORM NUMERIC SIGN THREE VARIANT FORM ESH16\0" "CUNEIFORM NUMERIC SIGN THREE VARIANT FORM ESH21\0" "CUNEIFORM NUMERIC SIGN TWO ASH\0" "CUNEIFORM NUMERIC SIGN TWO ASH TENU\0" "CUNEIFORM NUMERIC SIGN TWO BAN2\0" "CUNEIFORM NUMERIC SIGN TWO BURU\0" "CUNEIFORM NUMERIC SIGN TWO ESHE3\0" "CUNEIFORM NUMERIC SIGN TWO GESH2\0" "CUNEIFORM NUMERIC SIGN TWO GESHU\0" "CUNEIFORM NUMERIC SIGN TWO SHAR2\0" "CUNEIFORM NUMERIC SIGN TWO SHARU\0" "CUNEIFORM NUMERIC SIGN TWO THIRDS DISH\0" "CUNEIFORM NUMERIC SIGN TWO THIRDS VARIANT FORM A\0" "CUNEIFORM PUNCTUATION SIGN DIAGONAL COLON\0" "CUNEIFORM PUNCTUATION SIGN DIAGONAL TRICOLON\0" "CUNEIFORM PUNCTUATION SIGN OLD ASSYRIAN WORD DIVIDER\0" "CUNEIFORM PUNCTUATION SIGN VERTICAL COLON\0" "CUNEIFORM SIGN A\0" "CUNEIFORM SIGN A TIMES A\0" "CUNEIFORM SIGN A TIMES BAD\0" "CUNEIFORM SIGN A TIMES GAN2 TENU\0" "CUNEIFORM SIGN A TIMES HA\0" "CUNEIFORM SIGN A TIMES IGI\0" "CUNEIFORM SIGN A TIMES LAGAR GUNU\0" "CUNEIFORM SIGN A TIMES MUSH\0" "CUNEIFORM SIGN A TIMES SAG\0" "CUNEIFORM SIGN A2\0" "CUNEIFORM SIGN AB\0" "CUNEIFORM SIGN AB GUNU\0" "CUNEIFORM SIGN AB TIMES ASH2\0" "CUNEIFORM SIGN AB TIMES DUN3 GUNU\0" "CUNEIFORM SIGN AB TIMES GAL\0" "CUNEIFORM SIGN AB TIMES GAN2 TENU\0" "CUNEIFORM SIGN AB TIMES HA\0" "CUNEIFORM SIGN AB TIMES IGI GUNU\0" "CUNEIFORM SIGN AB TIMES IMIN\0" "CUNEIFORM SIGN AB TIMES LAGAB\0" "CUNEIFORM SIGN AB TIMES SHESH\0" "CUNEIFORM SIGN AB TIMES U PLUS U PLUS U\0" "CUNEIFORM SIGN AB2\0" "CUNEIFORM SIGN AB2 TIMES BALAG\0" "CUNEIFORM SIGN AB2 TIMES GAN2 TENU\0" "CUNEIFORM SIGN AB2 TIMES ME PLUS EN\0" "CUNEIFORM SIGN AB2 TIMES SHA3\0" "CUNEIFORM SIGN AB2 TIMES TAK4\0" "CUNEIFORM SIGN AD\0" "CUNEIFORM SIGN AK\0" "CUNEIFORM SIGN AK TIMES ERIN2\0" "CUNEIFORM SIGN AK TIMES SHITA PLUS GISH\0" "CUNEIFORM SIGN AL\0" "CUNEIFORM SIGN AL TIMES AL\0" "CUNEIFORM SIGN AL TIMES DIM2\0" "CUNEIFORM SIGN AL TIMES GISH\0" "CUNEIFORM SIGN AL TIMES HA\0" "CUNEIFORM SIGN AL TIMES KAD3\0" "CUNEIFORM SIGN AL TIMES KI\0" "CUNEIFORM SIGN AL TIMES SHE\0" "CUNEIFORM SIGN AL TIMES USH\0" "CUNEIFORM SIGN ALAN\0" "CUNEIFORM SIGN ALEPH\0" "CUNEIFORM SIGN AMAR\0" "CUNEIFORM SIGN AMAR TIMES SHE\0" "CUNEIFORM SIGN AN\0" "CUNEIFORM SIGN AN OVER AN\0" "CUNEIFORM SIGN AN PLUS NAGA OPPOSING AN PLUS NAGA\0" "CUNEIFORM SIGN AN PLUS NAGA SQUARED\0" "CUNEIFORM SIGN AN THREE TIMES\0" "CUNEIFORM SIGN ANSHE\0" "CUNEIFORM SIGN APIN\0" "CUNEIFORM SIGN ARAD\0" "CUNEIFORM SIGN ARAD TIMES KUR\0" "CUNEIFORM SIGN ARKAB\0" "CUNEIFORM SIGN ASAL2\0" "CUNEIFORM SIGN ASH\0" "CUNEIFORM SIGN ASH KABA TENU\0" "CUNEIFORM SIGN ASH OVER ASH OVER ASH\0" "CUNEIFORM SIGN ASH OVER ASH OVER ASH CROSSING ASH OVER ASH OVER ASH\0" "CUNEIFORM SIGN ASH OVER ASH TUG2 OVER TUG2 TUG2 OVER TUG2 PAP\0" "CUNEIFORM SIGN ASH ZIDA TENU\0" "CUNEIFORM SIGN ASH2\0" "CUNEIFORM SIGN ASHGAB\0" "CUNEIFORM SIGN BA\0" "CUNEIFORM SIGN BAD\0" "CUNEIFORM SIGN BAG3\0" "CUNEIFORM SIGN BAHAR2\0" "CUNEIFORM SIGN BAL\0" "CUNEIFORM SIGN BAL OVER BAL\0" "CUNEIFORM SIGN BALAG\0" "CUNEIFORM SIGN BAR\0" "CUNEIFORM SIGN BARA2\0" "CUNEIFORM SIGN BI\0" "CUNEIFORM SIGN BI TIMES A\0" "CUNEIFORM SIGN BI TIMES GAR\0" "CUNEIFORM SIGN BI TIMES IGI GUNU\0" "CUNEIFORM SIGN BU\0" "CUNEIFORM SIGN BU CROSSING BU\0" "CUNEIFORM SIGN BU OVER BU AB\0" "CUNEIFORM SIGN BU OVER BU UN\0" "CUNEIFORM SIGN BULUG\0" "CUNEIFORM SIGN BULUG OVER BULUG\0" "CUNEIFORM SIGN BUR\0" "CUNEIFORM SIGN BUR2\0" "CUNEIFORM SIGN DA\0" "CUNEIFORM SIGN DAG\0" "CUNEIFORM SIGN DAG KISIM5 TIMES A PLUS MASH\0" "CUNEIFORM SIGN DAG KISIM5 TIMES AMAR\0" "CUNEIFORM SIGN DAG KISIM5 TIMES BALAG\0" "CUNEIFORM SIGN DAG KISIM5 TIMES BI\0" "CUNEIFORM SIGN DAG KISIM5 TIMES GA\0" "CUNEIFORM SIGN DAG KISIM5 TIMES GA PLUS MASH\0" "CUNEIFORM SIGN DAG KISIM5 TIMES GI\0" "CUNEIFORM SIGN DAG KISIM5 TIMES GIR2\0" "CUNEIFORM SIGN DAG KISIM5 TIMES GUD\0" "CUNEIFORM SIGN DAG KISIM5 TIMES HA\0" "CUNEIFORM SIGN DAG KISIM5 TIMES IR\0" "CUNEIFORM SIGN DAG KISIM5 TIMES IR PLUS LU\0" "CUNEIFORM SIGN DAG KISIM5 TIMES KAK\0" "CUNEIFORM SIGN DAG KISIM5 TIMES LA\0" "CUNEIFORM SIGN DAG KISIM5 TIMES LU\0" "CUNEIFORM SIGN DAG KISIM5 TIMES LU PLUS MASH2\0" "CUNEIFORM SIGN DAG KISIM5 TIMES LUM\0" "CUNEIFORM SIGN DAG KISIM5 TIMES NE\0" "CUNEIFORM SIGN DAG KISIM5 TIMES PAP PLUS PAP\0" "CUNEIFORM SIGN DAG KISIM5 TIMES SI\0" "CUNEIFORM SIGN DAG KISIM5 TIMES TAK4\0" "CUNEIFORM SIGN DAG KISIM5 TIMES U2 PLUS GIR2\0" "CUNEIFORM SIGN DAG KISIM5 TIMES USH\0" "CUNEIFORM SIGN DAM\0" "CUNEIFORM SIGN DAR\0" "CUNEIFORM SIGN DARA3\0" "CUNEIFORM SIGN DARA4\0" "CUNEIFORM SIGN DI\0" "CUNEIFORM SIGN DIB\0" "CUNEIFORM SIGN DIM\0" "CUNEIFORM SIGN DIM TIMES SHE\0" "CUNEIFORM SIGN DIM2\0" "CUNEIFORM SIGN DIN\0" "CUNEIFORM SIGN DIN KASKAL U GUNU DISH\0" "CUNEIFORM SIGN DISH\0" "CUNEIFORM SIGN DU\0" "CUNEIFORM SIGN DU GUNU\0" "CUNEIFORM SIGN DU OVER DU\0" "CUNEIFORM SIGN DU SHESHIG\0" "CUNEIFORM SIGN DUB\0" "CUNEIFORM SIGN DUB TIMES ESH2\0" "CUNEIFORM SIGN DUB2\0" "CUNEIFORM SIGN DUG\0" "CUNEIFORM SIGN DUGUD\0" "CUNEIFORM SIGN DUH\0" "CUNEIFORM SIGN DUN\0" "CUNEIFORM SIGN DUN3\0" "CUNEIFORM SIGN DUN3 GUNU\0" "CUNEIFORM SIGN DUN3 GUNU GUNU\0" "CUNEIFORM SIGN DUN4\0" "CUNEIFORM SIGN DUR2\0" "CUNEIFORM SIGN E\0" "CUNEIFORM SIGN E OVER E NUN OVER NUN\0" "CUNEIFORM SIGN E TIMES PAP\0" "CUNEIFORM SIGN E2\0" "CUNEIFORM SIGN E2 TIMES A PLUS HA PLUS DA\0" "CUNEIFORM SIGN E2 TIMES GAR\0" "CUNEIFORM SIGN E2 TIMES MI\0" "CUNEIFORM SIGN E2 TIMES SAL\0" "CUNEIFORM SIGN E2 TIMES SHE\0" "CUNEIFORM SIGN E2 TIMES U\0" "CUNEIFORM SIGN EDIN\0" "CUNEIFORM SIGN EGIR\0" "CUNEIFORM SIGN EL\0" "CUNEIFORM SIGN EN\0" "CUNEIFORM SIGN EN CROSSING EN\0" "CUNEIFORM SIGN EN OPPOSING EN\0" "CUNEIFORM SIGN EN SQUARED\0" "CUNEIFORM SIGN EN TIMES GAN2\0" "CUNEIFORM SIGN EN TIMES GAN2 TENU\0" "CUNEIFORM SIGN EN TIMES ME\0" "CUNEIFORM SIGN EREN\0" "CUNEIFORM SIGN ERIN2\0" "CUNEIFORM SIGN ESH2\0" "CUNEIFORM SIGN EZEN\0" "CUNEIFORM SIGN EZEN TIMES A\0" "CUNEIFORM SIGN EZEN TIMES A PLUS LAL\0" "CUNEIFORM SIGN EZEN TIMES A PLUS LAL TIMES LAL\0" "CUNEIFORM SIGN EZEN TIMES AN\0" "CUNEIFORM SIGN EZEN TIMES BAD\0" "CUNEIFORM SIGN EZEN TIMES DUN3 GUNU\0" "CUNEIFORM SIGN EZEN TIMES DUN3 GUNU GUNU\0" "CUNEIFORM SIGN EZEN TIMES HA\0" "CUNEIFORM SIGN EZEN TIMES HA GUNU\0" "CUNEIFORM SIGN EZEN TIMES IGI GUNU\0" "CUNEIFORM SIGN EZEN TIMES KASKAL\0" "CUNEIFORM SIGN EZEN TIMES KASKAL SQUARED\0" "CUNEIFORM SIGN EZEN TIMES KU3\0" "CUNEIFORM SIGN EZEN TIMES LA\0" "CUNEIFORM SIGN EZEN TIMES LAL TIMES LAL\0" "CUNEIFORM SIGN EZEN TIMES LI\0" "CUNEIFORM SIGN EZEN TIMES LU\0" "CUNEIFORM SIGN EZEN TIMES U2\0" "CUNEIFORM SIGN EZEN TIMES UD\0" "CUNEIFORM SIGN GA\0" "CUNEIFORM SIGN GA GUNU\0" "CUNEIFORM SIGN GA2\0" "CUNEIFORM SIGN GA2 OVER GA2\0" "CUNEIFORM SIGN GA2 TIMES A PLUS DA PLUS HA\0" "CUNEIFORM SIGN GA2 TIMES A PLUS HA\0" "CUNEIFORM SIGN GA2 TIMES A PLUS IGI\0" "CUNEIFORM SIGN GA2 TIMES AB2 TENU PLUS TAB\0" "CUNEIFORM SIGN GA2 TIMES AN\0" "CUNEIFORM SIGN GA2 TIMES ASH\0" "CUNEIFORM SIGN GA2 TIMES ASH2 PLUS GAL\0" "CUNEIFORM SIGN GA2 TIMES BAD\0" "CUNEIFORM SIGN GA2 TIMES BAR PLUS RA\0" "CUNEIFORM SIGN GA2 TIMES BUR\0" "CUNEIFORM SIGN GA2 TIMES BUR PLUS RA\0" "CUNEIFORM SIGN GA2 TIMES DA\0" "CUNEIFORM SIGN GA2 TIMES DI\0" "CUNEIFORM SIGN GA2 TIMES DIM TIMES SHE\0" "CUNEIFORM SIGN GA2 TIMES DUB\0" "CUNEIFORM SIGN GA2 TIMES EL\0" "CUNEIFORM SIGN GA2 TIMES EL PLUS LA\0" "CUNEIFORM SIGN GA2 TIMES EN\0" "CUNEIFORM SIGN GA2 TIMES EN TIMES GAN2 TENU\0" "CUNEIFORM SIGN GA2 TIMES GAN2 TENU\0" "CUNEIFORM SIGN GA2 TIMES GAR\0" "CUNEIFORM SIGN GA2 TIMES GI\0" "CUNEIFORM SIGN GA2 TIMES GI4\0" "CUNEIFORM SIGN GA2 TIMES GI4 PLUS A\0" "CUNEIFORM SIGN GA2 TIMES GIR2 PLUS SU\0" "CUNEIFORM SIGN GA2 TIMES HA PLUS LU PLUS ESH2\0" "CUNEIFORM SIGN GA2 TIMES HAL\0" "CUNEIFORM SIGN GA2 TIMES HAL PLUS LA\0" "CUNEIFORM SIGN GA2 TIMES HI PLUS LI\0" "CUNEIFORM SIGN GA2 TIMES HUB2\0" "CUNEIFORM SIGN GA2 TIMES IGI GUNU\0" "CUNEIFORM SIGN GA2 TIMES ISH PLUS HU PLUS ASH\0" "CUNEIFORM SIGN GA2 TIMES KAK\0" "CUNEIFORM SIGN GA2 TIMES KASKAL\0" "CUNEIFORM SIGN GA2 TIMES KID\0" "CUNEIFORM SIGN GA2 TIMES KID PLUS LAL\0" "CUNEIFORM SIGN GA2 TIMES KU3 PLUS AN\0" "CUNEIFORM SIGN GA2 TIMES LA\0" "CUNEIFORM SIGN GA2 TIMES ME PLUS EN\0" "CUNEIFORM SIGN GA2 TIMES MI\0" "CUNEIFORM SIGN GA2 TIMES NUN\0" "CUNEIFORM SIGN GA2 TIMES NUN OVER NUN\0" "CUNEIFORM SIGN GA2 TIMES PA\0" "CUNEIFORM SIGN GA2 TIMES SAL\0" "CUNEIFORM SIGN GA2 TIMES SAR\0" "CUNEIFORM SIGN GA2 TIMES SHE\0" "CUNEIFORM SIGN GA2 TIMES SHE PLUS TUR\0" "CUNEIFORM SIGN GA2 TIMES SHID\0" "CUNEIFORM SIGN GA2 TIMES SUM\0" "CUNEIFORM SIGN GA2 TIMES TAK4\0" "CUNEIFORM SIGN GA2 TIMES U\0" "CUNEIFORM SIGN GA2 TIMES UD\0" "CUNEIFORM SIGN GA2 TIMES UD PLUS DU\0" "CUNEIFORM SIGN GABA\0" "CUNEIFORM SIGN GABA CROSSING GABA\0" "CUNEIFORM SIGN GAD\0" "CUNEIFORM SIGN GAD OVER GAD GAR OVER GAR\0" "CUNEIFORM SIGN GAL\0" "CUNEIFORM SIGN GAL GAD OVER GAD GAR OVER GAR\0" "CUNEIFORM SIGN GALAM\0" "CUNEIFORM SIGN GAM\0" "CUNEIFORM SIGN GAN\0" "CUNEIFORM SIGN GAN2\0" "CUNEIFORM SIGN GAN2 CROSSING GAN2\0" "CUNEIFORM SIGN GAN2 OVER GAN2\0" "CUNEIFORM SIGN GAN2 TENU\0" "CUNEIFORM SIGN GAR\0" "CUNEIFORM SIGN GAR3\0" "CUNEIFORM SIGN GASHAN\0" "CUNEIFORM SIGN GESHTIN\0" "CUNEIFORM SIGN GESHTIN TIMES KUR\0" "CUNEIFORM SIGN GI\0" "CUNEIFORM SIGN GI CROSSING GI\0" "CUNEIFORM SIGN GI TIMES E\0" "CUNEIFORM SIGN GI TIMES U\0" "CUNEIFORM SIGN GI4\0" "CUNEIFORM SIGN GI4 CROSSING GI4\0" "CUNEIFORM SIGN GI4 OVER GI4\0" "CUNEIFORM SIGN GIDIM\0" "CUNEIFORM SIGN GIR2\0" "CUNEIFORM SIGN GIR2 GUNU\0" "CUNEIFORM SIGN GIR3\0" "CUNEIFORM SIGN GIR3 TIMES A PLUS IGI\0" "CUNEIFORM SIGN GIR3 TIMES GAN2 TENU\0" "CUNEIFORM SIGN GIR3 TIMES IGI\0" "CUNEIFORM SIGN GIR3 TIMES LU PLUS IGI\0" "CUNEIFORM SIGN GIR3 TIMES PA\0" "CUNEIFORM SIGN GISAL\0" "CUNEIFORM SIGN GISH\0" "CUNEIFORM SIGN GISH CROSSING GISH\0" "CUNEIFORM SIGN GISH TENU\0" "CUNEIFORM SIGN GISH TIMES BAD\0" "CUNEIFORM SIGN GISH TIMES TAK4\0" "CUNEIFORM SIGN GU\0" "CUNEIFORM SIGN GU CROSSING GU\0" "CUNEIFORM SIGN GU2\0" "CUNEIFORM SIGN GU2 GUNU\0" "CUNEIFORM SIGN GU2 TIMES KAK\0" "CUNEIFORM SIGN GU2 TIMES KAK TIMES IGI GUNU\0" "CUNEIFORM SIGN GU2 TIMES NUN\0" "CUNEIFORM SIGN GU2 TIMES SAL PLUS TUG2\0" "CUNEIFORM SIGN GUD\0" "CUNEIFORM SIGN GUD OVER GUD LUGAL\0" "CUNEIFORM SIGN GUD TIMES A PLUS KUR\0" "CUNEIFORM SIGN GUD TIMES KUR\0" "CUNEIFORM SIGN GUL\0" "CUNEIFORM SIGN GUM\0" "CUNEIFORM SIGN GUM TIMES SHE\0" "CUNEIFORM SIGN GUR\0" "CUNEIFORM SIGN GUR7\0" "CUNEIFORM SIGN GURUN\0" "CUNEIFORM SIGN GURUSH\0" "CUNEIFORM SIGN HA\0" "CUNEIFORM SIGN HA GUNU\0" "CUNEIFORM SIGN HA TENU\0" "CUNEIFORM SIGN HAL\0" "CUNEIFORM SIGN HI\0" "CUNEIFORM SIGN HI TIMES ASH\0" "CUNEIFORM SIGN HI TIMES ASH2\0" "CUNEIFORM SIGN HI TIMES BAD\0" "CUNEIFORM SIGN HI TIMES DISH\0" "CUNEIFORM SIGN HI TIMES GAD\0" "CUNEIFORM SIGN HI TIMES KIN\0" "CUNEIFORM SIGN HI TIMES NUN\0" "CUNEIFORM SIGN HI TIMES SHE\0" "CUNEIFORM SIGN HI TIMES U\0" "CUNEIFORM SIGN HU\0" "CUNEIFORM SIGN HUB2\0" "CUNEIFORM SIGN HUB2 TIMES AN\0" "CUNEIFORM SIGN HUB2 TIMES HAL\0" "CUNEIFORM SIGN HUB2 TIMES KASKAL\0" "CUNEIFORM SIGN HUB2 TIMES LISH\0" "CUNEIFORM SIGN HUB2 TIMES UD\0" "CUNEIFORM SIGN HUL2\0" "CUNEIFORM SIGN I\0" "CUNEIFORM SIGN I A\0" "CUNEIFORM SIGN IB\0" "CUNEIFORM SIGN IDIM\0" "CUNEIFORM SIGN IDIM OVER IDIM BUR\0" "CUNEIFORM SIGN IDIM OVER IDIM SQUARED\0" "CUNEIFORM SIGN IG\0" "CUNEIFORM SIGN IGI\0" "CUNEIFORM SIGN IGI DIB\0" "CUNEIFORM SIGN IGI GUNU\0" "CUNEIFORM SIGN IGI OVER IGI SHIR OVER SHIR UD OVER UD\0" "CUNEIFORM SIGN IGI RI\0" "CUNEIFORM SIGN IL\0" "CUNEIFORM SIGN IL TIMES GAN2 TENU\0" "CUNEIFORM SIGN IL2\0" "CUNEIFORM SIGN IM\0" "CUNEIFORM SIGN IM CROSSING IM\0" "CUNEIFORM SIGN IM OPPOSING IM\0" "CUNEIFORM SIGN IM SQUARED\0" "CUNEIFORM SIGN IM TIMES TAK4\0" "CUNEIFORM SIGN IMIN\0" "CUNEIFORM SIGN IN\0" "CUNEIFORM SIGN IR\0" "CUNEIFORM SIGN ISH\0" "CUNEIFORM SIGN KA\0" "CUNEIFORM SIGN KA TIMES A\0" "CUNEIFORM SIGN KA TIMES AD\0" "CUNEIFORM SIGN KA TIMES AD PLUS KU3\0" "CUNEIFORM SIGN KA TIMES ASH2\0" "CUNEIFORM SIGN KA TIMES BAD\0" "CUNEIFORM SIGN KA TIMES BALAG\0" "CUNEIFORM SIGN KA TIMES BAR\0" "CUNEIFORM SIGN KA TIMES BI\0" "CUNEIFORM SIGN KA TIMES ERIN2\0" "CUNEIFORM SIGN KA TIMES ESH2\0" "CUNEIFORM SIGN KA TIMES GA\0" "CUNEIFORM SIGN KA TIMES GAL\0" "CUNEIFORM SIGN KA TIMES GAN2 TENU\0" "CUNEIFORM SIGN KA TIMES GAR\0" "CUNEIFORM SIGN KA TIMES GAR PLUS SHA3 PLUS A\0" "CUNEIFORM SIGN KA TIMES GI\0" "CUNEIFORM SIGN KA TIMES GIR2\0" "CUNEIFORM SIGN KA TIMES GISH CROSSING GISH\0" "CUNEIFORM SIGN KA TIMES GISH PLUS SAR\0" "CUNEIFORM SIGN KA TIMES GU\0" "CUNEIFORM SIGN KA TIMES GUR7\0" "CUNEIFORM SIGN KA TIMES IGI\0" "CUNEIFORM SIGN KA TIMES IM\0" "CUNEIFORM SIGN KA TIMES KAK\0" "CUNEIFORM SIGN KA TIMES KI\0" "CUNEIFORM SIGN KA TIMES KID\0" "CUNEIFORM SIGN KA TIMES LI\0" "CUNEIFORM SIGN KA TIMES LU\0" "CUNEIFORM SIGN KA TIMES ME\0" "CUNEIFORM SIGN KA TIMES ME PLUS DU\0" "CUNEIFORM SIGN KA TIMES ME PLUS GI\0" "CUNEIFORM SIGN KA TIMES ME PLUS TE\0" "CUNEIFORM SIGN KA TIMES MI\0" "CUNEIFORM SIGN KA TIMES MI PLUS NUNUZ\0" "CUNEIFORM SIGN KA TIMES NE\0" "CUNEIFORM SIGN KA TIMES NUN\0" "CUNEIFORM SIGN KA TIMES PI\0" "CUNEIFORM SIGN KA TIMES RU\0" "CUNEIFORM SIGN KA TIMES SA\0" "CUNEIFORM SIGN KA TIMES SAR\0" "CUNEIFORM SIGN KA TIMES SHA\0" "CUNEIFORM SIGN KA TIMES SHE\0" "CUNEIFORM SIGN KA TIMES SHID\0" "CUNEIFORM SIGN KA TIMES SHU\0" "CUNEIFORM SIGN KA TIMES SIG\0" "CUNEIFORM SIGN KA TIMES SUHUR\0" "CUNEIFORM SIGN KA TIMES TAR\0" "CUNEIFORM SIGN KA TIMES U\0" "CUNEIFORM SIGN KA TIMES U2\0" "CUNEIFORM SIGN KA TIMES UD\0" "CUNEIFORM SIGN KA TIMES UMUM TIMES PA\0" "CUNEIFORM SIGN KA TIMES USH\0" "CUNEIFORM SIGN KA TIMES ZI\0" "CUNEIFORM SIGN KA2\0" "CUNEIFORM SIGN KA2 CROSSING KA2\0" "CUNEIFORM SIGN KAB\0" "CUNEIFORM SIGN KAD2\0" "CUNEIFORM SIGN KAD3\0" "CUNEIFORM SIGN KAD4\0" "CUNEIFORM SIGN KAD5\0" "CUNEIFORM SIGN KAD5 OVER KAD5\0" "CUNEIFORM SIGN KAK\0" "CUNEIFORM SIGN KAK TIMES IGI GUNU\0" "CUNEIFORM SIGN KAL\0" "CUNEIFORM SIGN KAL CROSSING KAL\0" "CUNEIFORM SIGN KAL TIMES BAD\0" "CUNEIFORM SIGN KAM2\0" "CUNEIFORM SIGN KAM4\0" "CUNEIFORM SIGN KASKAL\0" "CUNEIFORM SIGN KASKAL LAGAB TIMES U OVER LAGAB TIMES U\0" "CUNEIFORM SIGN KASKAL OVER KASKAL LAGAB TIMES U OVER LAGAB TIMES U\0" "CUNEIFORM SIGN KESH2\0" "CUNEIFORM SIGN KI\0" "CUNEIFORM SIGN KI TIMES BAD\0" "CUNEIFORM SIGN KI TIMES U\0" "CUNEIFORM SIGN KI TIMES UD\0" "CUNEIFORM SIGN KID\0" "CUNEIFORM SIGN KIN\0" "CUNEIFORM SIGN KISAL\0" "CUNEIFORM SIGN KISH\0" "CUNEIFORM SIGN KISIM5\0" "CUNEIFORM SIGN KISIM5 OVER KISIM5\0" "CUNEIFORM SIGN KU\0" "CUNEIFORM SIGN KU OVER HI TIMES ASH2 KU OVER HI TIMES ASH2\0" "CUNEIFORM SIGN KU3\0" "CUNEIFORM SIGN KU4\0" "CUNEIFORM SIGN KU4 VARIANT FORM\0" "CUNEIFORM SIGN KU7\0" "CUNEIFORM SIGN KUL\0" "CUNEIFORM SIGN KUL GUNU\0" "CUNEIFORM SIGN KUN\0" "CUNEIFORM SIGN KUR\0" "CUNEIFORM SIGN KUR OPPOSING KUR\0" "CUNEIFORM SIGN KUSHU2\0" "CUNEIFORM SIGN KWU318\0" "CUNEIFORM SIGN LA\0" "CUNEIFORM SIGN LAGAB\0" "CUNEIFORM SIGN LAGAB SQUARED\0" "CUNEIFORM SIGN LAGAB TIMES A\0" "CUNEIFORM SIGN LAGAB TIMES A PLUS DA PLUS HA\0" "CUNEIFORM SIGN LAGAB TIMES A PLUS GAR\0" "CUNEIFORM SIGN LAGAB TIMES A PLUS LAL\0" "CUNEIFORM SIGN LAGAB TIMES AL\0" "CUNEIFORM SIGN LAGAB TIMES AN\0" "CUNEIFORM SIGN LAGAB TIMES ASH ZIDA TENU\0" "CUNEIFORM SIGN LAGAB TIMES BAD\0" "CUNEIFORM SIGN LAGAB TIMES BI\0" "CUNEIFORM SIGN LAGAB TIMES DAR\0" "CUNEIFORM SIGN LAGAB TIMES EN\0" "CUNEIFORM SIGN LAGAB TIMES GA\0" "CUNEIFORM SIGN LAGAB TIMES GAR\0" "CUNEIFORM SIGN LAGAB TIMES GUD\0" "CUNEIFORM SIGN LAGAB TIMES GUD PLUS GUD\0" "CUNEIFORM SIGN LAGAB TIMES HA\0" "CUNEIFORM SIGN LAGAB TIMES HAL\0" "CUNEIFORM SIGN LAGAB TIMES HI TIMES NUN\0" "CUNEIFORM SIGN LAGAB TIMES IGI GUNU\0" "CUNEIFORM SIGN LAGAB TIMES IM\0" "CUNEIFORM SIGN LAGAB TIMES IM PLUS HA\0" "CUNEIFORM SIGN LAGAB TIMES IM PLUS LU\0" "CUNEIFORM SIGN LAGAB TIMES KI\0" "CUNEIFORM SIGN LAGAB TIMES KIN\0" "CUNEIFORM SIGN LAGAB TIMES KU3\0" "CUNEIFORM SIGN LAGAB TIMES KUL\0" "CUNEIFORM SIGN LAGAB TIMES KUL PLUS HI PLUS A\0" "CUNEIFORM SIGN LAGAB TIMES LAGAB\0" "CUNEIFORM SIGN LAGAB TIMES LISH\0" "CUNEIFORM SIGN LAGAB TIMES LU\0" "CUNEIFORM SIGN LAGAB TIMES LUL\0" "CUNEIFORM SIGN LAGAB TIMES ME\0" "CUNEIFORM SIGN LAGAB TIMES ME PLUS EN\0" "CUNEIFORM SIGN LAGAB TIMES MUSH\0" "CUNEIFORM SIGN LAGAB TIMES NE\0" "CUNEIFORM SIGN LAGAB TIMES SHE PLUS SUM\0" "CUNEIFORM SIGN LAGAB TIMES SHITA PLUS GISH PLUS ERIN2\0" "CUNEIFORM SIGN LAGAB TIMES SHITA PLUS GISH TENU\0" "CUNEIFORM SIGN LAGAB TIMES SHU2\0" "CUNEIFORM SIGN LAGAB TIMES SHU2 PLUS SHU2\0" "CUNEIFORM SIGN LAGAB TIMES SUM\0" "CUNEIFORM SIGN LAGAB TIMES TAG\0" "CUNEIFORM SIGN LAGAB TIMES TAK4\0" "CUNEIFORM SIGN LAGAB TIMES TE PLUS A PLUS SU PLUS NA\0" "CUNEIFORM SIGN LAGAB TIMES U\0" "CUNEIFORM SIGN LAGAB TIMES U PLUS A\0" "CUNEIFORM SIGN LAGAB TIMES U PLUS U PLUS U\0" "CUNEIFORM SIGN LAGAB TIMES U2 PLUS ASH\0" "CUNEIFORM SIGN LAGAB TIMES UD\0" "CUNEIFORM SIGN LAGAB TIMES USH\0" "CUNEIFORM SIGN LAGAR\0" "CUNEIFORM SIGN LAGAR GUNU\0" "CUNEIFORM SIGN LAGAR GUNU OVER LAGAR GUNU SHE\0" "CUNEIFORM SIGN LAGAR TIMES SHE\0" "CUNEIFORM SIGN LAGAR TIMES SHE PLUS SUM\0" "CUNEIFORM SIGN LAHSHU\0" "CUNEIFORM SIGN LAL\0" "CUNEIFORM SIGN LAL TIMES LAL\0" "CUNEIFORM SIGN LAM\0" "CUNEIFORM SIGN LAM TIMES KUR\0" "CUNEIFORM SIGN LAM TIMES KUR PLUS RU\0" "CUNEIFORM SIGN LI\0" "CUNEIFORM SIGN LIL\0" "CUNEIFORM SIGN LIMMU2\0" "CUNEIFORM SIGN LISH\0" "CUNEIFORM SIGN LU\0" "CUNEIFORM SIGN LU TIMES BAD\0" "CUNEIFORM SIGN LU2\0" "CUNEIFORM SIGN LU2 CROSSING LU2\0" "CUNEIFORM SIGN LU2 OPPOSING LU2\0" "CUNEIFORM SIGN LU2 SHESHIG\0" "CUNEIFORM SIGN LU2 SQUARED\0" "CUNEIFORM SIGN LU2 TENU\0" "CUNEIFORM SIGN LU2 TIMES AL\0" "CUNEIFORM SIGN LU2 TIMES BAD\0" "CUNEIFORM SIGN LU2 TIMES ESH2\0" "CUNEIFORM SIGN LU2 TIMES ESH2 TENU\0" "CUNEIFORM SIGN LU2 TIMES GAN2 TENU\0" "CUNEIFORM SIGN LU2 TIMES HI TIMES BAD\0" "CUNEIFORM SIGN LU2 TIMES IM\0" "CUNEIFORM SIGN LU2 TIMES KAD2\0" "CUNEIFORM SIGN LU2 TIMES KAD3\0" "CUNEIFORM SIGN LU2 TIMES KAD3 PLUS ASH\0" "CUNEIFORM SIGN LU2 TIMES KI\0" "CUNEIFORM SIGN LU2 TIMES LA PLUS ASH\0" "CUNEIFORM SIGN LU2 TIMES LAGAB\0" "CUNEIFORM SIGN LU2 TIMES ME PLUS EN\0" "CUNEIFORM SIGN LU2 TIMES NE\0" "CUNEIFORM SIGN LU2 TIMES NU\0" "CUNEIFORM SIGN LU2 TIMES SI PLUS ASH\0" "CUNEIFORM SIGN LU2 TIMES SIK2 PLUS BU\0" "CUNEIFORM SIGN LU2 TIMES TUG2\0" "CUNEIFORM SIGN LU3\0" "CUNEIFORM SIGN LUGAL\0" "CUNEIFORM SIGN LUGAL OPPOSING LUGAL\0" "CUNEIFORM SIGN LUGAL OVER LUGAL\0" "CUNEIFORM SIGN LUGAL SHESHIG\0" "CUNEIFORM SIGN LUH\0" "CUNEIFORM SIGN LUL\0" "CUNEIFORM SIGN LUM\0" "CUNEIFORM SIGN LUM OVER LUM\0" "CUNEIFORM SIGN LUM OVER LUM GAR OVER GAR\0" "CUNEIFORM SIGN MA\0" "CUNEIFORM SIGN MA GUNU\0" "CUNEIFORM SIGN MA TIMES TAK4\0" "CUNEIFORM SIGN MA2\0" "CUNEIFORM SIGN MAH\0" "CUNEIFORM SIGN MAR\0" "CUNEIFORM SIGN MASH\0" "CUNEIFORM SIGN MASH2\0" "CUNEIFORM SIGN ME\0" "CUNEIFORM SIGN MES\0" "CUNEIFORM SIGN MI\0" "CUNEIFORM SIGN MIN\0" "CUNEIFORM SIGN MU\0" "CUNEIFORM SIGN MU OVER MU\0" "CUNEIFORM SIGN MUG\0" "CUNEIFORM SIGN MUG GUNU\0" "CUNEIFORM SIGN MUNSUB\0" "CUNEIFORM SIGN MURGU2\0" "CUNEIFORM SIGN MUSH\0" "CUNEIFORM SIGN MUSH CROSSING MUSH\0" "CUNEIFORM SIGN MUSH OVER MUSH\0" "CUNEIFORM SIGN MUSH OVER MUSH TIMES A PLUS NA\0" "CUNEIFORM SIGN MUSH TIMES A\0" "CUNEIFORM SIGN MUSH TIMES KUR\0" "CUNEIFORM SIGN MUSH TIMES ZA\0" "CUNEIFORM SIGN MUSH3\0" "CUNEIFORM SIGN MUSH3 GUNU\0" "CUNEIFORM SIGN MUSH3 TIMES A\0" "CUNEIFORM SIGN MUSH3 TIMES A PLUS DI\0" "CUNEIFORM SIGN MUSH3 TIMES DI\0" "CUNEIFORM SIGN NA\0" "CUNEIFORM SIGN NA2\0" "CUNEIFORM SIGN NAGA\0" "CUNEIFORM SIGN NAGA INVERTED\0" "CUNEIFORM SIGN NAGA OPPOSING NAGA\0" "CUNEIFORM SIGN NAGA TIMES SHU TENU\0" "CUNEIFORM SIGN NAGAR\0" "CUNEIFORM SIGN NAM\0" "CUNEIFORM SIGN NAM NUTILLU\0" "CUNEIFORM SIGN NAM2\0" "CUNEIFORM SIGN NE\0" "CUNEIFORM SIGN NE SHESHIG\0" "CUNEIFORM SIGN NE TIMES A\0" "CUNEIFORM SIGN NE TIMES UD\0" "CUNEIFORM SIGN NI\0" "CUNEIFORM SIGN NI TIMES E\0" "CUNEIFORM SIGN NI2\0" "CUNEIFORM SIGN NIM\0" "CUNEIFORM SIGN NIM TIMES GAN2 TENU\0" "CUNEIFORM SIGN NIM TIMES GAR PLUS GAN2 TENU\0" "CUNEIFORM SIGN NINDA2\0" "CUNEIFORM SIGN NINDA2 TIMES AN\0" "CUNEIFORM SIGN NINDA2 TIMES ASH\0" "CUNEIFORM SIGN NINDA2 TIMES ASH PLUS ASH\0" "CUNEIFORM SIGN NINDA2 TIMES GUD\0" "CUNEIFORM SIGN NINDA2 TIMES ME PLUS GAN2 TENU\0" "CUNEIFORM SIGN NINDA2 TIMES NE\0" "CUNEIFORM SIGN NINDA2 TIMES NUN\0" "CUNEIFORM SIGN NINDA2 TIMES SHE\0" "CUNEIFORM SIGN NINDA2 TIMES SHE PLUS A AN\0" "CUNEIFORM SIGN NINDA2 TIMES SHE PLUS ASH\0" "CUNEIFORM SIGN NINDA2 TIMES SHE PLUS ASH PLUS ASH\0" "CUNEIFORM SIGN NINDA2 TIMES U2 PLUS ASH\0" "CUNEIFORM SIGN NINDA2 TIMES USH\0" "CUNEIFORM SIGN NISAG\0" "CUNEIFORM SIGN NU\0" "CUNEIFORM SIGN NU11\0" "CUNEIFORM SIGN NUN\0" "CUNEIFORM SIGN NUN CROSSING NUN\0" "CUNEIFORM SIGN NUN CROSSING NUN LAGAR OVER LAGAR\0" "CUNEIFORM SIGN NUN LAGAR TIMES GAR\0" "CUNEIFORM SIGN NUN LAGAR TIMES MASH\0" "CUNEIFORM SIGN NUN LAGAR TIMES SAL\0" "CUNEIFORM SIGN NUN LAGAR TIMES SAL OVER NUN LAGAR TIMES SAL\0" "CUNEIFORM SIGN NUN LAGAR TIMES USH\0" "CUNEIFORM SIGN NUN OVER NUN\0" "CUNEIFORM SIGN NUN TENU\0" "CUNEIFORM SIGN NUNUZ\0" "CUNEIFORM SIGN NUNUZ AB2 TIMES ASHGAB\0" "CUNEIFORM SIGN NUNUZ AB2 TIMES BI\0" "CUNEIFORM SIGN NUNUZ AB2 TIMES DUG\0" "CUNEIFORM SIGN NUNUZ AB2 TIMES GUD\0" "CUNEIFORM SIGN NUNUZ AB2 TIMES IGI GUNU\0" "CUNEIFORM SIGN NUNUZ AB2 TIMES KAD3\0" "CUNEIFORM SIGN NUNUZ AB2 TIMES LA\0" "CUNEIFORM SIGN NUNUZ AB2 TIMES NE\0" "CUNEIFORM SIGN NUNUZ AB2 TIMES SILA3\0" "CUNEIFORM SIGN NUNUZ AB2 TIMES U2\0" "CUNEIFORM SIGN NUNUZ KISIM5 TIMES BI\0" "CUNEIFORM SIGN NUNUZ KISIM5 TIMES BI U\0" "CUNEIFORM SIGN PA\0" "CUNEIFORM SIGN PAD\0" "CUNEIFORM SIGN PAN\0" "CUNEIFORM SIGN PAP\0" "CUNEIFORM SIGN PESH2\0" "CUNEIFORM SIGN PI\0" "CUNEIFORM SIGN PI CROSSING PI\0" "CUNEIFORM SIGN PI TIMES A\0" "CUNEIFORM SIGN PI TIMES AB\0" "CUNEIFORM SIGN PI TIMES BI\0" "CUNEIFORM SIGN PI TIMES BU\0" "CUNEIFORM SIGN PI TIMES E\0" "CUNEIFORM SIGN PI TIMES I\0" "CUNEIFORM SIGN PI TIMES IB\0" "CUNEIFORM SIGN PI TIMES U\0" "CUNEIFORM SIGN PI TIMES U2\0" "CUNEIFORM SIGN PIRIG\0" "CUNEIFORM SIGN PIRIG OPPOSING PIRIG\0" "CUNEIFORM SIGN PIRIG TIMES KAL\0" "CUNEIFORM SIGN PIRIG TIMES UD\0" "CUNEIFORM SIGN PIRIG TIMES ZA\0" "CUNEIFORM SIGN RA\0" "CUNEIFORM SIGN RAB\0" "CUNEIFORM SIGN RI\0" "CUNEIFORM SIGN RU\0" "CUNEIFORM SIGN SA\0" "CUNEIFORM SIGN SAG\0" "CUNEIFORM SIGN SAG GUNU\0" "CUNEIFORM SIGN SAG NUTILLU\0" "CUNEIFORM SIGN SAG OVER SAG\0" "CUNEIFORM SIGN SAG TIMES A\0" "CUNEIFORM SIGN SAG TIMES DU\0" "CUNEIFORM SIGN SAG TIMES DUB\0" "CUNEIFORM SIGN SAG TIMES HA\0" "CUNEIFORM SIGN SAG TIMES KAK\0" "CUNEIFORM SIGN SAG TIMES KUR\0" "CUNEIFORM SIGN SAG TIMES LUM\0" "CUNEIFORM SIGN SAG TIMES MI\0" "CUNEIFORM SIGN SAG TIMES NUN\0" "CUNEIFORM SIGN SAG TIMES SAL\0" "CUNEIFORM SIGN SAG TIMES SHID\0" "CUNEIFORM SIGN SAG TIMES TAB\0" "CUNEIFORM SIGN SAG TIMES U2\0" "CUNEIFORM SIGN SAG TIMES UB\0" "CUNEIFORM SIGN SAG TIMES UM\0" "CUNEIFORM SIGN SAG TIMES UR\0" "CUNEIFORM SIGN SAG TIMES USH\0" "CUNEIFORM SIGN SAL\0" "CUNEIFORM SIGN SAL LAGAB TIMES ASH2\0" "CUNEIFORM SIGN SANGA2\0" "CUNEIFORM SIGN SAR\0" "CUNEIFORM SIGN SHA\0" "CUNEIFORM SIGN SHA3\0" "CUNEIFORM SIGN SHA3 TIMES A\0" "CUNEIFORM SIGN SHA3 TIMES BAD\0" "CUNEIFORM SIGN SHA3 TIMES GISH\0" "CUNEIFORM SIGN SHA3 TIMES NE\0" "CUNEIFORM SIGN SHA3 TIMES SHU2\0" "CUNEIFORM SIGN SHA3 TIMES TUR\0" "CUNEIFORM SIGN SHA3 TIMES U\0" "CUNEIFORM SIGN SHA3 TIMES U PLUS A\0" "CUNEIFORM SIGN SHA6\0" "CUNEIFORM SIGN SHAB6\0" "CUNEIFORM SIGN SHAR2\0" "CUNEIFORM SIGN SHE\0" "CUNEIFORM SIGN SHE HU\0" "CUNEIFORM SIGN SHE OVER SHE GAD OVER GAD GAR OVER GAR\0" "CUNEIFORM SIGN SHE OVER SHE TAB OVER TAB GAR OVER GAR\0" "CUNEIFORM SIGN SHEG9\0" "CUNEIFORM SIGN SHEN\0" "CUNEIFORM SIGN SHESH\0" "CUNEIFORM SIGN SHESH2\0" "CUNEIFORM SIGN SHESHLAM\0" "CUNEIFORM SIGN SHID\0" "CUNEIFORM SIGN SHID TIMES A\0" "CUNEIFORM SIGN SHID TIMES IM\0" "CUNEIFORM SIGN SHIM\0" "CUNEIFORM SIGN SHIM TIMES A\0" "CUNEIFORM SIGN SHIM TIMES BAL\0" "CUNEIFORM SIGN SHIM TIMES BULUG\0" "CUNEIFORM SIGN SHIM TIMES DIN\0" "CUNEIFORM SIGN SHIM TIMES GAR\0" "CUNEIFORM SIGN SHIM TIMES IGI\0" "CUNEIFORM SIGN SHIM TIMES IGI GUNU\0" "CUNEIFORM SIGN SHIM TIMES KUSHU2\0" "CUNEIFORM SIGN SHIM TIMES LUL\0" "CUNEIFORM SIGN SHIM TIMES MUG\0" "CUNEIFORM SIGN SHIM TIMES SAL\0" "CUNEIFORM SIGN SHINIG\0" "CUNEIFORM SIGN SHIR\0" "CUNEIFORM SIGN SHIR OVER SHIR BUR OVER BUR\0" "CUNEIFORM SIGN SHIR TENU\0" "CUNEIFORM SIGN SHITA\0" "CUNEIFORM SIGN SHU\0" "CUNEIFORM SIGN SHU OVER INVERTED SHU\0" "CUNEIFORM SIGN SHU2\0" "CUNEIFORM SIGN SHUBUR\0" "CUNEIFORM SIGN SI\0" "CUNEIFORM SIGN SI GUNU\0" "CUNEIFORM SIGN SIG\0" "CUNEIFORM SIGN SIG4\0" "CUNEIFORM SIGN SIG4 OVER SIG4 SHU2\0" "CUNEIFORM SIGN SIK2\0" "CUNEIFORM SIGN SILA3\0" "CUNEIFORM SIGN SU\0" "CUNEIFORM SIGN SU OVER SU\0" "CUNEIFORM SIGN SUD\0" "CUNEIFORM SIGN SUD2\0" "CUNEIFORM SIGN SUHUR\0" "CUNEIFORM SIGN SUM\0" "CUNEIFORM SIGN SUMASH\0" "CUNEIFORM SIGN SUR\0" "CUNEIFORM SIGN SUR9\0" "CUNEIFORM SIGN TA\0" "CUNEIFORM SIGN TA ASTERISK\0" "CUNEIFORM SIGN TA GUNU\0" "CUNEIFORM SIGN TA TIMES HI\0" "CUNEIFORM SIGN TA TIMES MI\0" "CUNEIFORM SIGN TAB\0" "CUNEIFORM SIGN TAB OVER TAB NI OVER NI DISH OVER DISH\0" "CUNEIFORM SIGN TAB SQUARED\0" "CUNEIFORM SIGN TAG\0" "CUNEIFORM SIGN TAG TIMES BI\0" "CUNEIFORM SIGN TAG TIMES GUD\0" "CUNEIFORM SIGN TAG TIMES SHE\0" "CUNEIFORM SIGN TAG TIMES SHU\0" "CUNEIFORM SIGN TAG TIMES TUG2\0" "CUNEIFORM SIGN TAG TIMES UD\0" "CUNEIFORM SIGN TAK4\0" "CUNEIFORM SIGN TAR\0" "CUNEIFORM SIGN TE\0" "CUNEIFORM SIGN TE GUNU\0" "CUNEIFORM SIGN TI\0" "CUNEIFORM SIGN TI TENU\0" "CUNEIFORM SIGN TIL\0" "CUNEIFORM SIGN TIR\0" "CUNEIFORM SIGN TIR OVER TIR\0" "CUNEIFORM SIGN TIR OVER TIR GAD OVER GAD GAR OVER GAR\0" "CUNEIFORM SIGN TIR TIMES TAK4\0" "CUNEIFORM SIGN TU\0" "CUNEIFORM SIGN TUG2\0" "CUNEIFORM SIGN TUK\0" "CUNEIFORM SIGN TUM\0" "CUNEIFORM SIGN TUR\0" "CUNEIFORM SIGN TUR OVER TUR ZA OVER ZA\0" "CUNEIFORM SIGN U\0" "CUNEIFORM SIGN U GUD\0" "CUNEIFORM SIGN U OVER U PA OVER PA GAR OVER GAR\0" "CUNEIFORM SIGN U OVER U SUR OVER SUR\0" "CUNEIFORM SIGN U OVER U U REVERSED OVER U REVERSED\0" "CUNEIFORM SIGN U U U\0" "CUNEIFORM SIGN U2\0" "CUNEIFORM SIGN UB\0" "CUNEIFORM SIGN UD\0" "CUNEIFORM SIGN UD GUNU\0" "CUNEIFORM SIGN UD KUSHU2\0" "CUNEIFORM SIGN UD SHESHIG\0" "CUNEIFORM SIGN UD SHESHIG TIMES BAD\0" "CUNEIFORM SIGN UD TIMES BAD\0" "CUNEIFORM SIGN UD TIMES MI\0" "CUNEIFORM SIGN UD TIMES U PLUS U PLUS U\0" "CUNEIFORM SIGN UD TIMES U PLUS U PLUS U GUNU\0" "CUNEIFORM SIGN UDUG\0" "CUNEIFORM SIGN UM\0" "CUNEIFORM SIGN UM TIMES LAGAB\0" "CUNEIFORM SIGN UM TIMES ME PLUS DA\0" "CUNEIFORM SIGN UM TIMES SHA3\0" "CUNEIFORM SIGN UM TIMES U\0" "CUNEIFORM SIGN UMBIN\0" "CUNEIFORM SIGN UMUM\0" "CUNEIFORM SIGN UMUM TIMES KASKAL\0" "CUNEIFORM SIGN UMUM TIMES PA\0" "CUNEIFORM SIGN UN\0" "CUNEIFORM SIGN UN GUNU\0" "CUNEIFORM SIGN UR\0" "CUNEIFORM SIGN UR CROSSING UR\0" "CUNEIFORM SIGN UR SHESHIG\0" "CUNEIFORM SIGN UR2\0" "CUNEIFORM SIGN UR2 TIMES A PLUS HA\0" "CUNEIFORM SIGN UR2 TIMES A PLUS NA\0" "CUNEIFORM SIGN UR2 TIMES AL\0" "CUNEIFORM SIGN UR2 TIMES HA\0" "CUNEIFORM SIGN UR2 TIMES NUN\0" "CUNEIFORM SIGN UR2 TIMES U2\0" "CUNEIFORM SIGN UR2 TIMES U2 PLUS ASH\0" "CUNEIFORM SIGN UR2 TIMES U2 PLUS BI\0" "CUNEIFORM SIGN UR4\0" "CUNEIFORM SIGN URI\0" "CUNEIFORM SIGN URI3\0" "CUNEIFORM SIGN URU\0" "CUNEIFORM SIGN URU TIMES A\0" "CUNEIFORM SIGN URU TIMES ASHGAB\0" "CUNEIFORM SIGN URU TIMES BAR\0" "CUNEIFORM SIGN URU TIMES DUN\0" "CUNEIFORM SIGN URU TIMES GA\0" "CUNEIFORM SIGN URU TIMES GAL\0" "CUNEIFORM SIGN URU TIMES GAN2 TENU\0" "CUNEIFORM SIGN URU TIMES GAR\0" "CUNEIFORM SIGN URU TIMES GU\0" "CUNEIFORM SIGN URU TIMES HA\0" "CUNEIFORM SIGN URU TIMES IGI\0" "CUNEIFORM SIGN URU TIMES IM\0" "CUNEIFORM SIGN URU TIMES ISH\0" "CUNEIFORM SIGN URU TIMES KI\0" "CUNEIFORM SIGN URU TIMES LUM\0" "CUNEIFORM SIGN URU TIMES MIN\0" "CUNEIFORM SIGN URU TIMES PA\0" "CUNEIFORM SIGN URU TIMES SHE\0" "CUNEIFORM SIGN URU TIMES SIG4\0" "CUNEIFORM SIGN URU TIMES TU\0" "CUNEIFORM SIGN URU TIMES U PLUS GUD\0" "CUNEIFORM SIGN URU TIMES UD\0" "CUNEIFORM SIGN URU TIMES URUDA\0" "CUNEIFORM SIGN URUDA\0" "CUNEIFORM SIGN URUDA TIMES U\0" "CUNEIFORM SIGN USH\0" "CUNEIFORM SIGN USH TIMES A\0" "CUNEIFORM SIGN USH TIMES KU\0" "CUNEIFORM SIGN USH TIMES KUR\0" "CUNEIFORM SIGN USH TIMES TAK4\0" "CUNEIFORM SIGN USH2\0" "CUNEIFORM SIGN USHUMX\0" "CUNEIFORM SIGN USHX\0" "CUNEIFORM SIGN UTUKI\0" "CUNEIFORM SIGN UZ3\0" "CUNEIFORM SIGN UZ3 TIMES KASKAL\0" "CUNEIFORM SIGN UZU\0" "CUNEIFORM SIGN ZA\0" "CUNEIFORM SIGN ZA SQUARED TIMES KUR\0" "CUNEIFORM SIGN ZA TENU\0" "CUNEIFORM SIGN ZAG\0" "CUNEIFORM SIGN ZAMX\0" "CUNEIFORM SIGN ZE2\0" "CUNEIFORM SIGN ZI\0" "CUNEIFORM SIGN ZI OVER ZI\0" "CUNEIFORM SIGN ZI3\0" "CUNEIFORM SIGN ZIB\0" "CUNEIFORM SIGN ZIB KABA TENU\0" "CUNEIFORM SIGN ZIG\0" "CUNEIFORM SIGN ZIZ2\0" "CUNEIFORM SIGN ZU\0" "CUNEIFORM SIGN ZU5\0" "CUNEIFORM SIGN ZU5 TIMES A\0" "CUNEIFORM SIGN ZUBUR\0" "CUNEIFORM SIGN ZUM\0" "CUP ON BLACK SQUARE\0" "CURLY BRACKET EXTENSION\0" "CURLY LOGICAL AND\0" "CURLY LOGICAL OR\0" "CURLY LOOP\0" "CURRENCY EXCHANGE\0" "CURRENCY SIGN\0" "CURRY AND RICE\0" "CURVED STEM PARAGRAPH SIGN ORNAMENT\0" "CUSTARD\0" "CUSTOMS\0" "CYCLONE\0" "CYLINDRICITY\0" "CYPRIOT SYLLABLE A\0" "CYPRIOT SYLLABLE E\0" "CYPRIOT SYLLABLE I\0" "CYPRIOT SYLLABLE JA\0" "CYPRIOT SYLLABLE JO\0" "CYPRIOT SYLLABLE KA\0" "CYPRIOT SYLLABLE KE\0" "CYPRIOT SYLLABLE KI\0" "CYPRIOT SYLLABLE KO\0" "CYPRIOT SYLLABLE KU\0" "CYPRIOT SYLLABLE LA\0" "CYPRIOT SYLLABLE LE\0" "CYPRIOT SYLLABLE LI\0" "CYPRIOT SYLLABLE LO\0" "CYPRIOT SYLLABLE LU\0" "CYPRIOT SYLLABLE MA\0" "CYPRIOT SYLLABLE ME\0" "CYPRIOT SYLLABLE MI\0" "CYPRIOT SYLLABLE MO\0" "CYPRIOT SYLLABLE MU\0" "CYPRIOT SYLLABLE NA\0" "CYPRIOT SYLLABLE NE\0" "CYPRIOT SYLLABLE NI\0" "CYPRIOT SYLLABLE NO\0" "CYPRIOT SYLLABLE NU\0" "CYPRIOT SYLLABLE O\0" "CYPRIOT SYLLABLE PA\0" "CYPRIOT SYLLABLE PE\0" "CYPRIOT SYLLABLE PI\0" "CYPRIOT SYLLABLE PO\0" "CYPRIOT SYLLABLE PU\0" "CYPRIOT SYLLABLE RA\0" "CYPRIOT SYLLABLE RE\0" "CYPRIOT SYLLABLE RI\0" "CYPRIOT SYLLABLE RO\0" "CYPRIOT SYLLABLE RU\0" "CYPRIOT SYLLABLE SA\0" "CYPRIOT SYLLABLE SE\0" "CYPRIOT SYLLABLE SI\0" "CYPRIOT SYLLABLE SO\0" "CYPRIOT SYLLABLE SU\0" "CYPRIOT SYLLABLE TA\0" "CYPRIOT SYLLABLE TE\0" "CYPRIOT SYLLABLE TI\0" "CYPRIOT SYLLABLE TO\0" "CYPRIOT SYLLABLE TU\0" "CYPRIOT SYLLABLE U\0" "CYPRIOT SYLLABLE WA\0" "CYPRIOT SYLLABLE WE\0" "CYPRIOT SYLLABLE WI\0" "CYPRIOT SYLLABLE WO\0" "CYPRIOT SYLLABLE XA\0" "CYPRIOT SYLLABLE XE\0" "CYPRIOT SYLLABLE ZA\0" "CYPRIOT SYLLABLE ZO\0" "CYRILLIC CAPITAL LETTER A\0" "CYRILLIC CAPITAL LETTER A WITH BREVE\0" "CYRILLIC CAPITAL LETTER A WITH DIAERESIS\0" "CYRILLIC CAPITAL LETTER ABKHASIAN CHE\0" "CYRILLIC CAPITAL LETTER ABKHASIAN CHE WITH DESCENDER\0" "CYRILLIC CAPITAL LETTER ABKHASIAN DZE\0" "CYRILLIC CAPITAL LETTER ABKHASIAN HA\0" "CYRILLIC CAPITAL LETTER ALEUT KA\0" "CYRILLIC CAPITAL LETTER BARRED O\0" "CYRILLIC CAPITAL LETTER BARRED O WITH DIAERESIS\0" "CYRILLIC CAPITAL LETTER BASHKIR KA\0" "CYRILLIC CAPITAL LETTER BE\0" "CYRILLIC CAPITAL LETTER BIG YUS\0" "CYRILLIC CAPITAL LETTER BINOCULAR O\0" "CYRILLIC CAPITAL LETTER BLENDED YUS\0" "CYRILLIC CAPITAL LETTER BROAD OMEGA\0" "CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I\0" "CYRILLIC CAPITAL LETTER CCHE\0" "CYRILLIC CAPITAL LETTER CHE\0" "CYRILLIC CAPITAL LETTER CHE WITH DESCENDER\0" "CYRILLIC CAPITAL LETTER CHE WITH DIAERESIS\0" "CYRILLIC CAPITAL LETTER CHE WITH VERTICAL STROKE\0" "CYRILLIC CAPITAL LETTER CLOSED LITTLE YUS\0" "CYRILLIC CAPITAL LETTER DE\0" "CYRILLIC CAPITAL LETTER DJE\0" "CYRILLIC CAPITAL LETTER DJERV\0" "CYRILLIC CAPITAL LETTER DOUBLE MONOCULAR O\0" "CYRILLIC CAPITAL LETTER DWE\0" "CYRILLIC CAPITAL LETTER DZE\0" "CYRILLIC CAPITAL LETTER DZELO\0" "CYRILLIC CAPITAL LETTER DZHE\0" "CYRILLIC CAPITAL LETTER DZWE\0" "CYRILLIC CAPITAL LETTER DZZE\0" "CYRILLIC CAPITAL LETTER E\0" "CYRILLIC CAPITAL LETTER E WITH DIAERESIS\0" "CYRILLIC CAPITAL LETTER EF\0" "CYRILLIC CAPITAL LETTER EL\0" "CYRILLIC CAPITAL LETTER EL WITH HOOK\0" "CYRILLIC CAPITAL LETTER EL WITH MIDDLE HOOK\0" "CYRILLIC CAPITAL LETTER EL WITH TAIL\0" "CYRILLIC CAPITAL LETTER EM\0" "CYRILLIC CAPITAL LETTER EM WITH TAIL\0" "CYRILLIC CAPITAL LETTER EN\0" "CYRILLIC CAPITAL LETTER EN WITH DESCENDER\0" "CYRILLIC CAPITAL LETTER EN WITH HOOK\0" "CYRILLIC CAPITAL LETTER EN WITH MIDDLE HOOK\0" "CYRILLIC CAPITAL LETTER EN WITH TAIL\0" "CYRILLIC CAPITAL LETTER ER\0" "CYRILLIC CAPITAL LETTER ER WITH TICK\0" "CYRILLIC CAPITAL LETTER ES\0" "CYRILLIC CAPITAL LETTER ES WITH DESCENDER\0" "CYRILLIC CAPITAL LETTER FITA\0" "CYRILLIC CAPITAL LETTER GHE\0" "CYRILLIC CAPITAL LETTER GHE WITH DESCENDER\0" "CYRILLIC CAPITAL LETTER GHE WITH MIDDLE HOOK\0" "CYRILLIC CAPITAL LETTER GHE WITH STROKE\0" "CYRILLIC CAPITAL LETTER GHE WITH STROKE AND HOOK\0" "CYRILLIC CAPITAL LETTER GHE WITH UPTURN\0" "CYRILLIC CAPITAL LETTER GJE\0" "CYRILLIC CAPITAL LETTER HA\0" "CYRILLIC CAPITAL LETTER HA WITH DESCENDER\0" "CYRILLIC CAPITAL LETTER HA WITH HOOK\0" "CYRILLIC CAPITAL LETTER HA WITH STROKE\0" "CYRILLIC CAPITAL LETTER HARD SIGN\0" "CYRILLIC CAPITAL LETTER HWE\0" "CYRILLIC CAPITAL LETTER I\0" "CYRILLIC CAPITAL LETTER I WITH DIAERESIS\0" "CYRILLIC CAPITAL LETTER I WITH GRAVE\0" "CYRILLIC CAPITAL LETTER I WITH MACRON\0" "CYRILLIC CAPITAL LETTER IE\0" "CYRILLIC CAPITAL LETTER IE WITH BREVE\0" "CYRILLIC CAPITAL LETTER IE WITH GRAVE\0" "CYRILLIC CAPITAL LETTER IO\0" "CYRILLIC CAPITAL LETTER IOTA\0" "CYRILLIC CAPITAL LETTER IOTIFIED A\0" "CYRILLIC CAPITAL LETTER IOTIFIED BIG YUS\0" "CYRILLIC CAPITAL LETTER IOTIFIED CLOSED LITTLE YUS\0" "CYRILLIC CAPITAL LETTER IOTIFIED E\0" "CYRILLIC CAPITAL LETTER IOTIFIED LITTLE YUS\0" "CYRILLIC CAPITAL LETTER IOTIFIED YAT\0" "CYRILLIC CAPITAL LETTER IZHITSA\0" "CYRILLIC CAPITAL LETTER IZHITSA WITH DOUBLE GRAVE ACCENT\0" "CYRILLIC CAPITAL LETTER JE\0" "CYRILLIC CAPITAL LETTER KA\0" "CYRILLIC CAPITAL LETTER KA WITH DESCENDER\0" "CYRILLIC CAPITAL LETTER KA WITH HOOK\0" "CYRILLIC CAPITAL LETTER KA WITH STROKE\0" "CYRILLIC CAPITAL LETTER KA WITH VERTICAL STROKE\0" "CYRILLIC CAPITAL LETTER KHAKASSIAN CHE\0" "CYRILLIC CAPITAL LETTER KJE\0" "CYRILLIC CAPITAL LETTER KOMI DE\0" "CYRILLIC CAPITAL LETTER KOMI DJE\0" "CYRILLIC CAPITAL LETTER KOMI DZJE\0" "CYRILLIC CAPITAL LETTER KOMI LJE\0" "CYRILLIC CAPITAL LETTER KOMI NJE\0" "CYRILLIC CAPITAL LETTER KOMI SJE\0" "CYRILLIC CAPITAL LETTER KOMI TJE\0" "CYRILLIC CAPITAL LETTER KOMI ZJE\0" "CYRILLIC CAPITAL LETTER KOPPA\0" "CYRILLIC CAPITAL LETTER KSI\0" "CYRILLIC CAPITAL LETTER LHA\0" "CYRILLIC CAPITAL LETTER LITTLE YUS\0" "CYRILLIC CAPITAL LETTER LJE\0" "CYRILLIC CAPITAL LETTER MONOCULAR O\0" "CYRILLIC CAPITAL LETTER MONOGRAPH UK\0" "CYRILLIC CAPITAL LETTER NEUTRAL YER\0" "CYRILLIC CAPITAL LETTER NJE\0" "CYRILLIC CAPITAL LETTER O\0" "CYRILLIC CAPITAL LETTER O WITH DIAERESIS\0" "CYRILLIC CAPITAL LETTER OMEGA\0" "CYRILLIC CAPITAL LETTER OMEGA WITH TITLO\0" "CYRILLIC CAPITAL LETTER OT\0" "CYRILLIC CAPITAL LETTER PE\0" "CYRILLIC CAPITAL LETTER PE WITH DESCENDER\0" "CYRILLIC CAPITAL LETTER PE WITH MIDDLE HOOK\0" "CYRILLIC CAPITAL LETTER PSI\0" "CYRILLIC CAPITAL LETTER QA\0" "CYRILLIC CAPITAL LETTER REVERSED DZE\0" "CYRILLIC CAPITAL LETTER REVERSED TSE\0" "CYRILLIC CAPITAL LETTER REVERSED YU\0" "CYRILLIC CAPITAL LETTER REVERSED ZE\0" "CYRILLIC CAPITAL LETTER RHA\0" "CYRILLIC CAPITAL LETTER ROUND OMEGA\0" "CYRILLIC CAPITAL LETTER SCHWA\0" "CYRILLIC CAPITAL LETTER SCHWA WITH DIAERESIS\0" "CYRILLIC CAPITAL LETTER SEMISOFT SIGN\0" "CYRILLIC CAPITAL LETTER SHA\0" "CYRILLIC CAPITAL LETTER SHCHA\0" "CYRILLIC CAPITAL LETTER SHHA\0" "CYRILLIC CAPITAL LETTER SHHA WITH DESCENDER\0" "CYRILLIC CAPITAL LETTER SHORT I\0" "CYRILLIC CAPITAL LETTER SHORT I WITH TAIL\0" "CYRILLIC CAPITAL LETTER SHORT U\0" "CYRILLIC CAPITAL LETTER SHWE\0" "CYRILLIC CAPITAL LETTER SOFT DE\0" "CYRILLIC CAPITAL LETTER SOFT EL\0" "CYRILLIC CAPITAL LETTER SOFT EM\0" "CYRILLIC CAPITAL LETTER SOFT SIGN\0" "CYRILLIC CAPITAL LETTER STRAIGHT U\0" "CYRILLIC CAPITAL LETTER STRAIGHT U WITH STROKE\0" "CYRILLIC CAPITAL LETTER TCHE\0" "CYRILLIC CAPITAL LETTER TE\0" "CYRILLIC CAPITAL LETTER TE WITH DESCENDER\0" "CYRILLIC CAPITAL LETTER TE WITH MIDDLE HOOK\0" "CYRILLIC CAPITAL LETTER TSE\0" "CYRILLIC CAPITAL LETTER TSHE\0" "CYRILLIC CAPITAL LETTER TSSE\0" "CYRILLIC CAPITAL LETTER TSWE\0" "CYRILLIC CAPITAL LETTER TWE\0" "CYRILLIC CAPITAL LETTER U\0" "CYRILLIC CAPITAL LETTER U WITH DIAERESIS\0" "CYRILLIC CAPITAL LETTER U WITH DOUBLE ACUTE\0" "CYRILLIC CAPITAL LETTER U WITH MACRON\0" "CYRILLIC CAPITAL LETTER UK\0" "CYRILLIC CAPITAL LETTER UKRAINIAN IE\0" "CYRILLIC CAPITAL LETTER VE\0" "CYRILLIC CAPITAL LETTER WE\0" "CYRILLIC CAPITAL LETTER YA\0" "CYRILLIC CAPITAL LETTER YAE\0" "CYRILLIC CAPITAL LETTER YAT\0" "CYRILLIC CAPITAL LETTER YERU\0" "CYRILLIC CAPITAL LETTER YERU WITH BACK YER\0" "CYRILLIC CAPITAL LETTER YERU WITH DIAERESIS\0" "CYRILLIC CAPITAL LETTER YI\0" "CYRILLIC CAPITAL LETTER YN\0" "CYRILLIC CAPITAL LETTER YU\0" "CYRILLIC CAPITAL LETTER ZE\0" "CYRILLIC CAPITAL LETTER ZE WITH DESCENDER\0" "CYRILLIC CAPITAL LETTER ZE WITH DIAERESIS\0" "CYRILLIC CAPITAL LETTER ZEMLYA\0" "CYRILLIC CAPITAL LETTER ZHE\0" "CYRILLIC CAPITAL LETTER ZHE WITH BREVE\0" "CYRILLIC CAPITAL LETTER ZHE WITH DESCENDER\0" "CYRILLIC CAPITAL LETTER ZHE WITH DIAERESIS\0" "CYRILLIC CAPITAL LETTER ZHWE\0" "CYRILLIC CAPITAL LIGATURE A IE\0" "CYRILLIC CAPITAL LIGATURE EN GHE\0" "CYRILLIC CAPITAL LIGATURE TE TSE\0" "CYRILLIC KAVYKA\0" "CYRILLIC LETTER MULTIOCULAR O\0" "CYRILLIC LETTER PALOCHKA\0" "CYRILLIC LETTER SMALL CAPITAL EL\0" "CYRILLIC PAYEROK\0" "CYRILLIC SMALL LETTER A\0" "CYRILLIC SMALL LETTER A WITH BREVE\0" "CYRILLIC SMALL LETTER A WITH DIAERESIS\0" "CYRILLIC SMALL LETTER ABKHASIAN CHE\0" "CYRILLIC SMALL LETTER ABKHASIAN CHE WITH DESCENDER\0" "CYRILLIC SMALL LETTER ABKHASIAN DZE\0" "CYRILLIC SMALL LETTER ABKHASIAN HA\0" "CYRILLIC SMALL LETTER ALEUT KA\0" "CYRILLIC SMALL LETTER BARRED O\0" "CYRILLIC SMALL LETTER BARRED O WITH DIAERESIS\0" "CYRILLIC SMALL LETTER BASHKIR KA\0" "CYRILLIC SMALL LETTER BE\0" "CYRILLIC SMALL LETTER BIG YUS\0" "CYRILLIC SMALL LETTER BINOCULAR O\0" "CYRILLIC SMALL LETTER BLENDED YUS\0" "CYRILLIC SMALL LETTER BROAD OMEGA\0" "CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I\0" "CYRILLIC SMALL LETTER CCHE\0" "CYRILLIC SMALL LETTER CHE\0" "CYRILLIC SMALL LETTER CHE WITH DESCENDER\0" "CYRILLIC SMALL LETTER CHE WITH DIAERESIS\0" "CYRILLIC SMALL LETTER CHE WITH VERTICAL STROKE\0" "CYRILLIC SMALL LETTER CLOSED LITTLE YUS\0" "CYRILLIC SMALL LETTER DE\0" "CYRILLIC SMALL LETTER DJE\0" "CYRILLIC SMALL LETTER DJERV\0" "CYRILLIC SMALL LETTER DOUBLE MONOCULAR O\0" "CYRILLIC SMALL LETTER DWE\0" "CYRILLIC SMALL LETTER DZE\0" "CYRILLIC SMALL LETTER DZELO\0" "CYRILLIC SMALL LETTER DZHE\0" "CYRILLIC SMALL LETTER DZWE\0" "CYRILLIC SMALL LETTER DZZE\0" "CYRILLIC SMALL LETTER E\0" "CYRILLIC SMALL LETTER E WITH DIAERESIS\0" "CYRILLIC SMALL LETTER EF\0" "CYRILLIC SMALL LETTER EL\0" "CYRILLIC SMALL LETTER EL WITH HOOK\0" "CYRILLIC SMALL LETTER EL WITH MIDDLE HOOK\0" "CYRILLIC SMALL LETTER EL WITH TAIL\0" "CYRILLIC SMALL LETTER EM\0" "CYRILLIC SMALL LETTER EM WITH TAIL\0" "CYRILLIC SMALL LETTER EN\0" "CYRILLIC SMALL LETTER EN WITH DESCENDER\0" "CYRILLIC SMALL LETTER EN WITH HOOK\0" "CYRILLIC SMALL LETTER EN WITH MIDDLE HOOK\0" "CYRILLIC SMALL LETTER EN WITH TAIL\0" "CYRILLIC SMALL LETTER ER\0" "CYRILLIC SMALL LETTER ER WITH TICK\0" "CYRILLIC SMALL LETTER ES\0" "CYRILLIC SMALL LETTER ES WITH DESCENDER\0" "CYRILLIC SMALL LETTER FITA\0" "CYRILLIC SMALL LETTER GHE\0" "CYRILLIC SMALL LETTER GHE WITH DESCENDER\0" "CYRILLIC SMALL LETTER GHE WITH MIDDLE HOOK\0" "CYRILLIC SMALL LETTER GHE WITH STROKE\0" "CYRILLIC SMALL LETTER GHE WITH STROKE AND HOOK\0" "CYRILLIC SMALL LETTER GHE WITH UPTURN\0" "CYRILLIC SMALL LETTER GJE\0" "CYRILLIC SMALL LETTER HA\0" "CYRILLIC SMALL LETTER HA WITH DESCENDER\0" "CYRILLIC SMALL LETTER HA WITH HOOK\0" "CYRILLIC SMALL LETTER HA WITH STROKE\0" "CYRILLIC SMALL LETTER HARD SIGN\0" "CYRILLIC SMALL LETTER HWE\0" "CYRILLIC SMALL LETTER I\0" "CYRILLIC SMALL LETTER I WITH DIAERESIS\0" "CYRILLIC SMALL LETTER I WITH GRAVE\0" "CYRILLIC SMALL LETTER I WITH MACRON\0" "CYRILLIC SMALL LETTER IE\0" "CYRILLIC SMALL LETTER IE WITH BREVE\0" "CYRILLIC SMALL LETTER IE WITH GRAVE\0" "CYRILLIC SMALL LETTER IO\0" "CYRILLIC SMALL LETTER IOTA\0" "CYRILLIC SMALL LETTER IOTIFIED A\0" "CYRILLIC SMALL LETTER IOTIFIED BIG YUS\0" "CYRILLIC SMALL LETTER IOTIFIED CLOSED LITTLE YUS\0" "CYRILLIC SMALL LETTER IOTIFIED E\0" "CYRILLIC SMALL LETTER IOTIFIED LITTLE YUS\0" "CYRILLIC SMALL LETTER IOTIFIED YAT\0" "CYRILLIC SMALL LETTER IZHITSA\0" "CYRILLIC SMALL LETTER IZHITSA WITH DOUBLE GRAVE ACCENT\0" "CYRILLIC SMALL LETTER JE\0" "CYRILLIC SMALL LETTER KA\0" "CYRILLIC SMALL LETTER KA WITH DESCENDER\0" "CYRILLIC SMALL LETTER KA WITH HOOK\0" "CYRILLIC SMALL LETTER KA WITH STROKE\0" "CYRILLIC SMALL LETTER KA WITH VERTICAL STROKE\0" "CYRILLIC SMALL LETTER KHAKASSIAN CHE\0" "CYRILLIC SMALL LETTER KJE\0" "CYRILLIC SMALL LETTER KOMI DE\0" "CYRILLIC SMALL LETTER KOMI DJE\0" "CYRILLIC SMALL LETTER KOMI DZJE\0" "CYRILLIC SMALL LETTER KOMI LJE\0" "CYRILLIC SMALL LETTER KOMI NJE\0" "CYRILLIC SMALL LETTER KOMI SJE\0" "CYRILLIC SMALL LETTER KOMI TJE\0" "CYRILLIC SMALL LETTER KOMI ZJE\0" "CYRILLIC SMALL LETTER KOPPA\0" "CYRILLIC SMALL LETTER KSI\0" "CYRILLIC SMALL LETTER LHA\0" "CYRILLIC SMALL LETTER LITTLE YUS\0" "CYRILLIC SMALL LETTER LJE\0" "CYRILLIC SMALL LETTER MONOCULAR O\0" "CYRILLIC SMALL LETTER MONOGRAPH UK\0" "CYRILLIC SMALL LETTER NEUTRAL YER\0" "CYRILLIC SMALL LETTER NJE\0" "CYRILLIC SMALL LETTER O\0" "CYRILLIC SMALL LETTER O WITH DIAERESIS\0" "CYRILLIC SMALL LETTER OMEGA\0" "CYRILLIC SMALL LETTER OMEGA WITH TITLO\0" "CYRILLIC SMALL LETTER OT\0" "CYRILLIC SMALL LETTER PALOCHKA\0" "CYRILLIC SMALL LETTER PE\0" "CYRILLIC SMALL LETTER PE WITH DESCENDER\0" "CYRILLIC SMALL LETTER PE WITH MIDDLE HOOK\0" "CYRILLIC SMALL LETTER PSI\0" "CYRILLIC SMALL LETTER QA\0" "CYRILLIC SMALL LETTER REVERSED DZE\0" "CYRILLIC SMALL LETTER REVERSED TSE\0" "CYRILLIC SMALL LETTER REVERSED YU\0" "CYRILLIC SMALL LETTER REVERSED ZE\0" "CYRILLIC SMALL LETTER RHA\0" "CYRILLIC SMALL LETTER ROUND OMEGA\0" "CYRILLIC SMALL LETTER SCHWA\0" "CYRILLIC SMALL LETTER SCHWA WITH DIAERESIS\0" "CYRILLIC SMALL LETTER SEMISOFT SIGN\0" "CYRILLIC SMALL LETTER SHA\0" "CYRILLIC SMALL LETTER SHCHA\0" "CYRILLIC SMALL LETTER SHHA\0" "CYRILLIC SMALL LETTER SHHA WITH DESCENDER\0" "CYRILLIC SMALL LETTER SHORT I\0" "CYRILLIC SMALL LETTER SHORT I WITH TAIL\0" "CYRILLIC SMALL LETTER SHORT U\0" "CYRILLIC SMALL LETTER SHWE\0" "CYRILLIC SMALL LETTER SOFT DE\0" "CYRILLIC SMALL LETTER SOFT EL\0" "CYRILLIC SMALL LETTER SOFT EM\0" "CYRILLIC SMALL LETTER SOFT SIGN\0" "CYRILLIC SMALL LETTER STRAIGHT U\0" "CYRILLIC SMALL LETTER STRAIGHT U WITH STROKE\0" "CYRILLIC SMALL LETTER TCHE\0" "CYRILLIC SMALL LETTER TE\0" "CYRILLIC SMALL LETTER TE WITH DESCENDER\0" "CYRILLIC SMALL LETTER TE WITH MIDDLE HOOK\0" "CYRILLIC SMALL LETTER TSE\0" "CYRILLIC SMALL LETTER TSHE\0" "CYRILLIC SMALL LETTER TSSE\0" "CYRILLIC SMALL LETTER TSWE\0" "CYRILLIC SMALL LETTER TWE\0" "CYRILLIC SMALL LETTER U\0" "CYRILLIC SMALL LETTER U WITH DIAERESIS\0" "CYRILLIC SMALL LETTER U WITH DOUBLE ACUTE\0" "CYRILLIC SMALL LETTER U WITH MACRON\0" "CYRILLIC SMALL LETTER UK\0" "CYRILLIC SMALL LETTER UKRAINIAN IE\0" "CYRILLIC SMALL LETTER VE\0" "CYRILLIC SMALL LETTER WE\0" "CYRILLIC SMALL LETTER YA\0" "CYRILLIC SMALL LETTER YAE\0" "CYRILLIC SMALL LETTER YAT\0" "CYRILLIC SMALL LETTER YERU\0" "CYRILLIC SMALL LETTER YERU WITH BACK YER\0" "CYRILLIC SMALL LETTER YERU WITH DIAERESIS\0" "CYRILLIC SMALL LETTER YI\0" "CYRILLIC SMALL LETTER YN\0" "CYRILLIC SMALL LETTER YU\0" "CYRILLIC SMALL LETTER ZE\0" "CYRILLIC SMALL LETTER ZE WITH DESCENDER\0" "CYRILLIC SMALL LETTER ZE WITH DIAERESIS\0" "CYRILLIC SMALL LETTER ZEMLYA\0" "CYRILLIC SMALL LETTER ZHE\0" "CYRILLIC SMALL LETTER ZHE WITH BREVE\0" "CYRILLIC SMALL LETTER ZHE WITH DESCENDER\0" "CYRILLIC SMALL LETTER ZHE WITH DIAERESIS\0" "CYRILLIC SMALL LETTER ZHWE\0" "CYRILLIC SMALL LIGATURE A IE\0" "CYRILLIC SMALL LIGATURE EN GHE\0" "CYRILLIC SMALL LIGATURE TE TSE\0" "CYRILLIC THOUSANDS SIGN\0" "DAGGER\0" "DALET SYMBOL\0" "DANCER\0" "DANGO\0" "DARK SHADE\0" "DASH SYMBOL\0" "DASHED LOW LINE\0" "DASHED OVERLINE\0" "DASHED TRIANGLE-HEADED RIGHTWARDS ARROW\0" "DECIDUOUS TREE\0" "DECIMAL EXPONENT SYMBOL\0" "DECIMAL SEPARATOR KEY SYMBOL\0" "DEGREE CELSIUS\0" "DEGREE FAHRENHEIT\0" "DEGREE SIGN\0" "DELIVERY TRUCK\0" "DELTA EQUAL TO\0" "DENTISTRY SYMBOL LIGHT DOWN AND HORIZONTAL\0" "DENTISTRY SYMBOL LIGHT DOWN AND HORIZONTAL WITH CIRCLE\0" "DENTISTRY SYMBOL LIGHT DOWN AND HORIZONTAL WITH TRIANGLE\0" "DENTISTRY SYMBOL LIGHT DOWN AND HORIZONTAL WITH WAVE\0" "DENTISTRY SYMBOL LIGHT UP AND HORIZONTAL\0" "DENTISTRY SYMBOL LIGHT UP AND HORIZONTAL WITH CIRCLE\0" "DENTISTRY SYMBOL LIGHT UP AND HORIZONTAL WITH TRIANGLE\0" "DENTISTRY SYMBOL LIGHT UP AND HORIZONTAL WITH WAVE\0" "DENTISTRY SYMBOL LIGHT VERTICAL AND BOTTOM LEFT\0" "DENTISTRY SYMBOL LIGHT VERTICAL AND BOTTOM RIGHT\0" "DENTISTRY SYMBOL LIGHT VERTICAL AND TOP LEFT\0" "DENTISTRY SYMBOL LIGHT VERTICAL AND TOP RIGHT\0" "DENTISTRY SYMBOL LIGHT VERTICAL AND WAVE\0" "DENTISTRY SYMBOL LIGHT VERTICAL WITH CIRCLE\0" "DENTISTRY SYMBOL LIGHT VERTICAL WITH TRIANGLE\0" "DEPARTMENT STORE\0" "DESCENDING NODE\0" "DESERET CAPITAL LETTER AY\0" "DESERET CAPITAL LETTER BEE\0" "DESERET CAPITAL LETTER CHEE\0" "DESERET CAPITAL LETTER DEE\0" "DESERET CAPITAL LETTER EF\0" "DESERET CAPITAL LETTER EL\0" "DESERET CAPITAL LETTER EM\0" "DESERET CAPITAL LETTER EN\0" "DESERET CAPITAL LETTER ENG\0" "DESERET CAPITAL LETTER ER\0" "DESERET CAPITAL LETTER ES\0" "DESERET CAPITAL LETTER ESH\0" "DESERET CAPITAL LETTER ETH\0" "DESERET CAPITAL LETTER EW\0" "DESERET CAPITAL LETTER GAY\0" "DESERET CAPITAL LETTER H\0" "DESERET CAPITAL LETTER JEE\0" "DESERET CAPITAL LETTER KAY\0" "DESERET CAPITAL LETTER LONG A\0" "DESERET CAPITAL LETTER LONG AH\0" "DESERET CAPITAL LETTER LONG E\0" "DESERET CAPITAL LETTER LONG I\0" "DESERET CAPITAL LETTER LONG O\0" "DESERET CAPITAL LETTER LONG OO\0" "DESERET CAPITAL LETTER OI\0" "DESERET CAPITAL LETTER OW\0" "DESERET CAPITAL LETTER PEE\0" "DESERET CAPITAL LETTER SHORT A\0" "DESERET CAPITAL LETTER SHORT AH\0" "DESERET CAPITAL LETTER SHORT E\0" "DESERET CAPITAL LETTER SHORT I\0" "DESERET CAPITAL LETTER SHORT O\0" "DESERET CAPITAL LETTER SHORT OO\0" "DESERET CAPITAL LETTER TEE\0" "DESERET CAPITAL LETTER THEE\0" "DESERET CAPITAL LETTER VEE\0" "DESERET CAPITAL LETTER WU\0" "DESERET CAPITAL LETTER YEE\0" "DESERET CAPITAL LETTER ZEE\0" "DESERET CAPITAL LETTER ZHEE\0" "DESERET SMALL LETTER AY\0" "DESERET SMALL LETTER BEE\0" "DESERET SMALL LETTER CHEE\0" "DESERET SMALL LETTER DEE\0" "DESERET SMALL LETTER EF\0" "DESERET SMALL LETTER EL\0" "DESERET SMALL LETTER EM\0" "DESERET SMALL LETTER EN\0" "DESERET SMALL LETTER ENG\0" "DESERET SMALL LETTER ER\0" "DESERET SMALL LETTER ES\0" "DESERET SMALL LETTER ESH\0" "DESERET SMALL LETTER ETH\0" "DESERET SMALL LETTER EW\0" "DESERET SMALL LETTER GAY\0" "DESERET SMALL LETTER H\0" "DESERET SMALL LETTER JEE\0" "DESERET SMALL LETTER KAY\0" "DESERET SMALL LETTER LONG A\0" "DESERET SMALL LETTER LONG AH\0" "DESERET SMALL LETTER LONG E\0" "DESERET SMALL LETTER LONG I\0" "DESERET SMALL LETTER LONG O\0" "DESERET SMALL LETTER LONG OO\0" "DESERET SMALL LETTER OI\0" "DESERET SMALL LETTER OW\0" "DESERET SMALL LETTER PEE\0" "DESERET SMALL LETTER SHORT A\0" "DESERET SMALL LETTER SHORT AH\0" "DESERET SMALL LETTER SHORT E\0" "DESERET SMALL LETTER SHORT I\0" "DESERET SMALL LETTER SHORT O\0" "DESERET SMALL LETTER SHORT OO\0" "DESERET SMALL LETTER TEE\0" "DESERET SMALL LETTER THEE\0" "DESERET SMALL LETTER VEE\0" "DESERET SMALL LETTER WU\0" "DESERET SMALL LETTER YEE\0" "DESERET SMALL LETTER ZEE\0" "DESERET SMALL LETTER ZHEE\0" "DEVANAGARI ABBREVIATION SIGN\0" "DEVANAGARI ACUTE ACCENT\0" "DEVANAGARI CARET\0" "DEVANAGARI DANDA\0" "DEVANAGARI DIGIT EIGHT\0" "DEVANAGARI DIGIT FIVE\0" "DEVANAGARI DIGIT FOUR\0" "DEVANAGARI DIGIT NINE\0" "DEVANAGARI DIGIT ONE\0" "DEVANAGARI DIGIT SEVEN\0" "DEVANAGARI DIGIT SIX\0" "DEVANAGARI DIGIT THREE\0" "DEVANAGARI DIGIT TWO\0" "DEVANAGARI DIGIT ZERO\0" "DEVANAGARI DOUBLE DANDA\0" "DEVANAGARI GAP FILLER\0" "DEVANAGARI GRAVE ACCENT\0" "DEVANAGARI HEADSTROKE\0" "DEVANAGARI LETTER A\0" "DEVANAGARI LETTER AA\0" "DEVANAGARI LETTER AI\0" "DEVANAGARI LETTER AU\0" "DEVANAGARI LETTER AW\0" "DEVANAGARI LETTER BA\0" "DEVANAGARI LETTER BBA\0" "DEVANAGARI LETTER BHA\0" "DEVANAGARI LETTER CA\0" "DEVANAGARI LETTER CANDRA A\0" "DEVANAGARI LETTER CANDRA E\0" "DEVANAGARI LETTER CANDRA O\0" "DEVANAGARI LETTER CHA\0" "DEVANAGARI LETTER DA\0" "DEVANAGARI LETTER DDA\0" "DEVANAGARI LETTER DDDA\0" "DEVANAGARI LETTER DDDHA\0" "DEVANAGARI LETTER DDHA\0" "DEVANAGARI LETTER DHA\0" "DEVANAGARI LETTER E\0" "DEVANAGARI LETTER FA\0" "DEVANAGARI LETTER GA\0" "DEVANAGARI LETTER GGA\0" "DEVANAGARI LETTER GHA\0" "DEVANAGARI LETTER GHHA\0" "DEVANAGARI LETTER GLOTTAL STOP\0" "DEVANAGARI LETTER HA\0" "DEVANAGARI LETTER HEAVY YA\0" "DEVANAGARI LETTER I\0" "DEVANAGARI LETTER II\0" "DEVANAGARI LETTER JA\0" "DEVANAGARI LETTER JHA\0" "DEVANAGARI LETTER JJA\0" "DEVANAGARI LETTER KA\0" "DEVANAGARI LETTER KHA\0" "DEVANAGARI LETTER KHHA\0" "DEVANAGARI LETTER LA\0" "DEVANAGARI LETTER LLA\0" "DEVANAGARI LETTER LLLA\0" "DEVANAGARI LETTER MA\0" "DEVANAGARI LETTER NA\0" "DEVANAGARI LETTER NGA\0" "DEVANAGARI LETTER NNA\0" "DEVANAGARI LETTER NNNA\0" "DEVANAGARI LETTER NYA\0" "DEVANAGARI LETTER O\0" "DEVANAGARI LETTER OE\0" "DEVANAGARI LETTER OOE\0" "DEVANAGARI LETTER PA\0" "DEVANAGARI LETTER PHA\0" "DEVANAGARI LETTER QA\0" "DEVANAGARI LETTER RA\0" "DEVANAGARI LETTER RHA\0" "DEVANAGARI LETTER RRA\0" "DEVANAGARI LETTER SA\0" "DEVANAGARI LETTER SHA\0" "DEVANAGARI LETTER SHORT A\0" "DEVANAGARI LETTER SHORT E\0" "DEVANAGARI LETTER SHORT O\0" "DEVANAGARI LETTER SSA\0" "DEVANAGARI LETTER TA\0" "DEVANAGARI LETTER THA\0" "DEVANAGARI LETTER TTA\0" "DEVANAGARI LETTER TTHA\0" "DEVANAGARI LETTER U\0" "DEVANAGARI LETTER UE\0" "DEVANAGARI LETTER UU\0" "DEVANAGARI LETTER UUE\0" "DEVANAGARI LETTER VA\0" "DEVANAGARI LETTER VOCALIC L\0" "DEVANAGARI LETTER VOCALIC LL\0" "DEVANAGARI LETTER VOCALIC R\0" "DEVANAGARI LETTER VOCALIC RR\0" "DEVANAGARI LETTER YA\0" "DEVANAGARI LETTER YYA\0" "DEVANAGARI LETTER ZA\0" "DEVANAGARI LETTER ZHA\0" "DEVANAGARI OM\0" "DEVANAGARI SIGN ANUSVARA\0" "DEVANAGARI SIGN AVAGRAHA\0" "DEVANAGARI SIGN CANDRABINDU\0" "DEVANAGARI SIGN CANDRABINDU AVAGRAHA\0" "DEVANAGARI SIGN CANDRABINDU THREE\0" "DEVANAGARI SIGN CANDRABINDU TWO\0" "DEVANAGARI SIGN CANDRABINDU VIRAMA\0" "DEVANAGARI SIGN DOUBLE CANDRABINDU VIRAMA\0" "DEVANAGARI SIGN HIGH SPACING DOT\0" "DEVANAGARI SIGN INVERTED CANDRABINDU\0" "DEVANAGARI SIGN NUKTA\0" "DEVANAGARI SIGN PUSHPIKA\0" "DEVANAGARI SIGN SPACING CANDRABINDU\0" "DEVANAGARI SIGN VIRAMA\0" "DEVANAGARI SIGN VISARGA\0" "DEVANAGARI STRESS SIGN ANUDATTA\0" "DEVANAGARI STRESS SIGN UDATTA\0" "DEVANAGARI VOWEL SIGN AA\0" "DEVANAGARI VOWEL SIGN AI\0" "DEVANAGARI VOWEL SIGN AU\0" "DEVANAGARI VOWEL SIGN AW\0" "DEVANAGARI VOWEL SIGN CANDRA E\0" "DEVANAGARI VOWEL SIGN CANDRA LONG E\0" "DEVANAGARI VOWEL SIGN CANDRA O\0" "DEVANAGARI VOWEL SIGN E\0" "DEVANAGARI VOWEL SIGN I\0" "DEVANAGARI VOWEL SIGN II\0" "DEVANAGARI VOWEL SIGN O\0" "DEVANAGARI VOWEL SIGN OE\0" "DEVANAGARI VOWEL SIGN OOE\0" "DEVANAGARI VOWEL SIGN PRISHTHAMATRA E\0" "DEVANAGARI VOWEL SIGN SHORT E\0" "DEVANAGARI VOWEL SIGN SHORT O\0" "DEVANAGARI VOWEL SIGN U\0" "DEVANAGARI VOWEL SIGN UE\0" "DEVANAGARI VOWEL SIGN UU\0" "DEVANAGARI VOWEL SIGN UUE\0" "DEVANAGARI VOWEL SIGN VOCALIC L\0" "DEVANAGARI VOWEL SIGN VOCALIC LL\0" "DEVANAGARI VOWEL SIGN VOCALIC R\0" "DEVANAGARI VOWEL SIGN VOCALIC RR\0" "DIAERESIS\0" "DIAMETER SIGN\0" "DIAMOND OPERATOR\0" "DIAMOND SHAPE WITH A DOT INSIDE\0" "DIAMOND WITH BOTTOM HALF BLACK\0" "DIAMOND WITH LEFT HALF BLACK\0" "DIAMOND WITH RIGHT HALF BLACK\0" "DIAMOND WITH TOP HALF BLACK\0" "DIE FACE-1\0" "DIE FACE-2\0" "DIE FACE-3\0" "DIE FACE-4\0" "DIE FACE-5\0" "DIE FACE-6\0" "DIFFERENCE BETWEEN\0" "DIGIT EIGHT\0" "DIGIT EIGHT COMMA\0" "DIGIT EIGHT FULL STOP\0" "DIGIT FIVE\0" "DIGIT FIVE COMMA\0" "DIGIT FIVE FULL STOP\0" "DIGIT FOUR\0" "DIGIT FOUR COMMA\0" "DIGIT FOUR FULL STOP\0" "DIGIT NINE\0" "DIGIT NINE COMMA\0" "DIGIT NINE FULL STOP\0" "DIGIT ONE\0" "DIGIT ONE COMMA\0" "DIGIT ONE FULL STOP\0" "DIGIT SEVEN\0" "DIGIT SEVEN COMMA\0" "DIGIT SEVEN FULL STOP\0" "DIGIT SIX\0" "DIGIT SIX COMMA\0" "DIGIT SIX FULL STOP\0" "DIGIT THREE\0" "DIGIT THREE COMMA\0" "DIGIT THREE FULL STOP\0" "DIGIT TWO\0" "DIGIT TWO COMMA\0" "DIGIT TWO FULL STOP\0" "DIGIT ZERO\0" "DIGIT ZERO COMMA\0" "DIGIT ZERO FULL STOP\0" "DIGRAM FOR EARTH\0" "DIGRAM FOR EARTHLY HEAVEN\0" "DIGRAM FOR EARTHLY HUMAN\0" "DIGRAM FOR GREATER YANG\0" "DIGRAM FOR GREATER YIN\0" "DIGRAM FOR HEAVENLY EARTH\0" "DIGRAM FOR HUMAN EARTH\0" "DIGRAM FOR LESSER YANG\0" "DIGRAM FOR LESSER YIN\0" "DIMENSION ORIGIN\0" "DINGBAT CIRCLED SANS-SERIF DIGIT EIGHT\0" "DINGBAT CIRCLED SANS-SERIF DIGIT FIVE\0" "DINGBAT CIRCLED SANS-SERIF DIGIT FOUR\0" "DINGBAT CIRCLED SANS-SERIF DIGIT NINE\0" "DINGBAT CIRCLED SANS-SERIF DIGIT ONE\0" "DINGBAT CIRCLED SANS-SERIF DIGIT SEVEN\0" "DINGBAT CIRCLED SANS-SERIF DIGIT SIX\0" "DINGBAT CIRCLED SANS-SERIF DIGIT THREE\0" "DINGBAT CIRCLED SANS-SERIF DIGIT TWO\0" "DINGBAT CIRCLED SANS-SERIF NUMBER TEN\0" "DINGBAT NEGATIVE CIRCLED DIGIT EIGHT\0" "DINGBAT NEGATIVE CIRCLED DIGIT FIVE\0" "DINGBAT NEGATIVE CIRCLED DIGIT FOUR\0" "DINGBAT NEGATIVE CIRCLED DIGIT NINE\0" "DINGBAT NEGATIVE CIRCLED DIGIT ONE\0" "DINGBAT NEGATIVE CIRCLED DIGIT SEVEN\0" "DINGBAT NEGATIVE CIRCLED DIGIT SIX\0" "DINGBAT NEGATIVE CIRCLED DIGIT THREE\0" "DINGBAT NEGATIVE CIRCLED DIGIT TWO\0" "DINGBAT NEGATIVE CIRCLED NUMBER TEN\0" "DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT EIGHT\0" "DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT FIVE\0" "DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT FOUR\0" "DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT NINE\0" "DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT ONE\0" "DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT SEVEN\0" "DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT SIX\0" "DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT THREE\0" "DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT TWO\0" "DINGBAT NEGATIVE CIRCLED SANS-SERIF NUMBER TEN\0" "DIRECT CURRENT SYMBOL FORM TWO\0" "DIRECT HIT\0" "DISABLED CAR\0" "DISAPPOINTED BUT RELIEVED FACE\0" "DISAPPOINTED FACE\0" "DISCONTINUOUS UNDERLINE SYMBOL\0" "DITTO MARK\0" "DIVIDES\0" "DIVISION SIGN\0" "DIVISION SLASH\0" "DIVISION TIMES\0" "DIVORCE SYMBOL\0" "DIZZY FACE\0" "DIZZY SYMBOL\0" "DO NOT LITTER SYMBOL\0" "DOES NOT CONTAIN AS MEMBER\0" "DOES NOT CONTAIN AS NORMAL SUBGROUP\0" "DOES NOT CONTAIN AS NORMAL SUBGROUP OR EQUAL\0" "DOES NOT DIVIDE\0" "DOES NOT DIVIDE WITH REVERSED NEGATION SLASH\0" "DOES NOT FORCE\0" "DOES NOT PRECEDE\0" "DOES NOT PRECEDE OR EQUAL\0" "DOES NOT PROVE\0" "DOES NOT SUCCEED\0" "DOES NOT SUCCEED OR EQUAL\0" "DOG\0" "DOG FACE\0" "DOLLAR SIGN\0" "DOLPHIN\0" "DOMINO TILE HORIZONTAL BACK\0" "DOMINO TILE HORIZONTAL-00-00\0" "DOMINO TILE HORIZONTAL-00-01\0" "DOMINO TILE HORIZONTAL-00-02\0" "DOMINO TILE HORIZONTAL-00-03\0" "DOMINO TILE HORIZONTAL-00-04\0" "DOMINO TILE HORIZONTAL-00-05\0" "DOMINO TILE HORIZONTAL-00-06\0" "DOMINO TILE HORIZONTAL-01-00\0" "DOMINO TILE HORIZONTAL-01-01\0" "DOMINO TILE HORIZONTAL-01-02\0" "DOMINO TILE HORIZONTAL-01-03\0" "DOMINO TILE HORIZONTAL-01-04\0" "DOMINO TILE HORIZONTAL-01-05\0" "DOMINO TILE HORIZONTAL-01-06\0" "DOMINO TILE HORIZONTAL-02-00\0" "DOMINO TILE HORIZONTAL-02-01\0" "DOMINO TILE HORIZONTAL-02-02\0" "DOMINO TILE HORIZONTAL-02-03\0" "DOMINO TILE HORIZONTAL-02-04\0" "DOMINO TILE HORIZONTAL-02-05\0" "DOMINO TILE HORIZONTAL-02-06\0" "DOMINO TILE HORIZONTAL-03-00\0" "DOMINO TILE HORIZONTAL-03-01\0" "DOMINO TILE HORIZONTAL-03-02\0" "DOMINO TILE HORIZONTAL-03-03\0" "DOMINO TILE HORIZONTAL-03-04\0" "DOMINO TILE HORIZONTAL-03-05\0" "DOMINO TILE HORIZONTAL-03-06\0" "DOMINO TILE HORIZONTAL-04-00\0" "DOMINO TILE HORIZONTAL-04-01\0" "DOMINO TILE HORIZONTAL-04-02\0" "DOMINO TILE HORIZONTAL-04-03\0" "DOMINO TILE HORIZONTAL-04-04\0" "DOMINO TILE HORIZONTAL-04-05\0" "DOMINO TILE HORIZONTAL-04-06\0" "DOMINO TILE HORIZONTAL-05-00\0" "DOMINO TILE HORIZONTAL-05-01\0" "DOMINO TILE HORIZONTAL-05-02\0" "DOMINO TILE HORIZONTAL-05-03\0" "DOMINO TILE HORIZONTAL-05-04\0" "DOMINO TILE HORIZONTAL-05-05\0" "DOMINO TILE HORIZONTAL-05-06\0" "DOMINO TILE HORIZONTAL-06-00\0" "DOMINO TILE HORIZONTAL-06-01\0" "DOMINO TILE HORIZONTAL-06-02\0" "DOMINO TILE HORIZONTAL-06-03\0" "DOMINO TILE HORIZONTAL-06-04\0" "DOMINO TILE HORIZONTAL-06-05\0" "DOMINO TILE HORIZONTAL-06-06\0" "DOMINO TILE VERTICAL BACK\0" "DOMINO TILE VERTICAL-00-00\0" "DOMINO TILE VERTICAL-00-01\0" "DOMINO TILE VERTICAL-00-02\0" "DOMINO TILE VERTICAL-00-03\0" "DOMINO TILE VERTICAL-00-04\0" "DOMINO TILE VERTICAL-00-05\0" "DOMINO TILE VERTICAL-00-06\0" "DOMINO TILE VERTICAL-01-00\0" "DOMINO TILE VERTICAL-01-01\0" "DOMINO TILE VERTICAL-01-02\0" "DOMINO TILE VERTICAL-01-03\0" "DOMINO TILE VERTICAL-01-04\0" "DOMINO TILE VERTICAL-01-05\0" "DOMINO TILE VERTICAL-01-06\0" "DOMINO TILE VERTICAL-02-00\0" "DOMINO TILE VERTICAL-02-01\0" "DOMINO TILE VERTICAL-02-02\0" "DOMINO TILE VERTICAL-02-03\0" "DOMINO TILE VERTICAL-02-04\0" "DOMINO TILE VERTICAL-02-05\0" "DOMINO TILE VERTICAL-02-06\0" "DOMINO TILE VERTICAL-03-00\0" "DOMINO TILE VERTICAL-03-01\0" "DOMINO TILE VERTICAL-03-02\0" "DOMINO TILE VERTICAL-03-03\0" "DOMINO TILE VERTICAL-03-04\0" "DOMINO TILE VERTICAL-03-05\0" "DOMINO TILE VERTICAL-03-06\0" "DOMINO TILE VERTICAL-04-00\0" "DOMINO TILE VERTICAL-04-01\0" "DOMINO TILE VERTICAL-04-02\0" "DOMINO TILE VERTICAL-04-03\0" "DOMINO TILE VERTICAL-04-04\0" "DOMINO TILE VERTICAL-04-05\0" "DOMINO TILE VERTICAL-04-06\0" "DOMINO TILE VERTICAL-05-00\0" "DOMINO TILE VERTICAL-05-01\0" "DOMINO TILE VERTICAL-05-02\0" "DOMINO TILE VERTICAL-05-03\0" "DOMINO TILE VERTICAL-05-04\0" "DOMINO TILE VERTICAL-05-05\0" "DOMINO TILE VERTICAL-05-06\0" "DOMINO TILE VERTICAL-06-00\0" "DOMINO TILE VERTICAL-06-01\0" "DOMINO TILE VERTICAL-06-02\0" "DOMINO TILE VERTICAL-06-03\0" "DOMINO TILE VERTICAL-06-04\0" "DOMINO TILE VERTICAL-06-05\0" "DOMINO TILE VERTICAL-06-06\0" "DONG SIGN\0" "DOOR\0" "DOT ABOVE\0" "DOT MINUS\0" "DOT OPERATOR\0" "DOT PLUS\0" "DOTTED CIRCLE\0" "DOTTED CROSS\0" "DOTTED FENCE\0" "DOTTED OBELOS\0" "DOTTED RIGHT-POINTING ANGLE\0" "DOTTED SQUARE\0" "DOTTED TRANSPOSITION MARKER\0" "DOUBLE ACUTE ACCENT\0" "DOUBLE CIRCLED DIGIT EIGHT\0" "DOUBLE CIRCLED DIGIT FIVE\0" "DOUBLE CIRCLED DIGIT FOUR\0" "DOUBLE CIRCLED DIGIT NINE\0" "DOUBLE CIRCLED DIGIT ONE\0" "DOUBLE CIRCLED DIGIT SEVEN\0" "DOUBLE CIRCLED DIGIT SIX\0" "DOUBLE CIRCLED DIGIT THREE\0" "DOUBLE CIRCLED DIGIT TWO\0" "DOUBLE CIRCLED NUMBER TEN\0" "DOUBLE COLON EQUAL\0" "DOUBLE CURLY LOOP\0" "DOUBLE DAGGER\0" "DOUBLE DOWN TACK\0" "DOUBLE EXCLAMATION MARK\0" "DOUBLE HIGH-REVERSED-9 QUOTATION MARK\0" "DOUBLE INTEGRAL\0" "DOUBLE INTERSECTION\0" "DOUBLE LEFT ARC GREATER-THAN BRACKET\0" "DOUBLE LOGICAL AND\0" "DOUBLE LOGICAL OR\0" "DOUBLE LOW LINE\0" "DOUBLE LOW-9 QUOTATION MARK\0" "DOUBLE NESTED GREATER-THAN\0" "DOUBLE NESTED LESS-THAN\0" "DOUBLE NESTED LESS-THAN WITH UNDERBAR\0" "DOUBLE OBLIQUE HYPHEN\0" "DOUBLE PLUS\0" "DOUBLE PRECEDES\0" "DOUBLE PRIME\0" "DOUBLE PRIME QUOTATION MARK\0" "DOUBLE QUESTION MARK\0" "DOUBLE RIGHT ARC LESS-THAN BRACKET\0" "DOUBLE SOLIDUS OPERATOR\0" "DOUBLE SQUARE INTERSECTION\0" "DOUBLE SQUARE UNION\0" "DOUBLE STROKE NOT SIGN\0" "DOUBLE SUBSET\0" "DOUBLE SUCCEEDS\0" "DOUBLE SUPERSET\0" "DOUBLE UNION\0" "DOUBLE UP TACK\0" "DOUBLE VERTICAL BAR DOUBLE LEFT TURNSTILE\0" "DOUBLE VERTICAL BAR DOUBLE RIGHT TURNSTILE\0" "DOUBLE VERTICAL BAR LEFT TURNSTILE\0" "DOUBLE VERTICAL LINE\0" "DOUBLE WAVY OVERLINE\0" "DOUBLE-ENDED MULTIMAP\0" "DOUBLE-LINE EQUAL TO OR GREATER-THAN\0" "DOUBLE-LINE EQUAL TO OR LESS-THAN\0" "DOUBLE-LINE SLANTED EQUAL TO OR GREATER-THAN\0" "DOUBLE-LINE SLANTED EQUAL TO OR LESS-THAN\0" "DOUBLE-LINE SLANTED GREATER-THAN OR EQUAL TO\0" "DOUBLE-LINE SLANTED LESS-THAN OR EQUAL TO\0" "DOUBLE-STRUCK CAPITAL C\0" "DOUBLE-STRUCK CAPITAL GAMMA\0" "DOUBLE-STRUCK CAPITAL H\0" "DOUBLE-STRUCK CAPITAL N\0" "DOUBLE-STRUCK CAPITAL P\0" "DOUBLE-STRUCK CAPITAL PI\0" "DOUBLE-STRUCK CAPITAL Q\0" "DOUBLE-STRUCK CAPITAL R\0" "DOUBLE-STRUCK CAPITAL Z\0" "DOUBLE-STRUCK ITALIC CAPITAL D\0" "DOUBLE-STRUCK ITALIC SMALL D\0" "DOUBLE-STRUCK ITALIC SMALL E\0" "DOUBLE-STRUCK ITALIC SMALL I\0" "DOUBLE-STRUCK ITALIC SMALL J\0" "DOUBLE-STRUCK N-ARY SUMMATION\0" "DOUBLE-STRUCK SMALL GAMMA\0" "DOUBLE-STRUCK SMALL PI\0" "DOUBLED FEMALE SIGN\0" "DOUBLED MALE SIGN\0" "DOUGHNUT\0" "DOWN ARROWHEAD\0" "DOWN FISH TAIL\0" "DOWN RIGHT DIAGONAL ELLIPSIS\0" "DOWN TACK\0" "DOWN TACK WITH CIRCLE BELOW\0" "DOWN-POINTING RED TRIANGLE\0" "DOWN-POINTING SMALL RED TRIANGLE\0" "DOWN-POINTING TRIANGLE WITH LEFT HALF BLACK\0" "DOWN-POINTING TRIANGLE WITH RIGHT HALF BLACK\0" "DOWNWARDS ANCORA\0" "DOWNWARDS ARROW\0" "DOWNWARDS ARROW FROM BAR\0" "DOWNWARDS ARROW LEFTWARDS OF UPWARDS ARROW\0" "DOWNWARDS ARROW TO BAR\0" "DOWNWARDS ARROW WITH CORNER LEFTWARDS\0" "DOWNWARDS ARROW WITH DOUBLE STROKE\0" "DOWNWARDS ARROW WITH HORIZONTAL STROKE\0" "DOWNWARDS ARROW WITH TIP LEFTWARDS\0" "DOWNWARDS ARROW WITH TIP RIGHTWARDS\0" "DOWNWARDS BLACK ARROW\0" "DOWNWARDS DASHED ARROW\0" "DOWNWARDS DOUBLE ARROW\0" "DOWNWARDS HARPOON WITH BARB LEFT BESIDE DOWNWARDS HARPOON WITH BARB RIGHT\0" "DOWNWARDS HARPOON WITH BARB LEFT BESIDE UPWARDS HARPOON WITH BARB RIGHT\0" "DOWNWARDS HARPOON WITH BARB LEFT FROM BAR\0" "DOWNWARDS HARPOON WITH BARB LEFT TO BAR\0" "DOWNWARDS HARPOON WITH BARB LEFTWARDS\0" "DOWNWARDS HARPOON WITH BARB RIGHT FROM BAR\0" "DOWNWARDS HARPOON WITH BARB RIGHT TO BAR\0" "DOWNWARDS HARPOON WITH BARB RIGHTWARDS\0" "DOWNWARDS PAIRED ARROWS\0" "DOWNWARDS QUADRUPLE ARROW\0" "DOWNWARDS TRIPLE ARROW\0" "DOWNWARDS TWO HEADED ARROW\0" "DOWNWARDS WHITE ARROW\0" "DOWNWARDS ZIGZAG ARROW\0" "DRACHMA SIGN\0" "DRAFTING POINT RIGHTWARDS ARROW\0" "DRAGON\0" "DRAGON FACE\0" "DRESS\0" "DRIVE SLOW SIGN\0" "DROMEDARY CAMEL\0" "DROPLET\0" "DVD\0" "E-MAIL SYMBOL\0" "EAR\0" "EAR OF MAIZE\0" "EAR OF RICE\0" "EARTH\0" "EARTH GLOBE AMERICAS\0" "EARTH GLOBE ASIA-AUSTRALIA\0" "EARTH GLOBE EUROPE-AFRICA\0" "EARTH GROUND\0" "EAST SYRIAC CROSS\0" "EDITORIAL CORONIS\0" "EGYPTIAN HIEROGLYPH A001\0" "EGYPTIAN HIEROGLYPH A002\0" "EGYPTIAN HIEROGLYPH A003\0" "EGYPTIAN HIEROGLYPH A004\0" "EGYPTIAN HIEROGLYPH A005\0" "EGYPTIAN HIEROGLYPH A005A\0" "EGYPTIAN HIEROGLYPH A006\0" "EGYPTIAN HIEROGLYPH A006A\0" "EGYPTIAN HIEROGLYPH A006B\0" "EGYPTIAN HIEROGLYPH A007\0" "EGYPTIAN HIEROGLYPH A008\0" "EGYPTIAN HIEROGLYPH A009\0" "EGYPTIAN HIEROGLYPH A010\0" "EGYPTIAN HIEROGLYPH A011\0" "EGYPTIAN HIEROGLYPH A012\0" "EGYPTIAN HIEROGLYPH A013\0" "EGYPTIAN HIEROGLYPH A014\0" "EGYPTIAN HIEROGLYPH A014A\0" "EGYPTIAN HIEROGLYPH A015\0" "EGYPTIAN HIEROGLYPH A016\0" "EGYPTIAN HIEROGLYPH A017\0" "EGYPTIAN HIEROGLYPH A017A\0" "EGYPTIAN HIEROGLYPH A018\0" "EGYPTIAN HIEROGLYPH A019\0" "EGYPTIAN HIEROGLYPH A020\0" "EGYPTIAN HIEROGLYPH A021\0" "EGYPTIAN HIEROGLYPH A022\0" "EGYPTIAN HIEROGLYPH A023\0" "EGYPTIAN HIEROGLYPH A024\0" "EGYPTIAN HIEROGLYPH A025\0" "EGYPTIAN HIEROGLYPH A026\0" "EGYPTIAN HIEROGLYPH A027\0" "EGYPTIAN HIEROGLYPH A028\0" "EGYPTIAN HIEROGLYPH A029\0" "EGYPTIAN HIEROGLYPH A030\0" "EGYPTIAN HIEROGLYPH A031\0" "EGYPTIAN HIEROGLYPH A032\0" "EGYPTIAN HIEROGLYPH A032A\0" "EGYPTIAN HIEROGLYPH A033\0" "EGYPTIAN HIEROGLYPH A034\0" "EGYPTIAN HIEROGLYPH A035\0" "EGYPTIAN HIEROGLYPH A036\0" "EGYPTIAN HIEROGLYPH A037\0" "EGYPTIAN HIEROGLYPH A038\0" "EGYPTIAN HIEROGLYPH A039\0" "EGYPTIAN HIEROGLYPH A040\0" "EGYPTIAN HIEROGLYPH A040A\0" "EGYPTIAN HIEROGLYPH A041\0" "EGYPTIAN HIEROGLYPH A042\0" "EGYPTIAN HIEROGLYPH A042A\0" "EGYPTIAN HIEROGLYPH A043\0" "EGYPTIAN HIEROGLYPH A043A\0" "EGYPTIAN HIEROGLYPH A044\0" "EGYPTIAN HIEROGLYPH A045\0" "EGYPTIAN HIEROGLYPH A045A\0" "EGYPTIAN HIEROGLYPH A046\0" "EGYPTIAN HIEROGLYPH A047\0" "EGYPTIAN HIEROGLYPH A048\0" "EGYPTIAN HIEROGLYPH A049\0" "EGYPTIAN HIEROGLYPH A050\0" "EGYPTIAN HIEROGLYPH A051\0" "EGYPTIAN HIEROGLYPH A052\0" "EGYPTIAN HIEROGLYPH A053\0" "EGYPTIAN HIEROGLYPH A054\0" "EGYPTIAN HIEROGLYPH A055\0" "EGYPTIAN HIEROGLYPH A056\0" "EGYPTIAN HIEROGLYPH A057\0" "EGYPTIAN HIEROGLYPH A058\0" "EGYPTIAN HIEROGLYPH A059\0" "EGYPTIAN HIEROGLYPH A060\0" "EGYPTIAN HIEROGLYPH A061\0" "EGYPTIAN HIEROGLYPH A062\0" "EGYPTIAN HIEROGLYPH A063\0" "EGYPTIAN HIEROGLYPH A064\0" "EGYPTIAN HIEROGLYPH A065\0" "EGYPTIAN HIEROGLYPH A066\0" "EGYPTIAN HIEROGLYPH A067\0" "EGYPTIAN HIEROGLYPH A068\0" "EGYPTIAN HIEROGLYPH A069\0" "EGYPTIAN HIEROGLYPH A070\0" "EGYPTIAN HIEROGLYPH AA001\0" "EGYPTIAN HIEROGLYPH AA002\0" "EGYPTIAN HIEROGLYPH AA003\0" "EGYPTIAN HIEROGLYPH AA004\0" "EGYPTIAN HIEROGLYPH AA005\0" "EGYPTIAN HIEROGLYPH AA006\0" "EGYPTIAN HIEROGLYPH AA007\0" "EGYPTIAN HIEROGLYPH AA007A\0" "EGYPTIAN HIEROGLYPH AA007B\0" "EGYPTIAN HIEROGLYPH AA008\0" "EGYPTIAN HIEROGLYPH AA009\0" "EGYPTIAN HIEROGLYPH AA010\0" "EGYPTIAN HIEROGLYPH AA011\0" "EGYPTIAN HIEROGLYPH AA012\0" "EGYPTIAN HIEROGLYPH AA013\0" "EGYPTIAN HIEROGLYPH AA014\0" "EGYPTIAN HIEROGLYPH AA015\0" "EGYPTIAN HIEROGLYPH AA016\0" "EGYPTIAN HIEROGLYPH AA017\0" "EGYPTIAN HIEROGLYPH AA018\0" "EGYPTIAN HIEROGLYPH AA019\0" "EGYPTIAN HIEROGLYPH AA020\0" "EGYPTIAN HIEROGLYPH AA021\0" "EGYPTIAN HIEROGLYPH AA022\0" "EGYPTIAN HIEROGLYPH AA023\0" "EGYPTIAN HIEROGLYPH AA024\0" "EGYPTIAN HIEROGLYPH AA025\0" "EGYPTIAN HIEROGLYPH AA026\0" "EGYPTIAN HIEROGLYPH AA027\0" "EGYPTIAN HIEROGLYPH AA028\0" "EGYPTIAN HIEROGLYPH AA029\0" "EGYPTIAN HIEROGLYPH AA030\0" "EGYPTIAN HIEROGLYPH AA031\0" "EGYPTIAN HIEROGLYPH AA032\0" "EGYPTIAN HIEROGLYPH B001\0" "EGYPTIAN HIEROGLYPH B002\0" "EGYPTIAN HIEROGLYPH B003\0" "EGYPTIAN HIEROGLYPH B004\0" "EGYPTIAN HIEROGLYPH B005\0" "EGYPTIAN HIEROGLYPH B005A\0" "EGYPTIAN HIEROGLYPH B006\0" "EGYPTIAN HIEROGLYPH B007\0" "EGYPTIAN HIEROGLYPH B008\0" "EGYPTIAN HIEROGLYPH B009\0" "EGYPTIAN HIEROGLYPH C001\0" "EGYPTIAN HIEROGLYPH C002\0" "EGYPTIAN HIEROGLYPH C002A\0" "EGYPTIAN HIEROGLYPH C002B\0" "EGYPTIAN HIEROGLYPH C002C\0" "EGYPTIAN HIEROGLYPH C003\0" "EGYPTIAN HIEROGLYPH C004\0" "EGYPTIAN HIEROGLYPH C005\0" "EGYPTIAN HIEROGLYPH C006\0" "EGYPTIAN HIEROGLYPH C007\0" "EGYPTIAN HIEROGLYPH C008\0" "EGYPTIAN HIEROGLYPH C009\0" "EGYPTIAN HIEROGLYPH C010\0" "EGYPTIAN HIEROGLYPH C010A\0" "EGYPTIAN HIEROGLYPH C011\0" "EGYPTIAN HIEROGLYPH C012\0" "EGYPTIAN HIEROGLYPH C013\0" "EGYPTIAN HIEROGLYPH C014\0" "EGYPTIAN HIEROGLYPH C015\0" "EGYPTIAN HIEROGLYPH C016\0" "EGYPTIAN HIEROGLYPH C017\0" "EGYPTIAN HIEROGLYPH C018\0" "EGYPTIAN HIEROGLYPH C019\0" "EGYPTIAN HIEROGLYPH C020\0" "EGYPTIAN HIEROGLYPH C021\0" "EGYPTIAN HIEROGLYPH C022\0" "EGYPTIAN HIEROGLYPH C023\0" "EGYPTIAN HIEROGLYPH C024\0" "EGYPTIAN HIEROGLYPH D001\0" "EGYPTIAN HIEROGLYPH D002\0" "EGYPTIAN HIEROGLYPH D003\0" "EGYPTIAN HIEROGLYPH D004\0" "EGYPTIAN HIEROGLYPH D005\0" "EGYPTIAN HIEROGLYPH D006\0" "EGYPTIAN HIEROGLYPH D007\0" "EGYPTIAN HIEROGLYPH D008\0" "EGYPTIAN HIEROGLYPH D008A\0" "EGYPTIAN HIEROGLYPH D009\0" "EGYPTIAN HIEROGLYPH D010\0" "EGYPTIAN HIEROGLYPH D011\0" "EGYPTIAN HIEROGLYPH D012\0" "EGYPTIAN HIEROGLYPH D013\0" "EGYPTIAN HIEROGLYPH D014\0" "EGYPTIAN HIEROGLYPH D015\0" "EGYPTIAN HIEROGLYPH D016\0" "EGYPTIAN HIEROGLYPH D017\0" "EGYPTIAN HIEROGLYPH D018\0" "EGYPTIAN HIEROGLYPH D019\0" "EGYPTIAN HIEROGLYPH D020\0" "EGYPTIAN HIEROGLYPH D021\0" "EGYPTIAN HIEROGLYPH D022\0" "EGYPTIAN HIEROGLYPH D023\0" "EGYPTIAN HIEROGLYPH D024\0" "EGYPTIAN HIEROGLYPH D025\0" "EGYPTIAN HIEROGLYPH D026\0" "EGYPTIAN HIEROGLYPH D027\0" "EGYPTIAN HIEROGLYPH D027A\0" "EGYPTIAN HIEROGLYPH D028\0" "EGYPTIAN HIEROGLYPH D029\0" "EGYPTIAN HIEROGLYPH D030\0" "EGYPTIAN HIEROGLYPH D031\0" "EGYPTIAN HIEROGLYPH D031A\0" "EGYPTIAN HIEROGLYPH D032\0" "EGYPTIAN HIEROGLYPH D033\0" "EGYPTIAN HIEROGLYPH D034\0" "EGYPTIAN HIEROGLYPH D034A\0" "EGYPTIAN HIEROGLYPH D035\0" "EGYPTIAN HIEROGLYPH D036\0" "EGYPTIAN HIEROGLYPH D037\0" "EGYPTIAN HIEROGLYPH D038\0" "EGYPTIAN HIEROGLYPH D039\0" "EGYPTIAN HIEROGLYPH D040\0" "EGYPTIAN HIEROGLYPH D041\0" "EGYPTIAN HIEROGLYPH D042\0" "EGYPTIAN HIEROGLYPH D043\0" "EGYPTIAN HIEROGLYPH D044\0" "EGYPTIAN HIEROGLYPH D045\0" "EGYPTIAN HIEROGLYPH D046\0" "EGYPTIAN HIEROGLYPH D046A\0" "EGYPTIAN HIEROGLYPH D047\0" "EGYPTIAN HIEROGLYPH D048\0" "EGYPTIAN HIEROGLYPH D048A\0" "EGYPTIAN HIEROGLYPH D049\0" "EGYPTIAN HIEROGLYPH D050\0" "EGYPTIAN HIEROGLYPH D050A\0" "EGYPTIAN HIEROGLYPH D050B\0" "EGYPTIAN HIEROGLYPH D050C\0" "EGYPTIAN HIEROGLYPH D050D\0" "EGYPTIAN HIEROGLYPH D050E\0" "EGYPTIAN HIEROGLYPH D050F\0" "EGYPTIAN HIEROGLYPH D050G\0" "EGYPTIAN HIEROGLYPH D050H\0" "EGYPTIAN HIEROGLYPH D050I\0" "EGYPTIAN HIEROGLYPH D051\0" "EGYPTIAN HIEROGLYPH D052\0" "EGYPTIAN HIEROGLYPH D052A\0" "EGYPTIAN HIEROGLYPH D053\0" "EGYPTIAN HIEROGLYPH D054\0" "EGYPTIAN HIEROGLYPH D054A\0" "EGYPTIAN HIEROGLYPH D055\0" "EGYPTIAN HIEROGLYPH D056\0" "EGYPTIAN HIEROGLYPH D057\0" "EGYPTIAN HIEROGLYPH D058\0" "EGYPTIAN HIEROGLYPH D059\0" "EGYPTIAN HIEROGLYPH D060\0" "EGYPTIAN HIEROGLYPH D061\0" "EGYPTIAN HIEROGLYPH D062\0" "EGYPTIAN HIEROGLYPH D063\0" "EGYPTIAN HIEROGLYPH D064\0" "EGYPTIAN HIEROGLYPH D065\0" "EGYPTIAN HIEROGLYPH D066\0" "EGYPTIAN HIEROGLYPH D067\0" "EGYPTIAN HIEROGLYPH D067A\0" "EGYPTIAN HIEROGLYPH D067B\0" "EGYPTIAN HIEROGLYPH D067C\0" "EGYPTIAN HIEROGLYPH D067D\0" "EGYPTIAN HIEROGLYPH D067E\0" "EGYPTIAN HIEROGLYPH D067F\0" "EGYPTIAN HIEROGLYPH D067G\0" "EGYPTIAN HIEROGLYPH D067H\0" "EGYPTIAN HIEROGLYPH E001\0" "EGYPTIAN HIEROGLYPH E002\0" "EGYPTIAN HIEROGLYPH E003\0" "EGYPTIAN HIEROGLYPH E004\0" "EGYPTIAN HIEROGLYPH E005\0" "EGYPTIAN HIEROGLYPH E006\0" "EGYPTIAN HIEROGLYPH E007\0" "EGYPTIAN HIEROGLYPH E008\0" "EGYPTIAN HIEROGLYPH E008A\0" "EGYPTIAN HIEROGLYPH E009\0" "EGYPTIAN HIEROGLYPH E009A\0" "EGYPTIAN HIEROGLYPH E010\0" "EGYPTIAN HIEROGLYPH E011\0" "EGYPTIAN HIEROGLYPH E012\0" "EGYPTIAN HIEROGLYPH E013\0" "EGYPTIAN HIEROGLYPH E014\0" "EGYPTIAN HIEROGLYPH E015\0" "EGYPTIAN HIEROGLYPH E016\0" "EGYPTIAN HIEROGLYPH E016A\0" "EGYPTIAN HIEROGLYPH E017\0" "EGYPTIAN HIEROGLYPH E017A\0" "EGYPTIAN HIEROGLYPH E018\0" "EGYPTIAN HIEROGLYPH E019\0" "EGYPTIAN HIEROGLYPH E020\0" "EGYPTIAN HIEROGLYPH E020A\0" "EGYPTIAN HIEROGLYPH E021\0" "EGYPTIAN HIEROGLYPH E022\0" "EGYPTIAN HIEROGLYPH E023\0" "EGYPTIAN HIEROGLYPH E024\0" "EGYPTIAN HIEROGLYPH E025\0" "EGYPTIAN HIEROGLYPH E026\0" "EGYPTIAN HIEROGLYPH E027\0" "EGYPTIAN HIEROGLYPH E028\0" "EGYPTIAN HIEROGLYPH E028A\0" "EGYPTIAN HIEROGLYPH E029\0" "EGYPTIAN HIEROGLYPH E030\0" "EGYPTIAN HIEROGLYPH E031\0" "EGYPTIAN HIEROGLYPH E032\0" "EGYPTIAN HIEROGLYPH E033\0" "EGYPTIAN HIEROGLYPH E034\0" "EGYPTIAN HIEROGLYPH E034A\0" "EGYPTIAN HIEROGLYPH E036\0" "EGYPTIAN HIEROGLYPH E037\0" "EGYPTIAN HIEROGLYPH E038\0" "EGYPTIAN HIEROGLYPH F001\0" "EGYPTIAN HIEROGLYPH F001A\0" "EGYPTIAN HIEROGLYPH F002\0" "EGYPTIAN HIEROGLYPH F003\0" "EGYPTIAN HIEROGLYPH F004\0" "EGYPTIAN HIEROGLYPH F005\0" "EGYPTIAN HIEROGLYPH F006\0" "EGYPTIAN HIEROGLYPH F007\0" "EGYPTIAN HIEROGLYPH F008\0" "EGYPTIAN HIEROGLYPH F009\0" "EGYPTIAN HIEROGLYPH F010\0" "EGYPTIAN HIEROGLYPH F011\0" "EGYPTIAN HIEROGLYPH F012\0" "EGYPTIAN HIEROGLYPH F013\0" "EGYPTIAN HIEROGLYPH F013A\0" "EGYPTIAN HIEROGLYPH F014\0" "EGYPTIAN HIEROGLYPH F015\0" "EGYPTIAN HIEROGLYPH F016\0" "EGYPTIAN HIEROGLYPH F017\0" "EGYPTIAN HIEROGLYPH F018\0" "EGYPTIAN HIEROGLYPH F019\0" "EGYPTIAN HIEROGLYPH F020\0" "EGYPTIAN HIEROGLYPH F021\0" "EGYPTIAN HIEROGLYPH F021A\0" "EGYPTIAN HIEROGLYPH F022\0" "EGYPTIAN HIEROGLYPH F023\0" "EGYPTIAN HIEROGLYPH F024\0" "EGYPTIAN HIEROGLYPH F025\0" "EGYPTIAN HIEROGLYPH F026\0" "EGYPTIAN HIEROGLYPH F027\0" "EGYPTIAN HIEROGLYPH F028\0" "EGYPTIAN HIEROGLYPH F029\0" "EGYPTIAN HIEROGLYPH F030\0" "EGYPTIAN HIEROGLYPH F031\0" "EGYPTIAN HIEROGLYPH F031A\0" "EGYPTIAN HIEROGLYPH F032\0" "EGYPTIAN HIEROGLYPH F033\0" "EGYPTIAN HIEROGLYPH F034\0" "EGYPTIAN HIEROGLYPH F035\0" "EGYPTIAN HIEROGLYPH F036\0" "EGYPTIAN HIEROGLYPH F037\0" "EGYPTIAN HIEROGLYPH F037A\0" "EGYPTIAN HIEROGLYPH F038\0" "EGYPTIAN HIEROGLYPH F038A\0" "EGYPTIAN HIEROGLYPH F039\0" "EGYPTIAN HIEROGLYPH F040\0" "EGYPTIAN HIEROGLYPH F041\0" "EGYPTIAN HIEROGLYPH F042\0" "EGYPTIAN HIEROGLYPH F043\0" "EGYPTIAN HIEROGLYPH F044\0" "EGYPTIAN HIEROGLYPH F045\0" "EGYPTIAN HIEROGLYPH F045A\0" "EGYPTIAN HIEROGLYPH F046\0" "EGYPTIAN HIEROGLYPH F046A\0" "EGYPTIAN HIEROGLYPH F047\0" "EGYPTIAN HIEROGLYPH F047A\0" "EGYPTIAN HIEROGLYPH F048\0" "EGYPTIAN HIEROGLYPH F049\0" "EGYPTIAN HIEROGLYPH F050\0" "EGYPTIAN HIEROGLYPH F051\0" "EGYPTIAN HIEROGLYPH F051A\0" "EGYPTIAN HIEROGLYPH F051B\0" "EGYPTIAN HIEROGLYPH F051C\0" "EGYPTIAN HIEROGLYPH F052\0" "EGYPTIAN HIEROGLYPH F053\0" "EGYPTIAN HIEROGLYPH G001\0" "EGYPTIAN HIEROGLYPH G002\0" "EGYPTIAN HIEROGLYPH G003\0" "EGYPTIAN HIEROGLYPH G004\0" "EGYPTIAN HIEROGLYPH G005\0" "EGYPTIAN HIEROGLYPH G006\0" "EGYPTIAN HIEROGLYPH G006A\0" "EGYPTIAN HIEROGLYPH G007\0" "EGYPTIAN HIEROGLYPH G007A\0" "EGYPTIAN HIEROGLYPH G007B\0" "EGYPTIAN HIEROGLYPH G008\0" "EGYPTIAN HIEROGLYPH G009\0" "EGYPTIAN HIEROGLYPH G010\0" "EGYPTIAN HIEROGLYPH G011\0" "EGYPTIAN HIEROGLYPH G011A\0" "EGYPTIAN HIEROGLYPH G012\0" "EGYPTIAN HIEROGLYPH G013\0" "EGYPTIAN HIEROGLYPH G014\0" "EGYPTIAN HIEROGLYPH G015\0" "EGYPTIAN HIEROGLYPH G016\0" "EGYPTIAN HIEROGLYPH G017\0" "EGYPTIAN HIEROGLYPH G018\0" "EGYPTIAN HIEROGLYPH G019\0" "EGYPTIAN HIEROGLYPH G020\0" "EGYPTIAN HIEROGLYPH G020A\0" "EGYPTIAN HIEROGLYPH G021\0" "EGYPTIAN HIEROGLYPH G022\0" "EGYPTIAN HIEROGLYPH G023\0" "EGYPTIAN HIEROGLYPH G024\0" "EGYPTIAN HIEROGLYPH G025\0" "EGYPTIAN HIEROGLYPH G026\0" "EGYPTIAN HIEROGLYPH G026A\0" "EGYPTIAN HIEROGLYPH G027\0" "EGYPTIAN HIEROGLYPH G028\0" "EGYPTIAN HIEROGLYPH G029\0" "EGYPTIAN HIEROGLYPH G030\0" "EGYPTIAN HIEROGLYPH G031\0" "EGYPTIAN HIEROGLYPH G032\0" "EGYPTIAN HIEROGLYPH G033\0" "EGYPTIAN HIEROGLYPH G034\0" "EGYPTIAN HIEROGLYPH G035\0" "EGYPTIAN HIEROGLYPH G036\0" "EGYPTIAN HIEROGLYPH G036A\0" "EGYPTIAN HIEROGLYPH G037\0" "EGYPTIAN HIEROGLYPH G037A\0" "EGYPTIAN HIEROGLYPH G038\0" "EGYPTIAN HIEROGLYPH G039\0" "EGYPTIAN HIEROGLYPH G040\0" "EGYPTIAN HIEROGLYPH G041\0" "EGYPTIAN HIEROGLYPH G042\0" "EGYPTIAN HIEROGLYPH G043\0" "EGYPTIAN HIEROGLYPH G043A\0" "EGYPTIAN HIEROGLYPH G044\0" "EGYPTIAN HIEROGLYPH G045\0" "EGYPTIAN HIEROGLYPH G045A\0" "EGYPTIAN HIEROGLYPH G046\0" "EGYPTIAN HIEROGLYPH G047\0" "EGYPTIAN HIEROGLYPH G048\0" "EGYPTIAN HIEROGLYPH G049\0" "EGYPTIAN HIEROGLYPH G050\0" "EGYPTIAN HIEROGLYPH G051\0" "EGYPTIAN HIEROGLYPH G052\0" "EGYPTIAN HIEROGLYPH G053\0" "EGYPTIAN HIEROGLYPH G054\0" "EGYPTIAN HIEROGLYPH H001\0" "EGYPTIAN HIEROGLYPH H002\0" "EGYPTIAN HIEROGLYPH H003\0" "EGYPTIAN HIEROGLYPH H004\0" "EGYPTIAN HIEROGLYPH H005\0" "EGYPTIAN HIEROGLYPH H006\0" "EGYPTIAN HIEROGLYPH H006A\0" "EGYPTIAN HIEROGLYPH H007\0" "EGYPTIAN HIEROGLYPH H008\0" "EGYPTIAN HIEROGLYPH I001\0" "EGYPTIAN HIEROGLYPH I002\0" "EGYPTIAN HIEROGLYPH I003\0" "EGYPTIAN HIEROGLYPH I004\0" "EGYPTIAN HIEROGLYPH I005\0" "EGYPTIAN HIEROGLYPH I005A\0" "EGYPTIAN HIEROGLYPH I006\0" "EGYPTIAN HIEROGLYPH I007\0" "EGYPTIAN HIEROGLYPH I008\0" "EGYPTIAN HIEROGLYPH I009\0" "EGYPTIAN HIEROGLYPH I009A\0" "EGYPTIAN HIEROGLYPH I010\0" "EGYPTIAN HIEROGLYPH I010A\0" "EGYPTIAN HIEROGLYPH I011\0" "EGYPTIAN HIEROGLYPH I011A\0" "EGYPTIAN HIEROGLYPH I012\0" "EGYPTIAN HIEROGLYPH I013\0" "EGYPTIAN HIEROGLYPH I014\0" "EGYPTIAN HIEROGLYPH I015\0" "EGYPTIAN HIEROGLYPH K001\0" "EGYPTIAN HIEROGLYPH K002\0" "EGYPTIAN HIEROGLYPH K003\0" "EGYPTIAN HIEROGLYPH K004\0" "EGYPTIAN HIEROGLYPH K005\0" "EGYPTIAN HIEROGLYPH K006\0" "EGYPTIAN HIEROGLYPH K007\0" "EGYPTIAN HIEROGLYPH K008\0" "EGYPTIAN HIEROGLYPH L001\0" "EGYPTIAN HIEROGLYPH L002\0" "EGYPTIAN HIEROGLYPH L002A\0" "EGYPTIAN HIEROGLYPH L003\0" "EGYPTIAN HIEROGLYPH L004\0" "EGYPTIAN HIEROGLYPH L005\0" "EGYPTIAN HIEROGLYPH L006\0" "EGYPTIAN HIEROGLYPH L006A\0" "EGYPTIAN HIEROGLYPH L007\0" "EGYPTIAN HIEROGLYPH L008\0" "EGYPTIAN HIEROGLYPH M001\0" "EGYPTIAN HIEROGLYPH M001A\0" "EGYPTIAN HIEROGLYPH M001B\0" "EGYPTIAN HIEROGLYPH M002\0" "EGYPTIAN HIEROGLYPH M003\0" "EGYPTIAN HIEROGLYPH M003A\0" "EGYPTIAN HIEROGLYPH M004\0" "EGYPTIAN HIEROGLYPH M005\0" "EGYPTIAN HIEROGLYPH M006\0" "EGYPTIAN HIEROGLYPH M007\0" "EGYPTIAN HIEROGLYPH M008\0" "EGYPTIAN HIEROGLYPH M009\0" "EGYPTIAN HIEROGLYPH M010\0" "EGYPTIAN HIEROGLYPH M010A\0" "EGYPTIAN HIEROGLYPH M011\0" "EGYPTIAN HIEROGLYPH M012\0" "EGYPTIAN HIEROGLYPH M012A\0" "EGYPTIAN HIEROGLYPH M012B\0" "EGYPTIAN HIEROGLYPH M012C\0" "EGYPTIAN HIEROGLYPH M012D\0" "EGYPTIAN HIEROGLYPH M012E\0" "EGYPTIAN HIEROGLYPH M012F\0" "EGYPTIAN HIEROGLYPH M012G\0" "EGYPTIAN HIEROGLYPH M012H\0" "EGYPTIAN HIEROGLYPH M013\0" "EGYPTIAN HIEROGLYPH M014\0" "EGYPTIAN HIEROGLYPH M015\0" "EGYPTIAN HIEROGLYPH M015A\0" "EGYPTIAN HIEROGLYPH M016\0" "EGYPTIAN HIEROGLYPH M016A\0" "EGYPTIAN HIEROGLYPH M017\0" "EGYPTIAN HIEROGLYPH M017A\0" "EGYPTIAN HIEROGLYPH M018\0" "EGYPTIAN HIEROGLYPH M019\0" "EGYPTIAN HIEROGLYPH M020\0" "EGYPTIAN HIEROGLYPH M021\0" "EGYPTIAN HIEROGLYPH M022\0" "EGYPTIAN HIEROGLYPH M022A\0" "EGYPTIAN HIEROGLYPH M023\0" "EGYPTIAN HIEROGLYPH M024\0" "EGYPTIAN HIEROGLYPH M024A\0" "EGYPTIAN HIEROGLYPH M025\0" "EGYPTIAN HIEROGLYPH M026\0" "EGYPTIAN HIEROGLYPH M027\0" "EGYPTIAN HIEROGLYPH M028\0" "EGYPTIAN HIEROGLYPH M028A\0" "EGYPTIAN HIEROGLYPH M029\0" "EGYPTIAN HIEROGLYPH M030\0" "EGYPTIAN HIEROGLYPH M031\0" "EGYPTIAN HIEROGLYPH M031A\0" "EGYPTIAN HIEROGLYPH M032\0" "EGYPTIAN HIEROGLYPH M033\0" "EGYPTIAN HIEROGLYPH M033A\0" "EGYPTIAN HIEROGLYPH M033B\0" "EGYPTIAN HIEROGLYPH M034\0" "EGYPTIAN HIEROGLYPH M035\0" "EGYPTIAN HIEROGLYPH M036\0" "EGYPTIAN HIEROGLYPH M037\0" "EGYPTIAN HIEROGLYPH M038\0" "EGYPTIAN HIEROGLYPH M039\0" "EGYPTIAN HIEROGLYPH M040\0" "EGYPTIAN HIEROGLYPH M040A\0" "EGYPTIAN HIEROGLYPH M041\0" "EGYPTIAN HIEROGLYPH M042\0" "EGYPTIAN HIEROGLYPH M043\0" "EGYPTIAN HIEROGLYPH M044\0" "EGYPTIAN HIEROGLYPH N001\0" "EGYPTIAN HIEROGLYPH N002\0" "EGYPTIAN HIEROGLYPH N003\0" "EGYPTIAN HIEROGLYPH N004\0" "EGYPTIAN HIEROGLYPH N005\0" "EGYPTIAN HIEROGLYPH N006\0" "EGYPTIAN HIEROGLYPH N007\0" "EGYPTIAN HIEROGLYPH N008\0" "EGYPTIAN HIEROGLYPH N009\0" "EGYPTIAN HIEROGLYPH N010\0" "EGYPTIAN HIEROGLYPH N011\0" "EGYPTIAN HIEROGLYPH N012\0" "EGYPTIAN HIEROGLYPH N013\0" "EGYPTIAN HIEROGLYPH N014\0" "EGYPTIAN HIEROGLYPH N015\0" "EGYPTIAN HIEROGLYPH N016\0" "EGYPTIAN HIEROGLYPH N017\0" "EGYPTIAN HIEROGLYPH N018\0" "EGYPTIAN HIEROGLYPH N018A\0" "EGYPTIAN HIEROGLYPH N018B\0" "EGYPTIAN HIEROGLYPH N019\0" "EGYPTIAN HIEROGLYPH N020\0" "EGYPTIAN HIEROGLYPH N021\0" "EGYPTIAN HIEROGLYPH N022\0" "EGYPTIAN HIEROGLYPH N023\0" "EGYPTIAN HIEROGLYPH N024\0" "EGYPTIAN HIEROGLYPH N025\0" "EGYPTIAN HIEROGLYPH N025A\0" "EGYPTIAN HIEROGLYPH N026\0" "EGYPTIAN HIEROGLYPH N027\0" "EGYPTIAN HIEROGLYPH N028\0" "EGYPTIAN HIEROGLYPH N029\0" "EGYPTIAN HIEROGLYPH N030\0" "EGYPTIAN HIEROGLYPH N031\0" "EGYPTIAN HIEROGLYPH N032\0" "EGYPTIAN HIEROGLYPH N033\0" "EGYPTIAN HIEROGLYPH N033A\0" "EGYPTIAN HIEROGLYPH N034\0" "EGYPTIAN HIEROGLYPH N034A\0" "EGYPTIAN HIEROGLYPH N035\0" "EGYPTIAN HIEROGLYPH N035A\0" "EGYPTIAN HIEROGLYPH N036\0" "EGYPTIAN HIEROGLYPH N037\0" "EGYPTIAN HIEROGLYPH N037A\0" "EGYPTIAN HIEROGLYPH N038\0" "EGYPTIAN HIEROGLYPH N039\0" "EGYPTIAN HIEROGLYPH N040\0" "EGYPTIAN HIEROGLYPH N041\0" "EGYPTIAN HIEROGLYPH N042\0" "EGYPTIAN HIEROGLYPH NL001\0" "EGYPTIAN HIEROGLYPH NL002\0" "EGYPTIAN HIEROGLYPH NL003\0" "EGYPTIAN HIEROGLYPH NL004\0" "EGYPTIAN HIEROGLYPH NL005\0" "EGYPTIAN HIEROGLYPH NL005A\0" "EGYPTIAN HIEROGLYPH NL006\0" "EGYPTIAN HIEROGLYPH NL007\0" "EGYPTIAN HIEROGLYPH NL008\0" "EGYPTIAN HIEROGLYPH NL009\0" "EGYPTIAN HIEROGLYPH NL010\0" "EGYPTIAN HIEROGLYPH NL011\0" "EGYPTIAN HIEROGLYPH NL012\0" "EGYPTIAN HIEROGLYPH NL013\0" "EGYPTIAN HIEROGLYPH NL014\0" "EGYPTIAN HIEROGLYPH NL015\0" "EGYPTIAN HIEROGLYPH NL016\0" "EGYPTIAN HIEROGLYPH NL017\0" "EGYPTIAN HIEROGLYPH NL017A\0" "EGYPTIAN HIEROGLYPH NL018\0" "EGYPTIAN HIEROGLYPH NL019\0" "EGYPTIAN HIEROGLYPH NL020\0" "EGYPTIAN HIEROGLYPH NU001\0" "EGYPTIAN HIEROGLYPH NU002\0" "EGYPTIAN HIEROGLYPH NU003\0" "EGYPTIAN HIEROGLYPH NU004\0" "EGYPTIAN HIEROGLYPH NU005\0" "EGYPTIAN HIEROGLYPH NU006\0" "EGYPTIAN HIEROGLYPH NU007\0" "EGYPTIAN HIEROGLYPH NU008\0" "EGYPTIAN HIEROGLYPH NU009\0" "EGYPTIAN HIEROGLYPH NU010\0" "EGYPTIAN HIEROGLYPH NU010A\0" "EGYPTIAN HIEROGLYPH NU011\0" "EGYPTIAN HIEROGLYPH NU011A\0" "EGYPTIAN HIEROGLYPH NU012\0" "EGYPTIAN HIEROGLYPH NU013\0" "EGYPTIAN HIEROGLYPH NU014\0" "EGYPTIAN HIEROGLYPH NU015\0" "EGYPTIAN HIEROGLYPH NU016\0" "EGYPTIAN HIEROGLYPH NU017\0" "EGYPTIAN HIEROGLYPH NU018\0" "EGYPTIAN HIEROGLYPH NU018A\0" "EGYPTIAN HIEROGLYPH NU019\0" "EGYPTIAN HIEROGLYPH NU020\0" "EGYPTIAN HIEROGLYPH NU021\0" "EGYPTIAN HIEROGLYPH NU022\0" "EGYPTIAN HIEROGLYPH NU022A\0" "EGYPTIAN HIEROGLYPH O001\0" "EGYPTIAN HIEROGLYPH O001A\0" "EGYPTIAN HIEROGLYPH O002\0" "EGYPTIAN HIEROGLYPH O003\0" "EGYPTIAN HIEROGLYPH O004\0" "EGYPTIAN HIEROGLYPH O005\0" "EGYPTIAN HIEROGLYPH O005A\0" "EGYPTIAN HIEROGLYPH O006\0" "EGYPTIAN HIEROGLYPH O006A\0" "EGYPTIAN HIEROGLYPH O006B\0" "EGYPTIAN HIEROGLYPH O006C\0" "EGYPTIAN HIEROGLYPH O006D\0" "EGYPTIAN HIEROGLYPH O006E\0" "EGYPTIAN HIEROGLYPH O006F\0" "EGYPTIAN HIEROGLYPH O007\0" "EGYPTIAN HIEROGLYPH O008\0" "EGYPTIAN HIEROGLYPH O009\0" "EGYPTIAN HIEROGLYPH O010\0" "EGYPTIAN HIEROGLYPH O010A\0" "EGYPTIAN HIEROGLYPH O010B\0" "EGYPTIAN HIEROGLYPH O010C\0" "EGYPTIAN HIEROGLYPH O011\0" "EGYPTIAN HIEROGLYPH O012\0" "EGYPTIAN HIEROGLYPH O013\0" "EGYPTIAN HIEROGLYPH O014\0" "EGYPTIAN HIEROGLYPH O015\0" "EGYPTIAN HIEROGLYPH O016\0" "EGYPTIAN HIEROGLYPH O017\0" "EGYPTIAN HIEROGLYPH O018\0" "EGYPTIAN HIEROGLYPH O019\0" "EGYPTIAN HIEROGLYPH O019A\0" "EGYPTIAN HIEROGLYPH O020\0" "EGYPTIAN HIEROGLYPH O020A\0" "EGYPTIAN HIEROGLYPH O021\0" "EGYPTIAN HIEROGLYPH O022\0" "EGYPTIAN HIEROGLYPH O023\0" "EGYPTIAN HIEROGLYPH O024\0" "EGYPTIAN HIEROGLYPH O024A\0" "EGYPTIAN HIEROGLYPH O025\0" "EGYPTIAN HIEROGLYPH O025A\0" "EGYPTIAN HIEROGLYPH O026\0" "EGYPTIAN HIEROGLYPH O027\0" "EGYPTIAN HIEROGLYPH O028\0" "EGYPTIAN HIEROGLYPH O029\0" "EGYPTIAN HIEROGLYPH O029A\0" "EGYPTIAN HIEROGLYPH O030\0" "EGYPTIAN HIEROGLYPH O030A\0" "EGYPTIAN HIEROGLYPH O031\0" "EGYPTIAN HIEROGLYPH O032\0" "EGYPTIAN HIEROGLYPH O033\0" "EGYPTIAN HIEROGLYPH O033A\0" "EGYPTIAN HIEROGLYPH O034\0" "EGYPTIAN HIEROGLYPH O035\0" "EGYPTIAN HIEROGLYPH O036\0" "EGYPTIAN HIEROGLYPH O036A\0" "EGYPTIAN HIEROGLYPH O036B\0" "EGYPTIAN HIEROGLYPH O036C\0" "EGYPTIAN HIEROGLYPH O036D\0" "EGYPTIAN HIEROGLYPH O037\0" "EGYPTIAN HIEROGLYPH O038\0" "EGYPTIAN HIEROGLYPH O039\0" "EGYPTIAN HIEROGLYPH O040\0" "EGYPTIAN HIEROGLYPH O041\0" "EGYPTIAN HIEROGLYPH O042\0" "EGYPTIAN HIEROGLYPH O043\0" "EGYPTIAN HIEROGLYPH O044\0" "EGYPTIAN HIEROGLYPH O045\0" "EGYPTIAN HIEROGLYPH O046\0" "EGYPTIAN HIEROGLYPH O047\0" "EGYPTIAN HIEROGLYPH O048\0" "EGYPTIAN HIEROGLYPH O049\0" "EGYPTIAN HIEROGLYPH O050\0" "EGYPTIAN HIEROGLYPH O050A\0" "EGYPTIAN HIEROGLYPH O050B\0" "EGYPTIAN HIEROGLYPH O051\0" "EGYPTIAN HIEROGLYPH P001\0" "EGYPTIAN HIEROGLYPH P001A\0" "EGYPTIAN HIEROGLYPH P002\0" "EGYPTIAN HIEROGLYPH P003\0" "EGYPTIAN HIEROGLYPH P003A\0" "EGYPTIAN HIEROGLYPH P004\0" "EGYPTIAN HIEROGLYPH P005\0" "EGYPTIAN HIEROGLYPH P006\0" "EGYPTIAN HIEROGLYPH P007\0" "EGYPTIAN HIEROGLYPH P008\0" "EGYPTIAN HIEROGLYPH P009\0" "EGYPTIAN HIEROGLYPH P010\0" "EGYPTIAN HIEROGLYPH P011\0" "EGYPTIAN HIEROGLYPH Q001\0" "EGYPTIAN HIEROGLYPH Q002\0" "EGYPTIAN HIEROGLYPH Q003\0" "EGYPTIAN HIEROGLYPH Q004\0" "EGYPTIAN HIEROGLYPH Q005\0" "EGYPTIAN HIEROGLYPH Q006\0" "EGYPTIAN HIEROGLYPH Q007\0" "EGYPTIAN HIEROGLYPH R001\0" "EGYPTIAN HIEROGLYPH R002\0" "EGYPTIAN HIEROGLYPH R002A\0" "EGYPTIAN HIEROGLYPH R003\0" "EGYPTIAN HIEROGLYPH R003A\0" "EGYPTIAN HIEROGLYPH R003B\0" "EGYPTIAN HIEROGLYPH R004\0" "EGYPTIAN HIEROGLYPH R005\0" "EGYPTIAN HIEROGLYPH R006\0" "EGYPTIAN HIEROGLYPH R007\0" "EGYPTIAN HIEROGLYPH R008\0" "EGYPTIAN HIEROGLYPH R009\0" "EGYPTIAN HIEROGLYPH R010\0" "EGYPTIAN HIEROGLYPH R010A\0" "EGYPTIAN HIEROGLYPH R011\0" "EGYPTIAN HIEROGLYPH R012\0" "EGYPTIAN HIEROGLYPH R013\0" "EGYPTIAN HIEROGLYPH R014\0" "EGYPTIAN HIEROGLYPH R015\0" "EGYPTIAN HIEROGLYPH R016\0" "EGYPTIAN HIEROGLYPH R016A\0" "EGYPTIAN HIEROGLYPH R017\0" "EGYPTIAN HIEROGLYPH R018\0" "EGYPTIAN HIEROGLYPH R019\0" "EGYPTIAN HIEROGLYPH R020\0" "EGYPTIAN HIEROGLYPH R021\0" "EGYPTIAN HIEROGLYPH R022\0" "EGYPTIAN HIEROGLYPH R023\0" "EGYPTIAN HIEROGLYPH R024\0" "EGYPTIAN HIEROGLYPH R025\0" "EGYPTIAN HIEROGLYPH R026\0" "EGYPTIAN HIEROGLYPH R027\0" "EGYPTIAN HIEROGLYPH R028\0" "EGYPTIAN HIEROGLYPH R029\0" "EGYPTIAN HIEROGLYPH S001\0" "EGYPTIAN HIEROGLYPH S002\0" "EGYPTIAN HIEROGLYPH S002A\0" "EGYPTIAN HIEROGLYPH S003\0" "EGYPTIAN HIEROGLYPH S004\0" "EGYPTIAN HIEROGLYPH S005\0" "EGYPTIAN HIEROGLYPH S006\0" "EGYPTIAN HIEROGLYPH S006A\0" "EGYPTIAN HIEROGLYPH S007\0" "EGYPTIAN HIEROGLYPH S008\0" "EGYPTIAN HIEROGLYPH S009\0" "EGYPTIAN HIEROGLYPH S010\0" "EGYPTIAN HIEROGLYPH S011\0" "EGYPTIAN HIEROGLYPH S012\0" "EGYPTIAN HIEROGLYPH S013\0" "EGYPTIAN HIEROGLYPH S014\0" "EGYPTIAN HIEROGLYPH S014A\0" "EGYPTIAN HIEROGLYPH S014B\0" "EGYPTIAN HIEROGLYPH S015\0" "EGYPTIAN HIEROGLYPH S016\0" "EGYPTIAN HIEROGLYPH S017\0" "EGYPTIAN HIEROGLYPH S017A\0" "EGYPTIAN HIEROGLYPH S018\0" "EGYPTIAN HIEROGLYPH S019\0" "EGYPTIAN HIEROGLYPH S020\0" "EGYPTIAN HIEROGLYPH S021\0" "EGYPTIAN HIEROGLYPH S022\0" "EGYPTIAN HIEROGLYPH S023\0" "EGYPTIAN HIEROGLYPH S024\0" "EGYPTIAN HIEROGLYPH S025\0" "EGYPTIAN HIEROGLYPH S026\0" "EGYPTIAN HIEROGLYPH S026A\0" "EGYPTIAN HIEROGLYPH S026B\0" "EGYPTIAN HIEROGLYPH S027\0" "EGYPTIAN HIEROGLYPH S028\0" "EGYPTIAN HIEROGLYPH S029\0" "EGYPTIAN HIEROGLYPH S030\0" "EGYPTIAN HIEROGLYPH S031\0" "EGYPTIAN HIEROGLYPH S032\0" "EGYPTIAN HIEROGLYPH S033\0" "EGYPTIAN HIEROGLYPH S034\0" "EGYPTIAN HIEROGLYPH S035\0" "EGYPTIAN HIEROGLYPH S035A\0" "EGYPTIAN HIEROGLYPH S036\0" "EGYPTIAN HIEROGLYPH S037\0" "EGYPTIAN HIEROGLYPH S038\0" "EGYPTIAN HIEROGLYPH S039\0" "EGYPTIAN HIEROGLYPH S040\0" "EGYPTIAN HIEROGLYPH S041\0" "EGYPTIAN HIEROGLYPH S042\0" "EGYPTIAN HIEROGLYPH S043\0" "EGYPTIAN HIEROGLYPH S044\0" "EGYPTIAN HIEROGLYPH S045\0" "EGYPTIAN HIEROGLYPH S046\0" "EGYPTIAN HIEROGLYPH T001\0" "EGYPTIAN HIEROGLYPH T002\0" "EGYPTIAN HIEROGLYPH T003\0" "EGYPTIAN HIEROGLYPH T003A\0" "EGYPTIAN HIEROGLYPH T004\0" "EGYPTIAN HIEROGLYPH T005\0" "EGYPTIAN HIEROGLYPH T006\0" "EGYPTIAN HIEROGLYPH T007\0" "EGYPTIAN HIEROGLYPH T007A\0" "EGYPTIAN HIEROGLYPH T008\0" "EGYPTIAN HIEROGLYPH T008A\0" "EGYPTIAN HIEROGLYPH T009\0" "EGYPTIAN HIEROGLYPH T009A\0" "EGYPTIAN HIEROGLYPH T010\0" "EGYPTIAN HIEROGLYPH T011\0" "EGYPTIAN HIEROGLYPH T011A\0" "EGYPTIAN HIEROGLYPH T012\0" "EGYPTIAN HIEROGLYPH T013\0" "EGYPTIAN HIEROGLYPH T014\0" "EGYPTIAN HIEROGLYPH T015\0" "EGYPTIAN HIEROGLYPH T016\0" "EGYPTIAN HIEROGLYPH T016A\0" "EGYPTIAN HIEROGLYPH T017\0" "EGYPTIAN HIEROGLYPH T018\0" "EGYPTIAN HIEROGLYPH T019\0" "EGYPTIAN HIEROGLYPH T020\0" "EGYPTIAN HIEROGLYPH T021\0" "EGYPTIAN HIEROGLYPH T022\0" "EGYPTIAN HIEROGLYPH T023\0" "EGYPTIAN HIEROGLYPH T024\0" "EGYPTIAN HIEROGLYPH T025\0" "EGYPTIAN HIEROGLYPH T026\0" "EGYPTIAN HIEROGLYPH T027\0" "EGYPTIAN HIEROGLYPH T028\0" "EGYPTIAN HIEROGLYPH T029\0" "EGYPTIAN HIEROGLYPH T030\0" "EGYPTIAN HIEROGLYPH T031\0" "EGYPTIAN HIEROGLYPH T032\0" "EGYPTIAN HIEROGLYPH T032A\0" "EGYPTIAN HIEROGLYPH T033\0" "EGYPTIAN HIEROGLYPH T033A\0" "EGYPTIAN HIEROGLYPH T034\0" "EGYPTIAN HIEROGLYPH T035\0" "EGYPTIAN HIEROGLYPH T036\0" "EGYPTIAN HIEROGLYPH U001\0" "EGYPTIAN HIEROGLYPH U002\0" "EGYPTIAN HIEROGLYPH U003\0" "EGYPTIAN HIEROGLYPH U004\0" "EGYPTIAN HIEROGLYPH U005\0" "EGYPTIAN HIEROGLYPH U006\0" "EGYPTIAN HIEROGLYPH U006A\0" "EGYPTIAN HIEROGLYPH U006B\0" "EGYPTIAN HIEROGLYPH U007\0" "EGYPTIAN HIEROGLYPH U008\0" "EGYPTIAN HIEROGLYPH U009\0" "EGYPTIAN HIEROGLYPH U010\0" "EGYPTIAN HIEROGLYPH U011\0" "EGYPTIAN HIEROGLYPH U012\0" "EGYPTIAN HIEROGLYPH U013\0" "EGYPTIAN HIEROGLYPH U014\0" "EGYPTIAN HIEROGLYPH U015\0" "EGYPTIAN HIEROGLYPH U016\0" "EGYPTIAN HIEROGLYPH U017\0" "EGYPTIAN HIEROGLYPH U018\0" "EGYPTIAN HIEROGLYPH U019\0" "EGYPTIAN HIEROGLYPH U020\0" "EGYPTIAN HIEROGLYPH U021\0" "EGYPTIAN HIEROGLYPH U022\0" "EGYPTIAN HIEROGLYPH U023\0" "EGYPTIAN HIEROGLYPH U023A\0" "EGYPTIAN HIEROGLYPH U024\0" "EGYPTIAN HIEROGLYPH U025\0" "EGYPTIAN HIEROGLYPH U026\0" "EGYPTIAN HIEROGLYPH U027\0" "EGYPTIAN HIEROGLYPH U028\0" "EGYPTIAN HIEROGLYPH U029\0" "EGYPTIAN HIEROGLYPH U029A\0" "EGYPTIAN HIEROGLYPH U030\0" "EGYPTIAN HIEROGLYPH U031\0" "EGYPTIAN HIEROGLYPH U032\0" "EGYPTIAN HIEROGLYPH U032A\0" "EGYPTIAN HIEROGLYPH U033\0" "EGYPTIAN HIEROGLYPH U034\0" "EGYPTIAN HIEROGLYPH U035\0" "EGYPTIAN HIEROGLYPH U036\0" "EGYPTIAN HIEROGLYPH U037\0" "EGYPTIAN HIEROGLYPH U038\0" "EGYPTIAN HIEROGLYPH U039\0" "EGYPTIAN HIEROGLYPH U040\0" "EGYPTIAN HIEROGLYPH U041\0" "EGYPTIAN HIEROGLYPH U042\0" "EGYPTIAN HIEROGLYPH V001\0" "EGYPTIAN HIEROGLYPH V001A\0" "EGYPTIAN HIEROGLYPH V001B\0" "EGYPTIAN HIEROGLYPH V001C\0" "EGYPTIAN HIEROGLYPH V001D\0" "EGYPTIAN HIEROGLYPH V001E\0" "EGYPTIAN HIEROGLYPH V001F\0" "EGYPTIAN HIEROGLYPH V001G\0" "EGYPTIAN HIEROGLYPH V001H\0" "EGYPTIAN HIEROGLYPH V001I\0" "EGYPTIAN HIEROGLYPH V002\0" "EGYPTIAN HIEROGLYPH V002A\0" "EGYPTIAN HIEROGLYPH V003\0" "EGYPTIAN HIEROGLYPH V004\0" "EGYPTIAN HIEROGLYPH V005\0" "EGYPTIAN HIEROGLYPH V006\0" "EGYPTIAN HIEROGLYPH V007\0" "EGYPTIAN HIEROGLYPH V007A\0" "EGYPTIAN HIEROGLYPH V007B\0" "EGYPTIAN HIEROGLYPH V008\0" "EGYPTIAN HIEROGLYPH V009\0" "EGYPTIAN HIEROGLYPH V010\0" "EGYPTIAN HIEROGLYPH V011\0" "EGYPTIAN HIEROGLYPH V011A\0" "EGYPTIAN HIEROGLYPH V011B\0" "EGYPTIAN HIEROGLYPH V011C\0" "EGYPTIAN HIEROGLYPH V012\0" "EGYPTIAN HIEROGLYPH V012A\0" "EGYPTIAN HIEROGLYPH V012B\0" "EGYPTIAN HIEROGLYPH V013\0" "EGYPTIAN HIEROGLYPH V014\0" "EGYPTIAN HIEROGLYPH V015\0" "EGYPTIAN HIEROGLYPH V016\0" "EGYPTIAN HIEROGLYPH V017\0" "EGYPTIAN HIEROGLYPH V018\0" "EGYPTIAN HIEROGLYPH V019\0" "EGYPTIAN HIEROGLYPH V020\0" "EGYPTIAN HIEROGLYPH V020A\0" "EGYPTIAN HIEROGLYPH V020B\0" "EGYPTIAN HIEROGLYPH V020C\0" "EGYPTIAN HIEROGLYPH V020D\0" "EGYPTIAN HIEROGLYPH V020E\0" "EGYPTIAN HIEROGLYPH V020F\0" "EGYPTIAN HIEROGLYPH V020G\0" "EGYPTIAN HIEROGLYPH V020H\0" "EGYPTIAN HIEROGLYPH V020I\0" "EGYPTIAN HIEROGLYPH V020J\0" "EGYPTIAN HIEROGLYPH V020K\0" "EGYPTIAN HIEROGLYPH V020L\0" "EGYPTIAN HIEROGLYPH V021\0" "EGYPTIAN HIEROGLYPH V022\0" "EGYPTIAN HIEROGLYPH V023\0" "EGYPTIAN HIEROGLYPH V023A\0" "EGYPTIAN HIEROGLYPH V024\0" "EGYPTIAN HIEROGLYPH V025\0" "EGYPTIAN HIEROGLYPH V026\0" "EGYPTIAN HIEROGLYPH V027\0" "EGYPTIAN HIEROGLYPH V028\0" "EGYPTIAN HIEROGLYPH V028A\0" "EGYPTIAN HIEROGLYPH V029\0" "EGYPTIAN HIEROGLYPH V029A\0" "EGYPTIAN HIEROGLYPH V030\0" "EGYPTIAN HIEROGLYPH V030A\0" "EGYPTIAN HIEROGLYPH V031\0" "EGYPTIAN HIEROGLYPH V031A\0" "EGYPTIAN HIEROGLYPH V032\0" "EGYPTIAN HIEROGLYPH V033\0" "EGYPTIAN HIEROGLYPH V033A\0" "EGYPTIAN HIEROGLYPH V034\0" "EGYPTIAN HIEROGLYPH V035\0" "EGYPTIAN HIEROGLYPH V036\0" "EGYPTIAN HIEROGLYPH V037\0" "EGYPTIAN HIEROGLYPH V037A\0" "EGYPTIAN HIEROGLYPH V038\0" "EGYPTIAN HIEROGLYPH V039\0" "EGYPTIAN HIEROGLYPH V040\0" "EGYPTIAN HIEROGLYPH V040A\0" "EGYPTIAN HIEROGLYPH W001\0" "EGYPTIAN HIEROGLYPH W002\0" "EGYPTIAN HIEROGLYPH W003\0" "EGYPTIAN HIEROGLYPH W003A\0" "EGYPTIAN HIEROGLYPH W004\0" "EGYPTIAN HIEROGLYPH W005\0" "EGYPTIAN HIEROGLYPH W006\0" "EGYPTIAN HIEROGLYPH W007\0" "EGYPTIAN HIEROGLYPH W008\0" "EGYPTIAN HIEROGLYPH W009\0" "EGYPTIAN HIEROGLYPH W009A\0" "EGYPTIAN HIEROGLYPH W010\0" "EGYPTIAN HIEROGLYPH W010A\0" "EGYPTIAN HIEROGLYPH W011\0" "EGYPTIAN HIEROGLYPH W012\0" "EGYPTIAN HIEROGLYPH W013\0" "EGYPTIAN HIEROGLYPH W014\0" "EGYPTIAN HIEROGLYPH W014A\0" "EGYPTIAN HIEROGLYPH W015\0" "EGYPTIAN HIEROGLYPH W016\0" "EGYPTIAN HIEROGLYPH W017\0" "EGYPTIAN HIEROGLYPH W017A\0" "EGYPTIAN HIEROGLYPH W018\0" "EGYPTIAN HIEROGLYPH W018A\0" "EGYPTIAN HIEROGLYPH W019\0" "EGYPTIAN HIEROGLYPH W020\0" "EGYPTIAN HIEROGLYPH W021\0" "EGYPTIAN HIEROGLYPH W022\0" "EGYPTIAN HIEROGLYPH W023\0" "EGYPTIAN HIEROGLYPH W024\0" "EGYPTIAN HIEROGLYPH W024A\0" "EGYPTIAN HIEROGLYPH W025\0" "EGYPTIAN HIEROGLYPH X001\0" "EGYPTIAN HIEROGLYPH X002\0" "EGYPTIAN HIEROGLYPH X003\0" "EGYPTIAN HIEROGLYPH X004\0" "EGYPTIAN HIEROGLYPH X004A\0" "EGYPTIAN HIEROGLYPH X004B\0" "EGYPTIAN HIEROGLYPH X005\0" "EGYPTIAN HIEROGLYPH X006\0" "EGYPTIAN HIEROGLYPH X006A\0" "EGYPTIAN HIEROGLYPH X007\0" "EGYPTIAN HIEROGLYPH X008\0" "EGYPTIAN HIEROGLYPH X008A\0" "EGYPTIAN HIEROGLYPH Y001\0" "EGYPTIAN HIEROGLYPH Y001A\0" "EGYPTIAN HIEROGLYPH Y002\0" "EGYPTIAN HIEROGLYPH Y003\0" "EGYPTIAN HIEROGLYPH Y004\0" "EGYPTIAN HIEROGLYPH Y005\0" "EGYPTIAN HIEROGLYPH Y006\0" "EGYPTIAN HIEROGLYPH Y007\0" "EGYPTIAN HIEROGLYPH Y008\0" "EGYPTIAN HIEROGLYPH Z001\0" "EGYPTIAN HIEROGLYPH Z002\0" "EGYPTIAN HIEROGLYPH Z002A\0" "EGYPTIAN HIEROGLYPH Z002B\0" "EGYPTIAN HIEROGLYPH Z002C\0" "EGYPTIAN HIEROGLYPH Z002D\0" "EGYPTIAN HIEROGLYPH Z003\0" "EGYPTIAN HIEROGLYPH Z003A\0" "EGYPTIAN HIEROGLYPH Z003B\0" "EGYPTIAN HIEROGLYPH Z004\0" "EGYPTIAN HIEROGLYPH Z004A\0" "EGYPTIAN HIEROGLYPH Z005\0" "EGYPTIAN HIEROGLYPH Z005A\0" "EGYPTIAN HIEROGLYPH Z006\0" "EGYPTIAN HIEROGLYPH Z007\0" "EGYPTIAN HIEROGLYPH Z008\0" "EGYPTIAN HIEROGLYPH Z009\0" "EGYPTIAN HIEROGLYPH Z010\0" "EGYPTIAN HIEROGLYPH Z011\0" "EGYPTIAN HIEROGLYPH Z012\0" "EGYPTIAN HIEROGLYPH Z013\0" "EGYPTIAN HIEROGLYPH Z014\0" "EGYPTIAN HIEROGLYPH Z015\0" "EGYPTIAN HIEROGLYPH Z015A\0" "EGYPTIAN HIEROGLYPH Z015B\0" "EGYPTIAN HIEROGLYPH Z015C\0" "EGYPTIAN HIEROGLYPH Z015D\0" "EGYPTIAN HIEROGLYPH Z015E\0" "EGYPTIAN HIEROGLYPH Z015F\0" "EGYPTIAN HIEROGLYPH Z015G\0" "EGYPTIAN HIEROGLYPH Z015H\0" "EGYPTIAN HIEROGLYPH Z015I\0" "EGYPTIAN HIEROGLYPH Z016\0" "EGYPTIAN HIEROGLYPH Z016A\0" "EGYPTIAN HIEROGLYPH Z016B\0" "EGYPTIAN HIEROGLYPH Z016C\0" "EGYPTIAN HIEROGLYPH Z016D\0" "EGYPTIAN HIEROGLYPH Z016E\0" "EGYPTIAN HIEROGLYPH Z016F\0" "EGYPTIAN HIEROGLYPH Z016G\0" "EGYPTIAN HIEROGLYPH Z016H\0" "EIGHT PETALLED OUTLINED BLACK FLORETTE\0" "EIGHT POINTED BLACK STAR\0" "EIGHT POINTED PINWHEEL STAR\0" "EIGHT POINTED RECTILINEAR BLACK STAR\0" "EIGHT SPOKED ASTERISK\0" "EIGHT TEARDROP-SPOKED PROPELLER ASTERISK\0" "EIGHTH NOTE\0" "EJECT SYMBOL\0" "ELECTRIC ARROW\0" "ELECTRIC LIGHT BULB\0" "ELECTRIC PLUG\0" "ELECTRIC TORCH\0" "ELECTRICAL INTERSECTION\0" "ELEMENT OF\0" "ELEMENT OF OPENING DOWNWARDS\0" "ELEMENT OF OPENING UPWARDS\0" "ELEMENT OF WITH DOT ABOVE\0" "ELEMENT OF WITH LONG HORIZONTAL STROKE\0" "ELEMENT OF WITH OVERBAR\0" "ELEMENT OF WITH TWO HORIZONTAL STROKES\0" "ELEMENT OF WITH UNDERBAR\0" "ELEMENT OF WITH VERTICAL BAR AT END OF HORIZONTAL STROKE\0" "ELEPHANT\0" "EM DASH\0" "EM QUAD\0" "EM SPACE\0" "EMPHASIS SYMBOL\0" "EMPTY SET\0" "EMPTY SET WITH LEFT ARROW ABOVE\0" "EMPTY SET WITH OVERBAR\0" "EMPTY SET WITH RIGHT ARROW ABOVE\0" "EMPTY SET WITH SMALL CIRCLE ABOVE\0" "EN DASH\0" "EN QUAD\0" "EN SPACE\0" "END OF PROOF\0" "END WITH LEFTWARDS ARROW ABOVE\0" "ENTER SYMBOL\0" "ENVELOPE\0" "ENVELOPE WITH DOWNWARDS ARROW ABOVE\0" "EQUAL AND PARALLEL TO\0" "EQUAL TO BY DEFINITION\0" "EQUAL TO OR GREATER-THAN\0" "EQUAL TO OR LESS-THAN\0" "EQUAL TO OR PRECEDES\0" "EQUAL TO OR SUCCEEDS\0" "EQUALS COLON\0" "EQUALS SIGN\0" "EQUALS SIGN ABOVE LEFTWARDS ARROW\0" "EQUALS SIGN ABOVE PLUS SIGN\0" "EQUALS SIGN ABOVE RIGHTWARDS ARROW\0" "EQUALS SIGN ABOVE TILDE OPERATOR\0" "EQUALS SIGN AND SLANTED PARALLEL\0" "EQUALS SIGN AND SLANTED PARALLEL WITH TILDE ABOVE\0" "EQUALS SIGN WITH BUMPY ABOVE\0" "EQUALS SIGN WITH DOT BELOW\0" "EQUALS SIGN WITH TWO DOTS ABOVE AND TWO DOTS BELOW\0" "EQUALS WITH ASTERISK\0" "EQUIANGULAR TO\0" "EQUIVALENT TO\0" "EQUIVALENT WITH FOUR DOTS ABOVE\0" "ERASE TO THE LEFT\0" "ERASE TO THE RIGHT\0" "ERROR-BARRED BLACK CIRCLE\0" "ERROR-BARRED BLACK DIAMOND\0" "ERROR-BARRED BLACK SQUARE\0" "ERROR-BARRED WHITE CIRCLE\0" "ERROR-BARRED WHITE DIAMOND\0" "ERROR-BARRED WHITE SQUARE\0" "ESTIMATED SYMBOL\0" "ESTIMATES\0" "ETHIOPIC COLON\0" "ETHIOPIC COMBINING GEMINATION AND VOWEL LENGTH MARK\0" "ETHIOPIC COMBINING GEMINATION MARK\0" "ETHIOPIC COMBINING VOWEL LENGTH MARK\0" "ETHIOPIC COMMA\0" "ETHIOPIC DIGIT EIGHT\0" "ETHIOPIC DIGIT FIVE\0" "ETHIOPIC DIGIT FOUR\0" "ETHIOPIC DIGIT NINE\0" "ETHIOPIC DIGIT ONE\0" "ETHIOPIC DIGIT SEVEN\0" "ETHIOPIC DIGIT SIX\0" "ETHIOPIC DIGIT THREE\0" "ETHIOPIC DIGIT TWO\0" "ETHIOPIC FULL STOP\0" "ETHIOPIC NUMBER EIGHTY\0" "ETHIOPIC NUMBER FIFTY\0" "ETHIOPIC NUMBER FORTY\0" "ETHIOPIC NUMBER HUNDRED\0" "ETHIOPIC NUMBER NINETY\0" "ETHIOPIC NUMBER SEVENTY\0" "ETHIOPIC NUMBER SIXTY\0" "ETHIOPIC NUMBER TEN\0" "ETHIOPIC NUMBER TEN THOUSAND\0" "ETHIOPIC NUMBER THIRTY\0" "ETHIOPIC NUMBER TWENTY\0" "ETHIOPIC PARAGRAPH SEPARATOR\0" "ETHIOPIC PREFACE COLON\0" "ETHIOPIC QUESTION MARK\0" "ETHIOPIC SECTION MARK\0" "ETHIOPIC SEMICOLON\0" "ETHIOPIC SYLLABLE BA\0" "ETHIOPIC SYLLABLE BAA\0" "ETHIOPIC SYLLABLE BBA\0" "ETHIOPIC SYLLABLE BBAA\0" "ETHIOPIC SYLLABLE BBE\0" "ETHIOPIC SYLLABLE BBEE\0" "ETHIOPIC SYLLABLE BBI\0" "ETHIOPIC SYLLABLE BBO\0" "ETHIOPIC SYLLABLE BBU\0" "ETHIOPIC SYLLABLE BE\0" "ETHIOPIC SYLLABLE BEE\0" "ETHIOPIC SYLLABLE BI\0" "ETHIOPIC SYLLABLE BO\0" "ETHIOPIC SYLLABLE BOA\0" "ETHIOPIC SYLLABLE BU\0" "ETHIOPIC SYLLABLE BWA\0" "ETHIOPIC SYLLABLE BWE\0" "ETHIOPIC SYLLABLE BWEE\0" "ETHIOPIC SYLLABLE BWI\0" "ETHIOPIC SYLLABLE CA\0" "ETHIOPIC SYLLABLE CAA\0" "ETHIOPIC SYLLABLE CCA\0" "ETHIOPIC SYLLABLE CCAA\0" "ETHIOPIC SYLLABLE CCE\0" "ETHIOPIC SYLLABLE CCEE\0" "ETHIOPIC SYLLABLE CCHA\0" "ETHIOPIC SYLLABLE CCHAA\0" "ETHIOPIC SYLLABLE CCHE\0" "ETHIOPIC SYLLABLE CCHEE\0" "ETHIOPIC SYLLABLE CCHHA\0" "ETHIOPIC SYLLABLE CCHHAA\0" "ETHIOPIC SYLLABLE CCHHE\0" "ETHIOPIC SYLLABLE CCHHEE\0" "ETHIOPIC SYLLABLE CCHHI\0" "ETHIOPIC SYLLABLE CCHHO\0" "ETHIOPIC SYLLABLE CCHHU\0" "ETHIOPIC SYLLABLE CCHI\0" "ETHIOPIC SYLLABLE CCHO\0" "ETHIOPIC SYLLABLE CCHU\0" "ETHIOPIC SYLLABLE CCI\0" "ETHIOPIC SYLLABLE CCO\0" "ETHIOPIC SYLLABLE CCU\0" "ETHIOPIC SYLLABLE CE\0" "ETHIOPIC SYLLABLE CEE\0" "ETHIOPIC SYLLABLE CHA\0" "ETHIOPIC SYLLABLE CHAA\0" "ETHIOPIC SYLLABLE CHE\0" "ETHIOPIC SYLLABLE CHEE\0" "ETHIOPIC SYLLABLE CHI\0" "ETHIOPIC SYLLABLE CHO\0" "ETHIOPIC SYLLABLE CHOA\0" "ETHIOPIC SYLLABLE CHU\0" "ETHIOPIC SYLLABLE CHWA\0" "ETHIOPIC SYLLABLE CI\0" "ETHIOPIC SYLLABLE CO\0" "ETHIOPIC SYLLABLE COA\0" "ETHIOPIC SYLLABLE CU\0" "ETHIOPIC SYLLABLE CWA\0" "ETHIOPIC SYLLABLE DA\0" "ETHIOPIC SYLLABLE DAA\0" "ETHIOPIC SYLLABLE DDA\0" "ETHIOPIC SYLLABLE DDAA\0" "ETHIOPIC SYLLABLE DDE\0" "ETHIOPIC SYLLABLE DDEE\0" "ETHIOPIC SYLLABLE DDHAA\0" "ETHIOPIC SYLLABLE DDHE\0" "ETHIOPIC SYLLABLE DDHEE\0" "ETHIOPIC SYLLABLE DDHI\0" "ETHIOPIC SYLLABLE DDHO\0" "ETHIOPIC SYLLABLE DDHU\0" "ETHIOPIC SYLLABLE DDI\0" "ETHIOPIC SYLLABLE DDO\0" "ETHIOPIC SYLLABLE DDOA\0" "ETHIOPIC SYLLABLE DDU\0" "ETHIOPIC SYLLABLE DDWA\0" "ETHIOPIC SYLLABLE DE\0" "ETHIOPIC SYLLABLE DEE\0" "ETHIOPIC SYLLABLE DI\0" "ETHIOPIC SYLLABLE DO\0" "ETHIOPIC SYLLABLE DOA\0" "ETHIOPIC SYLLABLE DU\0" "ETHIOPIC SYLLABLE DWA\0" "ETHIOPIC SYLLABLE DZAA\0" "ETHIOPIC SYLLABLE DZE\0" "ETHIOPIC SYLLABLE DZEE\0" "ETHIOPIC SYLLABLE DZI\0" "ETHIOPIC SYLLABLE DZO\0" "ETHIOPIC SYLLABLE DZU\0" "ETHIOPIC SYLLABLE FA\0" "ETHIOPIC SYLLABLE FAA\0" "ETHIOPIC SYLLABLE FE\0" "ETHIOPIC SYLLABLE FEE\0" "ETHIOPIC SYLLABLE FI\0" "ETHIOPIC SYLLABLE FO\0" "ETHIOPIC SYLLABLE FU\0" "ETHIOPIC SYLLABLE FWA\0" "ETHIOPIC SYLLABLE FWE\0" "ETHIOPIC SYLLABLE FWEE\0" "ETHIOPIC SYLLABLE FWI\0" "ETHIOPIC SYLLABLE FYA\0" "ETHIOPIC SYLLABLE GA\0" "ETHIOPIC SYLLABLE GAA\0" "ETHIOPIC SYLLABLE GE\0" "ETHIOPIC SYLLABLE GEE\0" "ETHIOPIC SYLLABLE GGA\0" "ETHIOPIC SYLLABLE GGAA\0" "ETHIOPIC SYLLABLE GGE\0" "ETHIOPIC SYLLABLE GGEE\0" "ETHIOPIC SYLLABLE GGI\0" "ETHIOPIC SYLLABLE GGO\0" "ETHIOPIC SYLLABLE GGU\0" "ETHIOPIC SYLLABLE GGWA\0" "ETHIOPIC SYLLABLE GGWAA\0" "ETHIOPIC SYLLABLE GGWE\0" "ETHIOPIC SYLLABLE GGWEE\0" "ETHIOPIC SYLLABLE GGWI\0" "ETHIOPIC SYLLABLE GI\0" "ETHIOPIC SYLLABLE GLOTTAL A\0" "ETHIOPIC SYLLABLE GLOTTAL AA\0" "ETHIOPIC SYLLABLE GLOTTAL E\0" "ETHIOPIC SYLLABLE GLOTTAL EE\0" "ETHIOPIC SYLLABLE GLOTTAL I\0" "ETHIOPIC SYLLABLE GLOTTAL O\0" "ETHIOPIC SYLLABLE GLOTTAL OA\0" "ETHIOPIC SYLLABLE GLOTTAL U\0" "ETHIOPIC SYLLABLE GLOTTAL WA\0" "ETHIOPIC SYLLABLE GO\0" "ETHIOPIC SYLLABLE GOA\0" "ETHIOPIC SYLLABLE GU\0" "ETHIOPIC SYLLABLE GWA\0" "ETHIOPIC SYLLABLE GWAA\0" "ETHIOPIC SYLLABLE GWE\0" "ETHIOPIC SYLLABLE GWEE\0" "ETHIOPIC SYLLABLE GWI\0" "ETHIOPIC SYLLABLE GYA\0" "ETHIOPIC SYLLABLE GYAA\0" "ETHIOPIC SYLLABLE GYE\0" "ETHIOPIC SYLLABLE GYEE\0" "ETHIOPIC SYLLABLE GYI\0" "ETHIOPIC SYLLABLE GYO\0" "ETHIOPIC SYLLABLE GYU\0" "ETHIOPIC SYLLABLE HA\0" "ETHIOPIC SYLLABLE HAA\0" "ETHIOPIC SYLLABLE HE\0" "ETHIOPIC SYLLABLE HEE\0" "ETHIOPIC SYLLABLE HHA\0" "ETHIOPIC SYLLABLE HHAA\0" "ETHIOPIC SYLLABLE HHE\0" "ETHIOPIC SYLLABLE HHEE\0" "ETHIOPIC SYLLABLE HHI\0" "ETHIOPIC SYLLABLE HHO\0" "ETHIOPIC SYLLABLE HHU\0" "ETHIOPIC SYLLABLE HHWA\0" "ETHIOPIC SYLLABLE HI\0" "ETHIOPIC SYLLABLE HO\0" "ETHIOPIC SYLLABLE HOA\0" "ETHIOPIC SYLLABLE HU\0" "ETHIOPIC SYLLABLE JA\0" "ETHIOPIC SYLLABLE JAA\0" "ETHIOPIC SYLLABLE JE\0" "ETHIOPIC SYLLABLE JEE\0" "ETHIOPIC SYLLABLE JI\0" "ETHIOPIC SYLLABLE JO\0" "ETHIOPIC SYLLABLE JOA\0" "ETHIOPIC SYLLABLE JU\0" "ETHIOPIC SYLLABLE JWA\0" "ETHIOPIC SYLLABLE KA\0" "ETHIOPIC SYLLABLE KAA\0" "ETHIOPIC SYLLABLE KE\0" "ETHIOPIC SYLLABLE KEE\0" "ETHIOPIC SYLLABLE KI\0" "ETHIOPIC SYLLABLE KO\0" "ETHIOPIC SYLLABLE KOA\0" "ETHIOPIC SYLLABLE KU\0" "ETHIOPIC SYLLABLE KWA\0" "ETHIOPIC SYLLABLE KWAA\0" "ETHIOPIC SYLLABLE KWE\0" "ETHIOPIC SYLLABLE KWEE\0" "ETHIOPIC SYLLABLE KWI\0" "ETHIOPIC SYLLABLE KXA\0" "ETHIOPIC SYLLABLE KXAA\0" "ETHIOPIC SYLLABLE KXE\0" "ETHIOPIC SYLLABLE KXEE\0" "ETHIOPIC SYLLABLE KXI\0" "ETHIOPIC SYLLABLE KXO\0" "ETHIOPIC SYLLABLE KXU\0" "ETHIOPIC SYLLABLE KXWA\0" "ETHIOPIC SYLLABLE KXWAA\0" "ETHIOPIC SYLLABLE KXWE\0" "ETHIOPIC SYLLABLE KXWEE\0" "ETHIOPIC SYLLABLE KXWI\0" "ETHIOPIC SYLLABLE KYA\0" "ETHIOPIC SYLLABLE KYAA\0" "ETHIOPIC SYLLABLE KYE\0" "ETHIOPIC SYLLABLE KYEE\0" "ETHIOPIC SYLLABLE KYI\0" "ETHIOPIC SYLLABLE KYO\0" "ETHIOPIC SYLLABLE KYU\0" "ETHIOPIC SYLLABLE LA\0" "ETHIOPIC SYLLABLE LAA\0" "ETHIOPIC SYLLABLE LE\0" "ETHIOPIC SYLLABLE LEE\0" "ETHIOPIC SYLLABLE LI\0" "ETHIOPIC SYLLABLE LO\0" "ETHIOPIC SYLLABLE LOA\0" "ETHIOPIC SYLLABLE LU\0" "ETHIOPIC SYLLABLE LWA\0" "ETHIOPIC SYLLABLE MA\0" "ETHIOPIC SYLLABLE MAA\0" "ETHIOPIC SYLLABLE ME\0" "ETHIOPIC SYLLABLE MEE\0" "ETHIOPIC SYLLABLE MI\0" "ETHIOPIC SYLLABLE MO\0" "ETHIOPIC SYLLABLE MOA\0" "ETHIOPIC SYLLABLE MU\0" "ETHIOPIC SYLLABLE MWA\0" "ETHIOPIC SYLLABLE MWE\0" "ETHIOPIC SYLLABLE MWEE\0" "ETHIOPIC SYLLABLE MWI\0" "ETHIOPIC SYLLABLE MYA\0" "ETHIOPIC SYLLABLE NA\0" "ETHIOPIC SYLLABLE NAA\0" "ETHIOPIC SYLLABLE NE\0" "ETHIOPIC SYLLABLE NEE\0" "ETHIOPIC SYLLABLE NI\0" "ETHIOPIC SYLLABLE NO\0" "ETHIOPIC SYLLABLE NOA\0" "ETHIOPIC SYLLABLE NU\0" "ETHIOPIC SYLLABLE NWA\0" "ETHIOPIC SYLLABLE NYA\0" "ETHIOPIC SYLLABLE NYAA\0" "ETHIOPIC SYLLABLE NYE\0" "ETHIOPIC SYLLABLE NYEE\0" "ETHIOPIC SYLLABLE NYI\0" "ETHIOPIC SYLLABLE NYO\0" "ETHIOPIC SYLLABLE NYOA\0" "ETHIOPIC SYLLABLE NYU\0" "ETHIOPIC SYLLABLE NYWA\0" "ETHIOPIC SYLLABLE PA\0" "ETHIOPIC SYLLABLE PAA\0" "ETHIOPIC SYLLABLE PE\0" "ETHIOPIC SYLLABLE PEE\0" "ETHIOPIC SYLLABLE PHA\0" "ETHIOPIC SYLLABLE PHAA\0" "ETHIOPIC SYLLABLE PHARYNGEAL A\0" "ETHIOPIC SYLLABLE PHARYNGEAL AA\0" "ETHIOPIC SYLLABLE PHARYNGEAL E\0" "ETHIOPIC SYLLABLE PHARYNGEAL EE\0" "ETHIOPIC SYLLABLE PHARYNGEAL I\0" "ETHIOPIC SYLLABLE PHARYNGEAL O\0" "ETHIOPIC SYLLABLE PHARYNGEAL U\0" "ETHIOPIC SYLLABLE PHE\0" "ETHIOPIC SYLLABLE PHEE\0" "ETHIOPIC SYLLABLE PHI\0" "ETHIOPIC SYLLABLE PHO\0" "ETHIOPIC SYLLABLE PHOA\0" "ETHIOPIC SYLLABLE PHU\0" "ETHIOPIC SYLLABLE PHWA\0" "ETHIOPIC SYLLABLE PI\0" "ETHIOPIC SYLLABLE PO\0" "ETHIOPIC SYLLABLE POA\0" "ETHIOPIC SYLLABLE PU\0" "ETHIOPIC SYLLABLE PWA\0" "ETHIOPIC SYLLABLE PWE\0" "ETHIOPIC SYLLABLE PWEE\0" "ETHIOPIC SYLLABLE PWI\0" "ETHIOPIC SYLLABLE QA\0" "ETHIOPIC SYLLABLE QAA\0" "ETHIOPIC SYLLABLE QE\0" "ETHIOPIC SYLLABLE QEE\0" "ETHIOPIC SYLLABLE QHA\0" "ETHIOPIC SYLLABLE QHAA\0" "ETHIOPIC SYLLABLE QHE\0" "ETHIOPIC SYLLABLE QHEE\0" "ETHIOPIC SYLLABLE QHI\0" "ETHIOPIC SYLLABLE QHO\0" "ETHIOPIC SYLLABLE QHU\0" "ETHIOPIC SYLLABLE QHWA\0" "ETHIOPIC SYLLABLE QHWAA\0" "ETHIOPIC SYLLABLE QHWE\0" "ETHIOPIC SYLLABLE QHWEE\0" "ETHIOPIC SYLLABLE QHWI\0" "ETHIOPIC SYLLABLE QI\0" "ETHIOPIC SYLLABLE QO\0" "ETHIOPIC SYLLABLE QOA\0" "ETHIOPIC SYLLABLE QU\0" "ETHIOPIC SYLLABLE QWA\0" "ETHIOPIC SYLLABLE QWAA\0" "ETHIOPIC SYLLABLE QWE\0" "ETHIOPIC SYLLABLE QWEE\0" "ETHIOPIC SYLLABLE QWI\0" "ETHIOPIC SYLLABLE QYA\0" "ETHIOPIC SYLLABLE QYAA\0" "ETHIOPIC SYLLABLE QYE\0" "ETHIOPIC SYLLABLE QYEE\0" "ETHIOPIC SYLLABLE QYI\0" "ETHIOPIC SYLLABLE QYO\0" "ETHIOPIC SYLLABLE QYU\0" "ETHIOPIC SYLLABLE RA\0" "ETHIOPIC SYLLABLE RAA\0" "ETHIOPIC SYLLABLE RE\0" "ETHIOPIC SYLLABLE REE\0" "ETHIOPIC SYLLABLE RI\0" "ETHIOPIC SYLLABLE RO\0" "ETHIOPIC SYLLABLE ROA\0" "ETHIOPIC SYLLABLE RU\0" "ETHIOPIC SYLLABLE RWA\0" "ETHIOPIC SYLLABLE RYA\0" "ETHIOPIC SYLLABLE SA\0" "ETHIOPIC SYLLABLE SAA\0" "ETHIOPIC SYLLABLE SE\0" "ETHIOPIC SYLLABLE SEBATBEIT BWA\0" "ETHIOPIC SYLLABLE SEBATBEIT FWA\0" "ETHIOPIC SYLLABLE SEBATBEIT MWA\0" "ETHIOPIC SYLLABLE SEBATBEIT PWA\0" "ETHIOPIC SYLLABLE SEE\0" "ETHIOPIC SYLLABLE SHA\0" "ETHIOPIC SYLLABLE SHAA\0" "ETHIOPIC SYLLABLE SHE\0" "ETHIOPIC SYLLABLE SHEE\0" "ETHIOPIC SYLLABLE SHI\0" "ETHIOPIC SYLLABLE SHO\0" "ETHIOPIC SYLLABLE SHOA\0" "ETHIOPIC SYLLABLE SHU\0" "ETHIOPIC SYLLABLE SHWA\0" "ETHIOPIC SYLLABLE SI\0" "ETHIOPIC SYLLABLE SO\0" "ETHIOPIC SYLLABLE SOA\0" "ETHIOPIC SYLLABLE SSA\0" "ETHIOPIC SYLLABLE SSAA\0" "ETHIOPIC SYLLABLE SSE\0" "ETHIOPIC SYLLABLE SSEE\0" "ETHIOPIC SYLLABLE SSI\0" "ETHIOPIC SYLLABLE SSO\0" "ETHIOPIC SYLLABLE SSU\0" "ETHIOPIC SYLLABLE SU\0" "ETHIOPIC SYLLABLE SWA\0" "ETHIOPIC SYLLABLE SZA\0" "ETHIOPIC SYLLABLE SZAA\0" "ETHIOPIC SYLLABLE SZE\0" "ETHIOPIC SYLLABLE SZEE\0" "ETHIOPIC SYLLABLE SZI\0" "ETHIOPIC SYLLABLE SZO\0" "ETHIOPIC SYLLABLE SZU\0" "ETHIOPIC SYLLABLE SZWA\0" "ETHIOPIC SYLLABLE TA\0" "ETHIOPIC SYLLABLE TAA\0" "ETHIOPIC SYLLABLE TE\0" "ETHIOPIC SYLLABLE TEE\0" "ETHIOPIC SYLLABLE THA\0" "ETHIOPIC SYLLABLE THAA\0" "ETHIOPIC SYLLABLE THE\0" "ETHIOPIC SYLLABLE THEE\0" "ETHIOPIC SYLLABLE THI\0" "ETHIOPIC SYLLABLE THO\0" "ETHIOPIC SYLLABLE THOA\0" "ETHIOPIC SYLLABLE THU\0" "ETHIOPIC SYLLABLE THWA\0" "ETHIOPIC SYLLABLE TI\0" "ETHIOPIC SYLLABLE TO\0" "ETHIOPIC SYLLABLE TOA\0" "ETHIOPIC SYLLABLE TSA\0" "ETHIOPIC SYLLABLE TSAA\0" "ETHIOPIC SYLLABLE TSE\0" "ETHIOPIC SYLLABLE TSEE\0" "ETHIOPIC SYLLABLE TSI\0" "ETHIOPIC SYLLABLE TSO\0" "ETHIOPIC SYLLABLE TSU\0" "ETHIOPIC SYLLABLE TSWA\0" "ETHIOPIC SYLLABLE TTHAA\0" "ETHIOPIC SYLLABLE TTHE\0" "ETHIOPIC SYLLABLE TTHEE\0" "ETHIOPIC SYLLABLE TTHI\0" "ETHIOPIC SYLLABLE TTHO\0" "ETHIOPIC SYLLABLE TTHU\0" "ETHIOPIC SYLLABLE TU\0" "ETHIOPIC SYLLABLE TWA\0" "ETHIOPIC SYLLABLE TZA\0" "ETHIOPIC SYLLABLE TZAA\0" "ETHIOPIC SYLLABLE TZE\0" "ETHIOPIC SYLLABLE TZEE\0" "ETHIOPIC SYLLABLE TZI\0" "ETHIOPIC SYLLABLE TZO\0" "ETHIOPIC SYLLABLE TZOA\0" "ETHIOPIC SYLLABLE TZU\0" "ETHIOPIC SYLLABLE VA\0" "ETHIOPIC SYLLABLE VAA\0" "ETHIOPIC SYLLABLE VE\0" "ETHIOPIC SYLLABLE VEE\0" "ETHIOPIC SYLLABLE VI\0" "ETHIOPIC SYLLABLE VO\0" "ETHIOPIC SYLLABLE VU\0" "ETHIOPIC SYLLABLE VWA\0" "ETHIOPIC SYLLABLE WA\0" "ETHIOPIC SYLLABLE WAA\0" "ETHIOPIC SYLLABLE WE\0" "ETHIOPIC SYLLABLE WEE\0" "ETHIOPIC SYLLABLE WI\0" "ETHIOPIC SYLLABLE WO\0" "ETHIOPIC SYLLABLE WOA\0" "ETHIOPIC SYLLABLE WU\0" "ETHIOPIC SYLLABLE XA\0" "ETHIOPIC SYLLABLE XAA\0" "ETHIOPIC SYLLABLE XE\0" "ETHIOPIC SYLLABLE XEE\0" "ETHIOPIC SYLLABLE XI\0" "ETHIOPIC SYLLABLE XO\0" "ETHIOPIC SYLLABLE XOA\0" "ETHIOPIC SYLLABLE XU\0" "ETHIOPIC SYLLABLE XWA\0" "ETHIOPIC SYLLABLE XWAA\0" "ETHIOPIC SYLLABLE XWE\0" "ETHIOPIC SYLLABLE XWEE\0" "ETHIOPIC SYLLABLE XWI\0" "ETHIOPIC SYLLABLE XYA\0" "ETHIOPIC SYLLABLE XYAA\0" "ETHIOPIC SYLLABLE XYE\0" "ETHIOPIC SYLLABLE XYEE\0" "ETHIOPIC SYLLABLE XYI\0" "ETHIOPIC SYLLABLE XYO\0" "ETHIOPIC SYLLABLE XYU\0" "ETHIOPIC SYLLABLE YA\0" "ETHIOPIC SYLLABLE YAA\0" "ETHIOPIC SYLLABLE YE\0" "ETHIOPIC SYLLABLE YEE\0" "ETHIOPIC SYLLABLE YI\0" "ETHIOPIC SYLLABLE YO\0" "ETHIOPIC SYLLABLE YOA\0" "ETHIOPIC SYLLABLE YU\0" "ETHIOPIC SYLLABLE ZA\0" "ETHIOPIC SYLLABLE ZAA\0" "ETHIOPIC SYLLABLE ZE\0" "ETHIOPIC SYLLABLE ZEE\0" "ETHIOPIC SYLLABLE ZHA\0" "ETHIOPIC SYLLABLE ZHAA\0" "ETHIOPIC SYLLABLE ZHE\0" "ETHIOPIC SYLLABLE ZHEE\0" "ETHIOPIC SYLLABLE ZHI\0" "ETHIOPIC SYLLABLE ZHO\0" "ETHIOPIC SYLLABLE ZHU\0" "ETHIOPIC SYLLABLE ZHWA\0" "ETHIOPIC SYLLABLE ZI\0" "ETHIOPIC SYLLABLE ZO\0" "ETHIOPIC SYLLABLE ZOA\0" "ETHIOPIC SYLLABLE ZU\0" "ETHIOPIC SYLLABLE ZWA\0" "ETHIOPIC SYLLABLE ZZA\0" "ETHIOPIC SYLLABLE ZZAA\0" "ETHIOPIC SYLLABLE ZZE\0" "ETHIOPIC SYLLABLE ZZEE\0" "ETHIOPIC SYLLABLE ZZI\0" "ETHIOPIC SYLLABLE ZZO\0" "ETHIOPIC SYLLABLE ZZU\0" "ETHIOPIC TONAL MARK CHIRET\0" "ETHIOPIC TONAL MARK DERET\0" "ETHIOPIC TONAL MARK DERET-HIDET\0" "ETHIOPIC TONAL MARK DIFAT\0" "ETHIOPIC TONAL MARK HIDET\0" "ETHIOPIC TONAL MARK KENAT\0" "ETHIOPIC TONAL MARK KURT\0" "ETHIOPIC TONAL MARK RIKRIK\0" "ETHIOPIC TONAL MARK SHORT RIKRIK\0" "ETHIOPIC TONAL MARK YIZET\0" "ETHIOPIC WORDSPACE\0" "EULER CONSTANT\0" "EURO SIGN\0" "EURO-CURRENCY SIGN\0" "EUROPEAN CASTLE\0" "EUROPEAN POST OFFICE\0" "EVERGREEN TREE\0" "EXCESS\0" "EXCLAMATION MARK\0" "EXCLAMATION QUESTION MARK\0" "EXTENDED ARABIC-INDIC DIGIT EIGHT\0" "EXTENDED ARABIC-INDIC DIGIT FIVE\0" "EXTENDED ARABIC-INDIC DIGIT FOUR\0" "EXTENDED ARABIC-INDIC DIGIT NINE\0" "EXTENDED ARABIC-INDIC DIGIT ONE\0" "EXTENDED ARABIC-INDIC DIGIT SEVEN\0" "EXTENDED ARABIC-INDIC DIGIT SIX\0" "EXTENDED ARABIC-INDIC DIGIT THREE\0" "EXTENDED ARABIC-INDIC DIGIT TWO\0" "EXTENDED ARABIC-INDIC DIGIT ZERO\0" "EXTRATERRESTRIAL ALIEN\0" "EYEGLASSES\0" "EYES\0" "FACE MASSAGE\0" "FACE SAVOURING DELICIOUS FOOD\0" "FACE SCREAMING IN FEAR\0" "FACE THROWING A KISS\0" "FACE WITH COLD SWEAT\0" "FACE WITH LOOK OF TRIUMPH\0" "FACE WITH MEDICAL MASK\0" "FACE WITH NO GOOD GESTURE\0" "FACE WITH OK GESTURE\0" "FACE WITH OPEN MOUTH AND COLD SWEAT\0" "FACE WITH STUCK-OUT TONGUE AND TIGHTLY-CLOSED EYES\0" "FACE WITH STUCK-OUT TONGUE AND WINKING EYE\0" "FACE WITH TEARS OF JOY\0" "FACE WITHOUT MOUTH\0" "FACSIMILE SIGN\0" "FACTORY\0" "FALLEN LEAF\0" "FALLING DIAGONAL CROSSING NORTH EAST ARROW\0" "FALLING DIAGONAL CROSSING RISING DIAGONAL\0" "FALLING DIAGONAL IN WHITE CIRCLE IN BLACK SQUARE\0" "FAMILY\0" "FARSI SYMBOL\0" "FATHER CHRISTMAS\0" "FAX MACHINE\0" "FEARFUL FACE\0" "FEMALE SIGN\0" "FEMININE ORDINAL INDICATOR\0" "FERRIS WHEEL\0" "FERRY\0" "FIGURE DASH\0" "FIGURE SPACE\0" "FILE FOLDER\0" "FINITE PART INTEGRAL\0" "FIRE\0" "FIRE ENGINE\0" "FIREWORK SPARKLER\0" "FIREWORKS\0" "FIRST QUARTER MOON\0" "FIRST QUARTER MOON SYMBOL\0" "FIRST QUARTER MOON WITH FACE\0" "FISH\0" "FISH CAKE WITH SWIRL DESIGN\0" "FISHEYE\0" "FISHING POLE AND FISH\0" "FISTED HAND SIGN\0" "FIVE DOT MARK\0" "FIVE DOT PUNCTUATION\0" "FLAG IN HOLE\0" "FLATNESS\0" "FLEUR-DE-LIS\0" "FLEXED BICEPS\0" "FLOPPY DISK\0" "FLORAL HEART\0" "FLOWER\0" "FLOWER PLAYING CARDS\0" "FLOWER PUNCTUATION MARK\0" "FLUSHED FACE\0" "FOGGY\0" "FOOTPRINTS\0" "FOR ALL\0" "FORCES\0" "FORK AND KNIFE\0" "FORKED PARAGRAPHOS\0" "FORKING\0" "FOUNTAIN\0" "FOUR BALLOON-SPOKED ASTERISK\0" "FOUR CLUB-SPOKED ASTERISK\0" "FOUR DOT MARK\0" "FOUR DOT PUNCTUATION\0" "FOUR LEAF CLOVER\0" "FOUR TEARDROP-SPOKED ASTERISK\0" "FOUR-PER-EM SPACE\0" "FOURTH ROOT\0" "FRACTION NUMERATOR ONE\0" "FRACTION SLASH\0" "FRENCH FRANC SIGN\0" "FRENCH FRIES\0" "FRIED SHRIMP\0" "FROG FACE\0" "FRONT-FACING BABY CHICK\0" "FRONT-TILTED SHADOWED WHITE RIGHTWARDS ARROW\0" "FROWN\0" "FUEL PUMP\0" "FULL BLOCK\0" "FULL MOON SYMBOL\0" "FULL MOON WITH FACE\0" "FULL OUTER JOIN\0" "FULL STOP\0" "FULLWIDTH AMPERSAND\0" "FULLWIDTH APOSTROPHE\0" "FULLWIDTH ASTERISK\0" "FULLWIDTH BROKEN BAR\0" "FULLWIDTH CENT SIGN\0" "FULLWIDTH CIRCUMFLEX ACCENT\0" "FULLWIDTH COLON\0" "FULLWIDTH COMMA\0" "FULLWIDTH COMMERCIAL AT\0" "FULLWIDTH DIGIT EIGHT\0" "FULLWIDTH DIGIT FIVE\0" "FULLWIDTH DIGIT FOUR\0" "FULLWIDTH DIGIT NINE\0" "FULLWIDTH DIGIT ONE\0" "FULLWIDTH DIGIT SEVEN\0" "FULLWIDTH DIGIT SIX\0" "FULLWIDTH DIGIT THREE\0" "FULLWIDTH DIGIT TWO\0" "FULLWIDTH DIGIT ZERO\0" "FULLWIDTH DOLLAR SIGN\0" "FULLWIDTH EQUALS SIGN\0" "FULLWIDTH EXCLAMATION MARK\0" "FULLWIDTH FULL STOP\0" "FULLWIDTH GRAVE ACCENT\0" "FULLWIDTH GREATER-THAN SIGN\0" "FULLWIDTH HYPHEN-MINUS\0" "FULLWIDTH LATIN CAPITAL LETTER A\0" "FULLWIDTH LATIN CAPITAL LETTER B\0" "FULLWIDTH LATIN CAPITAL LETTER C\0" "FULLWIDTH LATIN CAPITAL LETTER D\0" "FULLWIDTH LATIN CAPITAL LETTER E\0" "FULLWIDTH LATIN CAPITAL LETTER F\0" "FULLWIDTH LATIN CAPITAL LETTER G\0" "FULLWIDTH LATIN CAPITAL LETTER H\0" "FULLWIDTH LATIN CAPITAL LETTER I\0" "FULLWIDTH LATIN CAPITAL LETTER J\0" "FULLWIDTH LATIN CAPITAL LETTER K\0" "FULLWIDTH LATIN CAPITAL LETTER L\0" "FULLWIDTH LATIN CAPITAL LETTER M\0" "FULLWIDTH LATIN CAPITAL LETTER N\0" "FULLWIDTH LATIN CAPITAL LETTER O\0" "FULLWIDTH LATIN CAPITAL LETTER P\0" "FULLWIDTH LATIN CAPITAL LETTER Q\0" "FULLWIDTH LATIN CAPITAL LETTER R\0" "FULLWIDTH LATIN CAPITAL LETTER S\0" "FULLWIDTH LATIN CAPITAL LETTER T\0" "FULLWIDTH LATIN CAPITAL LETTER U\0" "FULLWIDTH LATIN CAPITAL LETTER V\0" "FULLWIDTH LATIN CAPITAL LETTER W\0" "FULLWIDTH LATIN CAPITAL LETTER X\0" "FULLWIDTH LATIN CAPITAL LETTER Y\0" "FULLWIDTH LATIN CAPITAL LETTER Z\0" "FULLWIDTH LATIN SMALL LETTER A\0" "FULLWIDTH LATIN SMALL LETTER B\0" "FULLWIDTH LATIN SMALL LETTER C\0" "FULLWIDTH LATIN SMALL LETTER D\0" "FULLWIDTH LATIN SMALL LETTER E\0" "FULLWIDTH LATIN SMALL LETTER F\0" "FULLWIDTH LATIN SMALL LETTER G\0" "FULLWIDTH LATIN SMALL LETTER H\0" "FULLWIDTH LATIN SMALL LETTER I\0" "FULLWIDTH LATIN SMALL LETTER J\0" "FULLWIDTH LATIN SMALL LETTER K\0" "FULLWIDTH LATIN SMALL LETTER L\0" "FULLWIDTH LATIN SMALL LETTER M\0" "FULLWIDTH LATIN SMALL LETTER N\0" "FULLWIDTH LATIN SMALL LETTER O\0" "FULLWIDTH LATIN SMALL LETTER P\0" "FULLWIDTH LATIN SMALL LETTER Q\0" "FULLWIDTH LATIN SMALL LETTER R\0" "FULLWIDTH LATIN SMALL LETTER S\0" "FULLWIDTH LATIN SMALL LETTER T\0" "FULLWIDTH LATIN SMALL LETTER U\0" "FULLWIDTH LATIN SMALL LETTER V\0" "FULLWIDTH LATIN SMALL LETTER W\0" "FULLWIDTH LATIN SMALL LETTER X\0" "FULLWIDTH LATIN SMALL LETTER Y\0" "FULLWIDTH LATIN SMALL LETTER Z\0" "FULLWIDTH LEFT CURLY BRACKET\0" "FULLWIDTH LEFT PARENTHESIS\0" "FULLWIDTH LEFT SQUARE BRACKET\0" "FULLWIDTH LEFT WHITE PARENTHESIS\0" "FULLWIDTH LESS-THAN SIGN\0" "FULLWIDTH LOW LINE\0" "FULLWIDTH MACRON\0" "FULLWIDTH NOT SIGN\0" "FULLWIDTH NUMBER SIGN\0" "FULLWIDTH PERCENT SIGN\0" "FULLWIDTH PLUS SIGN\0" "FULLWIDTH POUND SIGN\0" "FULLWIDTH QUESTION MARK\0" "FULLWIDTH QUOTATION MARK\0" "FULLWIDTH REVERSE SOLIDUS\0" "FULLWIDTH RIGHT CURLY BRACKET\0" "FULLWIDTH RIGHT PARENTHESIS\0" "FULLWIDTH RIGHT SQUARE BRACKET\0" "FULLWIDTH RIGHT WHITE PARENTHESIS\0" "FULLWIDTH SEMICOLON\0" "FULLWIDTH SOLIDUS\0" "FULLWIDTH TILDE\0" "FULLWIDTH VERTICAL LINE\0" "FULLWIDTH WON SIGN\0" "FULLWIDTH YEN SIGN\0" "FUNCTION APPLICATION\0" "FUNERAL URN\0" "FUSE\0" "GAME DIE\0" "GEAR\0" "GEAR WITH HANDLES\0" "GEAR WITHOUT HUB\0" "GEM STONE\0" "GEMINI\0" "GEOMETRIC PROPORTION\0" "GEOMETRICALLY EQUAL TO\0" "GEOMETRICALLY EQUIVALENT TO\0" "GEORGIAN CAPITAL LETTER AN\0" "GEORGIAN CAPITAL LETTER BAN\0" "GEORGIAN CAPITAL LETTER CAN\0" "GEORGIAN CAPITAL LETTER CHAR\0" "GEORGIAN CAPITAL LETTER CHIN\0" "GEORGIAN CAPITAL LETTER CIL\0" "GEORGIAN CAPITAL LETTER DON\0" "GEORGIAN CAPITAL LETTER EN\0" "GEORGIAN CAPITAL LETTER GAN\0" "GEORGIAN CAPITAL LETTER GHAN\0" "GEORGIAN CAPITAL LETTER HAE\0" "GEORGIAN CAPITAL LETTER HAR\0" "GEORGIAN CAPITAL LETTER HE\0" "GEORGIAN CAPITAL LETTER HIE\0" "GEORGIAN CAPITAL LETTER HOE\0" "GEORGIAN CAPITAL LETTER IN\0" "GEORGIAN CAPITAL LETTER JHAN\0" "GEORGIAN CAPITAL LETTER JIL\0" "GEORGIAN CAPITAL LETTER KAN\0" "GEORGIAN CAPITAL LETTER KHAR\0" "GEORGIAN CAPITAL LETTER LAS\0" "GEORGIAN CAPITAL LETTER MAN\0" "GEORGIAN CAPITAL LETTER NAR\0" "GEORGIAN CAPITAL LETTER ON\0" "GEORGIAN CAPITAL LETTER PAR\0" "GEORGIAN CAPITAL LETTER PHAR\0" "GEORGIAN CAPITAL LETTER QAR\0" "GEORGIAN CAPITAL LETTER RAE\0" "GEORGIAN CAPITAL LETTER SAN\0" "GEORGIAN CAPITAL LETTER SHIN\0" "GEORGIAN CAPITAL LETTER TAN\0" "GEORGIAN CAPITAL LETTER TAR\0" "GEORGIAN CAPITAL LETTER UN\0" "GEORGIAN CAPITAL LETTER VIN\0" "GEORGIAN CAPITAL LETTER WE\0" "GEORGIAN CAPITAL LETTER XAN\0" "GEORGIAN CAPITAL LETTER ZEN\0" "GEORGIAN CAPITAL LETTER ZHAR\0" "GEORGIAN LETTER AIN\0" "GEORGIAN LETTER AN\0" "GEORGIAN LETTER BAN\0" "GEORGIAN LETTER CAN\0" "GEORGIAN LETTER CHAR\0" "GEORGIAN LETTER CHIN\0" "GEORGIAN LETTER CIL\0" "GEORGIAN LETTER DON\0" "GEORGIAN LETTER ELIFI\0" "GEORGIAN LETTER EN\0" "GEORGIAN LETTER FI\0" "GEORGIAN LETTER GAN\0" "GEORGIAN LETTER GHAN\0" "GEORGIAN LETTER HAE\0" "GEORGIAN LETTER HAR\0" "GEORGIAN LETTER HE\0" "GEORGIAN LETTER HIE\0" "GEORGIAN LETTER HOE\0" "GEORGIAN LETTER IN\0" "GEORGIAN LETTER JHAN\0" "GEORGIAN LETTER JIL\0" "GEORGIAN LETTER KAN\0" "GEORGIAN LETTER KHAR\0" "GEORGIAN LETTER LAS\0" "GEORGIAN LETTER MAN\0" "GEORGIAN LETTER NAR\0" "GEORGIAN LETTER ON\0" "GEORGIAN LETTER PAR\0" "GEORGIAN LETTER PHAR\0" "GEORGIAN LETTER QAR\0" "GEORGIAN LETTER RAE\0" "GEORGIAN LETTER SAN\0" "GEORGIAN LETTER SHIN\0" "GEORGIAN LETTER TAN\0" "GEORGIAN LETTER TAR\0" "GEORGIAN LETTER TURNED GAN\0" "GEORGIAN LETTER UN\0" "GEORGIAN LETTER VIN\0" "GEORGIAN LETTER WE\0" "GEORGIAN LETTER XAN\0" "GEORGIAN LETTER YN\0" "GEORGIAN LETTER ZEN\0" "GEORGIAN LETTER ZHAR\0" "GEORGIAN PARAGRAPH SEPARATOR\0" "GEORGIAN SMALL LETTER AN\0" "GEORGIAN SMALL LETTER BAN\0" "GEORGIAN SMALL LETTER CAN\0" "GEORGIAN SMALL LETTER CHAR\0" "GEORGIAN SMALL LETTER CHIN\0" "GEORGIAN SMALL LETTER CIL\0" "GEORGIAN SMALL LETTER DON\0" "GEORGIAN SMALL LETTER EN\0" "GEORGIAN SMALL LETTER GAN\0" "GEORGIAN SMALL LETTER GHAN\0" "GEORGIAN SMALL LETTER HAE\0" "GEORGIAN SMALL LETTER HAR\0" "GEORGIAN SMALL LETTER HE\0" "GEORGIAN SMALL LETTER HIE\0" "GEORGIAN SMALL LETTER HOE\0" "GEORGIAN SMALL LETTER IN\0" "GEORGIAN SMALL LETTER JHAN\0" "GEORGIAN SMALL LETTER JIL\0" "GEORGIAN SMALL LETTER KAN\0" "GEORGIAN SMALL LETTER KHAR\0" "GEORGIAN SMALL LETTER LAS\0" "GEORGIAN SMALL LETTER MAN\0" "GEORGIAN SMALL LETTER NAR\0" "GEORGIAN SMALL LETTER ON\0" "GEORGIAN SMALL LETTER PAR\0" "GEORGIAN SMALL LETTER PHAR\0" "GEORGIAN SMALL LETTER QAR\0" "GEORGIAN SMALL LETTER RAE\0" "GEORGIAN SMALL LETTER SAN\0" "GEORGIAN SMALL LETTER SHIN\0" "GEORGIAN SMALL LETTER TAN\0" "GEORGIAN SMALL LETTER TAR\0" "GEORGIAN SMALL LETTER UN\0" "GEORGIAN SMALL LETTER VIN\0" "GEORGIAN SMALL LETTER WE\0" "GEORGIAN SMALL LETTER XAN\0" "GEORGIAN SMALL LETTER ZEN\0" "GEORGIAN SMALL LETTER ZHAR\0" "GERMAN PENNY SIGN\0" "GETA MARK\0" "GHOST\0" "GIMEL SYMBOL\0" "GIRL\0" "GLAGOLITIC CAPITAL LETTER AZU\0" "GLAGOLITIC CAPITAL LETTER BIG YUS\0" "GLAGOLITIC CAPITAL LETTER BUKY\0" "GLAGOLITIC CAPITAL LETTER CHRIVI\0" "GLAGOLITIC CAPITAL LETTER DJERVI\0" "GLAGOLITIC CAPITAL LETTER DOBRO\0" "GLAGOLITIC CAPITAL LETTER DZELO\0" "GLAGOLITIC CAPITAL LETTER FITA\0" "GLAGOLITIC CAPITAL LETTER FRITU\0" "GLAGOLITIC CAPITAL LETTER GLAGOLI\0" "GLAGOLITIC CAPITAL LETTER HERU\0" "GLAGOLITIC CAPITAL LETTER I\0" "GLAGOLITIC CAPITAL LETTER INITIAL IZHE\0" "GLAGOLITIC CAPITAL LETTER IOTATED BIG YUS\0" "GLAGOLITIC CAPITAL LETTER IOTATED SMALL YUS\0" "GLAGOLITIC CAPITAL LETTER IZHE\0" "GLAGOLITIC CAPITAL LETTER IZHITSA\0" "GLAGOLITIC CAPITAL LETTER KAKO\0" "GLAGOLITIC CAPITAL LETTER LATINATE MYSLITE\0" "GLAGOLITIC CAPITAL LETTER LJUDIJE\0" "GLAGOLITIC CAPITAL LETTER MYSLITE\0" "GLAGOLITIC CAPITAL LETTER NASHI\0" "GLAGOLITIC CAPITAL LETTER ONU\0" "GLAGOLITIC CAPITAL LETTER OTU\0" "GLAGOLITIC CAPITAL LETTER PE\0" "GLAGOLITIC CAPITAL LETTER POKOJI\0" "GLAGOLITIC CAPITAL LETTER RITSI\0" "GLAGOLITIC CAPITAL LETTER SHA\0" "GLAGOLITIC CAPITAL LETTER SHTA\0" "GLAGOLITIC CAPITAL LETTER SHTAPIC\0" "GLAGOLITIC CAPITAL LETTER SLOVO\0" "GLAGOLITIC CAPITAL LETTER SMALL YUS\0" "GLAGOLITIC CAPITAL LETTER SMALL YUS WITH TAIL\0" "GLAGOLITIC CAPITAL LETTER SPIDERY HA\0" "GLAGOLITIC CAPITAL LETTER TROKUTASTI A\0" "GLAGOLITIC CAPITAL LETTER TSI\0" "GLAGOLITIC CAPITAL LETTER TVRIDO\0" "GLAGOLITIC CAPITAL LETTER UKU\0" "GLAGOLITIC CAPITAL LETTER VEDE\0" "GLAGOLITIC CAPITAL LETTER YATI\0" "GLAGOLITIC CAPITAL LETTER YERI\0" "GLAGOLITIC CAPITAL LETTER YERU\0" "GLAGOLITIC CAPITAL LETTER YESTU\0" "GLAGOLITIC CAPITAL LETTER YO\0" "GLAGOLITIC CAPITAL LETTER YU\0" "GLAGOLITIC CAPITAL LETTER ZEMLJA\0" "GLAGOLITIC CAPITAL LETTER ZHIVETE\0" "GLAGOLITIC SMALL LETTER AZU\0" "GLAGOLITIC SMALL LETTER BIG YUS\0" "GLAGOLITIC SMALL LETTER BUKY\0" "GLAGOLITIC SMALL LETTER CHRIVI\0" "GLAGOLITIC SMALL LETTER DJERVI\0" "GLAGOLITIC SMALL LETTER DOBRO\0" "GLAGOLITIC SMALL LETTER DZELO\0" "GLAGOLITIC SMALL LETTER FITA\0" "GLAGOLITIC SMALL LETTER FRITU\0" "GLAGOLITIC SMALL LETTER GLAGOLI\0" "GLAGOLITIC SMALL LETTER HERU\0" "GLAGOLITIC SMALL LETTER I\0" "GLAGOLITIC SMALL LETTER INITIAL IZHE\0" "GLAGOLITIC SMALL LETTER IOTATED BIG YUS\0" "GLAGOLITIC SMALL LETTER IOTATED SMALL YUS\0" "GLAGOLITIC SMALL LETTER IZHE\0" "GLAGOLITIC SMALL LETTER IZHITSA\0" "GLAGOLITIC SMALL LETTER KAKO\0" "GLAGOLITIC SMALL LETTER LATINATE MYSLITE\0" "GLAGOLITIC SMALL LETTER LJUDIJE\0" "GLAGOLITIC SMALL LETTER MYSLITE\0" "GLAGOLITIC SMALL LETTER NASHI\0" "GLAGOLITIC SMALL LETTER ONU\0" "GLAGOLITIC SMALL LETTER OTU\0" "GLAGOLITIC SMALL LETTER PE\0" "GLAGOLITIC SMALL LETTER POKOJI\0" "GLAGOLITIC SMALL LETTER RITSI\0" "GLAGOLITIC SMALL LETTER SHA\0" "GLAGOLITIC SMALL LETTER SHTA\0" "GLAGOLITIC SMALL LETTER SHTAPIC\0" "GLAGOLITIC SMALL LETTER SLOVO\0" "GLAGOLITIC SMALL LETTER SMALL YUS\0" "GLAGOLITIC SMALL LETTER SMALL YUS WITH TAIL\0" "GLAGOLITIC SMALL LETTER SPIDERY HA\0" "GLAGOLITIC SMALL LETTER TROKUTASTI A\0" "GLAGOLITIC SMALL LETTER TSI\0" "GLAGOLITIC SMALL LETTER TVRIDO\0" "GLAGOLITIC SMALL LETTER UKU\0" "GLAGOLITIC SMALL LETTER VEDE\0" "GLAGOLITIC SMALL LETTER YATI\0" "GLAGOLITIC SMALL LETTER YERI\0" "GLAGOLITIC SMALL LETTER YERU\0" "GLAGOLITIC SMALL LETTER YESTU\0" "GLAGOLITIC SMALL LETTER YO\0" "GLAGOLITIC SMALL LETTER YU\0" "GLAGOLITIC SMALL LETTER ZEMLJA\0" "GLAGOLITIC SMALL LETTER ZHIVETE\0" "GLEICH STARK\0" "GLOBE WITH MERIDIANS\0" "GLOWING STAR\0" "GOAT\0" "GOTHIC LETTER AHSA\0" "GOTHIC LETTER AIHVUS\0" "GOTHIC LETTER BAIRKAN\0" "GOTHIC LETTER DAGS\0" "GOTHIC LETTER EIS\0" "GOTHIC LETTER FAIHU\0" "GOTHIC LETTER GIBA\0" "GOTHIC LETTER HAGL\0" "GOTHIC LETTER HWAIR\0" "GOTHIC LETTER IGGWS\0" "GOTHIC LETTER IUJA\0" "GOTHIC LETTER JER\0" "GOTHIC LETTER KUSMA\0" "GOTHIC LETTER LAGUS\0" "GOTHIC LETTER MANNA\0" "GOTHIC LETTER NAUTHS\0" "GOTHIC LETTER NINE HUNDRED\0" "GOTHIC LETTER NINETY\0" "GOTHIC LETTER OTHAL\0" "GOTHIC LETTER PAIRTHRA\0" "GOTHIC LETTER QAIRTHRA\0" "GOTHIC LETTER RAIDA\0" "GOTHIC LETTER SAUIL\0" "GOTHIC LETTER TEIWS\0" "GOTHIC LETTER THIUTH\0" "GOTHIC LETTER URUS\0" "GOTHIC LETTER WINJA\0" "GRADUATION CAP\0" "GRAPES\0" "GRAVE ACCENT\0" "GREATER-THAN ABOVE DOUBLE-LINE EQUAL ABOVE LESS-THAN\0" "GREATER-THAN ABOVE LESS-THAN ABOVE DOUBLE-LINE EQUAL\0" "GREATER-THAN ABOVE RIGHTWARDS ARROW\0" "GREATER-THAN ABOVE SIMILAR ABOVE LESS-THAN\0" "GREATER-THAN ABOVE SIMILAR OR EQUAL\0" "GREATER-THAN ABOVE SLANTED EQUAL ABOVE LESS-THAN ABOVE SLANTED EQUAL\0" "GREATER-THAN AND NOT APPROXIMATE\0" "GREATER-THAN AND SINGLE-LINE NOT EQUAL TO\0" "GREATER-THAN BESIDE LESS-THAN\0" "GREATER-THAN BUT NOT EQUAL TO\0" "GREATER-THAN BUT NOT EQUIVALENT TO\0" "GREATER-THAN CLOSED BY CURVE\0" "GREATER-THAN CLOSED BY CURVE ABOVE SLANTED EQUAL\0" "GREATER-THAN EQUAL TO OR LESS-THAN\0" "GREATER-THAN OR APPROXIMATE\0" "GREATER-THAN OR EQUAL TO\0" "GREATER-THAN OR EQUIVALENT TO\0" "GREATER-THAN OR LESS-THAN\0" "GREATER-THAN OR SLANTED EQUAL TO\0" "GREATER-THAN OR SLANTED EQUAL TO WITH DOT ABOVE\0" "GREATER-THAN OR SLANTED EQUAL TO WITH DOT ABOVE LEFT\0" "GREATER-THAN OR SLANTED EQUAL TO WITH DOT INSIDE\0" "GREATER-THAN OVER EQUAL TO\0" "GREATER-THAN OVERLAPPING LESS-THAN\0" "GREATER-THAN SIGN\0" "GREATER-THAN WITH CIRCLE INSIDE\0" "GREATER-THAN WITH DOT\0" "GREATER-THAN WITH QUESTION MARK ABOVE\0" "GREEK ACROPHONIC ATTIC FIFTY\0" "GREEK ACROPHONIC ATTIC FIFTY STATERS\0" "GREEK ACROPHONIC ATTIC FIFTY TALENTS\0" "GREEK ACROPHONIC ATTIC FIFTY THOUSAND\0" "GREEK ACROPHONIC ATTIC FIFTY THOUSAND STATERS\0" "GREEK ACROPHONIC ATTIC FIVE\0" "GREEK ACROPHONIC ATTIC FIVE HUNDRED\0" "GREEK ACROPHONIC ATTIC FIVE HUNDRED STATERS\0" "GREEK ACROPHONIC ATTIC FIVE HUNDRED TALENTS\0" "GREEK ACROPHONIC ATTIC FIVE STATERS\0" "GREEK ACROPHONIC ATTIC FIVE TALENTS\0" "GREEK ACROPHONIC ATTIC FIVE THOUSAND\0" "GREEK ACROPHONIC ATTIC FIVE THOUSAND TALENTS\0" "GREEK ACROPHONIC ATTIC ONE DRACHMA\0" "GREEK ACROPHONIC ATTIC ONE HALF\0" "GREEK ACROPHONIC ATTIC ONE HUNDRED STATERS\0" "GREEK ACROPHONIC ATTIC ONE HUNDRED TALENTS\0" "GREEK ACROPHONIC ATTIC ONE QUARTER\0" "GREEK ACROPHONIC ATTIC ONE THOUSAND STATERS\0" "GREEK ACROPHONIC ATTIC ONE THOUSAND TALENTS\0" "GREEK ACROPHONIC ATTIC TEN MNAS\0" "GREEK ACROPHONIC ATTIC TEN STATERS\0" "GREEK ACROPHONIC ATTIC TEN TALENTS\0" "GREEK ACROPHONIC ATTIC TEN THOUSAND STATERS\0" "GREEK ACROPHONIC CARYSTIAN FIVE HUNDRED\0" "GREEK ACROPHONIC CYRENAIC TWO DRACHMAS\0" "GREEK ACROPHONIC DELPHIC FIVE MNAS\0" "GREEK ACROPHONIC EPIDAUREAN FIVE HUNDRED\0" "GREEK ACROPHONIC EPIDAUREAN TWO\0" "GREEK ACROPHONIC EPIDAUREAN TWO DRACHMAS\0" "GREEK ACROPHONIC HERAEUM ONE PLETHRON\0" "GREEK ACROPHONIC HERMIONIAN FIFTY\0" "GREEK ACROPHONIC HERMIONIAN ONE\0" "GREEK ACROPHONIC HERMIONIAN TEN\0" "GREEK ACROPHONIC MESSENIAN TEN\0" "GREEK ACROPHONIC NAXIAN FIVE HUNDRED\0" "GREEK ACROPHONIC STRATIAN FIFTY MNAS\0" "GREEK ACROPHONIC THESPIAN FIFTY\0" "GREEK ACROPHONIC THESPIAN FIVE HUNDRED\0" "GREEK ACROPHONIC THESPIAN FIVE THOUSAND\0" "GREEK ACROPHONIC THESPIAN ONE\0" "GREEK ACROPHONIC THESPIAN ONE HUNDRED\0" "GREEK ACROPHONIC THESPIAN ONE THOUSAND\0" "GREEK ACROPHONIC THESPIAN TEN\0" "GREEK ACROPHONIC THESPIAN THIRTY\0" "GREEK ACROPHONIC THESPIAN THREE HUNDRED\0" "GREEK ACROPHONIC THESPIAN TWO\0" "GREEK ACROPHONIC TROEZENIAN FIFTY\0" "GREEK ACROPHONIC TROEZENIAN FIFTY ALTERNATE FORM\0" "GREEK ACROPHONIC TROEZENIAN FIVE\0" "GREEK ACROPHONIC TROEZENIAN FIVE HUNDRED\0" "GREEK ACROPHONIC TROEZENIAN TEN\0" "GREEK ACROPHONIC TROEZENIAN TEN ALTERNATE FORM\0" "GREEK ANO TELEIA\0" "GREEK AROURA SIGN\0" "GREEK ARTABE SIGN\0" "GREEK BETA SYMBOL\0" "GREEK CAPITAL DOTTED LUNATE SIGMA SYMBOL\0" "GREEK CAPITAL KAI SYMBOL\0" "GREEK CAPITAL LETTER ALPHA\0" "GREEK CAPITAL LETTER ALPHA WITH DASIA\0" "GREEK CAPITAL LETTER ALPHA WITH DASIA AND OXIA\0" "GREEK CAPITAL LETTER ALPHA WITH DASIA AND OXIA AND PROSGEGRAMMENI\0" "GREEK CAPITAL LETTER ALPHA WITH DASIA AND PERISPOMENI\0" "GREEK CAPITAL LETTER ALPHA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI\0" "GREEK CAPITAL LETTER ALPHA WITH DASIA AND PROSGEGRAMMENI\0" "GREEK CAPITAL LETTER ALPHA WITH DASIA AND VARIA\0" "GREEK CAPITAL LETTER ALPHA WITH DASIA AND VARIA AND PROSGEGRAMMENI\0" "GREEK CAPITAL LETTER ALPHA WITH MACRON\0" "GREEK CAPITAL LETTER ALPHA WITH OXIA\0" "GREEK CAPITAL LETTER ALPHA WITH PROSGEGRAMMENI\0" "GREEK CAPITAL LETTER ALPHA WITH PSILI\0" "GREEK CAPITAL LETTER ALPHA WITH PSILI AND OXIA\0" "GREEK CAPITAL LETTER ALPHA WITH PSILI AND OXIA AND PROSGEGRAMMENI\0" "GREEK CAPITAL LETTER ALPHA WITH PSILI AND PERISPOMENI\0" "GREEK CAPITAL LETTER ALPHA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI\0" "GREEK CAPITAL LETTER ALPHA WITH PSILI AND PROSGEGRAMMENI\0" "GREEK CAPITAL LETTER ALPHA WITH PSILI AND VARIA\0" "GREEK CAPITAL LETTER ALPHA WITH PSILI AND VARIA AND PROSGEGRAMMENI\0" "GREEK CAPITAL LETTER ALPHA WITH TONOS\0" "GREEK CAPITAL LETTER ALPHA WITH VARIA\0" "GREEK CAPITAL LETTER ALPHA WITH VRACHY\0" "GREEK CAPITAL LETTER ARCHAIC SAMPI\0" "GREEK CAPITAL LETTER BETA\0" "GREEK CAPITAL LETTER CHI\0" "GREEK CAPITAL LETTER DELTA\0" "GREEK CAPITAL LETTER EPSILON\0" "GREEK CAPITAL LETTER EPSILON WITH DASIA\0" "GREEK CAPITAL LETTER EPSILON WITH DASIA AND OXIA\0" "GREEK CAPITAL LETTER EPSILON WITH DASIA AND VARIA\0" "GREEK CAPITAL LETTER EPSILON WITH OXIA\0" "GREEK CAPITAL LETTER EPSILON WITH PSILI\0" "GREEK CAPITAL LETTER EPSILON WITH PSILI AND OXIA\0" "GREEK CAPITAL LETTER EPSILON WITH PSILI AND VARIA\0" "GREEK CAPITAL LETTER EPSILON WITH TONOS\0" "GREEK CAPITAL LETTER EPSILON WITH VARIA\0" "GREEK CAPITAL LETTER ETA\0" "GREEK CAPITAL LETTER ETA WITH DASIA\0" "GREEK CAPITAL LETTER ETA WITH DASIA AND OXIA\0" "GREEK CAPITAL LETTER ETA WITH DASIA AND OXIA AND PROSGEGRAMMENI\0" "GREEK CAPITAL LETTER ETA WITH DASIA AND PERISPOMENI\0" "GREEK CAPITAL LETTER ETA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI\0" "GREEK CAPITAL LETTER ETA WITH DASIA AND PROSGEGRAMMENI\0" "GREEK CAPITAL LETTER ETA WITH DASIA AND VARIA\0" "GREEK CAPITAL LETTER ETA WITH DASIA AND VARIA AND PROSGEGRAMMENI\0" "GREEK CAPITAL LETTER ETA WITH OXIA\0" "GREEK CAPITAL LETTER ETA WITH PROSGEGRAMMENI\0" "GREEK CAPITAL LETTER ETA WITH PSILI\0" "GREEK CAPITAL LETTER ETA WITH PSILI AND OXIA\0" "GREEK CAPITAL LETTER ETA WITH PSILI AND OXIA AND PROSGEGRAMMENI\0" "GREEK CAPITAL LETTER ETA WITH PSILI AND PERISPOMENI\0" "GREEK CAPITAL LETTER ETA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI\0" "GREEK CAPITAL LETTER ETA WITH PSILI AND PROSGEGRAMMENI\0" "GREEK CAPITAL LETTER ETA WITH PSILI AND VARIA\0" "GREEK CAPITAL LETTER ETA WITH PSILI AND VARIA AND PROSGEGRAMMENI\0" "GREEK CAPITAL LETTER ETA WITH TONOS\0" "GREEK CAPITAL LETTER ETA WITH VARIA\0" "GREEK CAPITAL LETTER GAMMA\0" "GREEK CAPITAL LETTER HETA\0" "GREEK CAPITAL LETTER IOTA\0" "GREEK CAPITAL LETTER IOTA WITH DASIA\0" "GREEK CAPITAL LETTER IOTA WITH DASIA AND OXIA\0" "GREEK CAPITAL LETTER IOTA WITH DASIA AND PERISPOMENI\0" "GREEK CAPITAL LETTER IOTA WITH DASIA AND VARIA\0" "GREEK CAPITAL LETTER IOTA WITH DIALYTIKA\0" "GREEK CAPITAL LETTER IOTA WITH MACRON\0" "GREEK CAPITAL LETTER IOTA WITH OXIA\0" "GREEK CAPITAL LETTER IOTA WITH PSILI\0" "GREEK CAPITAL LETTER IOTA WITH PSILI AND OXIA\0" "GREEK CAPITAL LETTER IOTA WITH PSILI AND PERISPOMENI\0" "GREEK CAPITAL LETTER IOTA WITH PSILI AND VARIA\0" "GREEK CAPITAL LETTER IOTA WITH TONOS\0" "GREEK CAPITAL LETTER IOTA WITH VARIA\0" "GREEK CAPITAL LETTER IOTA WITH VRACHY\0" "GREEK CAPITAL LETTER KAPPA\0" "GREEK CAPITAL LETTER LAMDA\0" "GREEK CAPITAL LETTER MU\0" "GREEK CAPITAL LETTER NU\0" "GREEK CAPITAL LETTER OMEGA\0" "GREEK CAPITAL LETTER OMEGA WITH DASIA\0" "GREEK CAPITAL LETTER OMEGA WITH DASIA AND OXIA\0" "GREEK CAPITAL LETTER OMEGA WITH DASIA AND OXIA AND PROSGEGRAMMENI\0" "GREEK CAPITAL LETTER OMEGA WITH DASIA AND PERISPOMENI\0" "GREEK CAPITAL LETTER OMEGA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI\0" "GREEK CAPITAL LETTER OMEGA WITH DASIA AND PROSGEGRAMMENI\0" "GREEK CAPITAL LETTER OMEGA WITH DASIA AND VARIA\0" "GREEK CAPITAL LETTER OMEGA WITH DASIA AND VARIA AND PROSGEGRAMMENI\0" "GREEK CAPITAL LETTER OMEGA WITH OXIA\0" "GREEK CAPITAL LETTER OMEGA WITH PROSGEGRAMMENI\0" "GREEK CAPITAL LETTER OMEGA WITH PSILI\0" "GREEK CAPITAL LETTER OMEGA WITH PSILI AND OXIA\0" "GREEK CAPITAL LETTER OMEGA WITH PSILI AND OXIA AND PROSGEGRAMMENI\0" "GREEK CAPITAL LETTER OMEGA WITH PSILI AND PERISPOMENI\0" "GREEK CAPITAL LETTER OMEGA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI\0" "GREEK CAPITAL LETTER OMEGA WITH PSILI AND PROSGEGRAMMENI\0" "GREEK CAPITAL LETTER OMEGA WITH PSILI AND VARIA\0" "GREEK CAPITAL LETTER OMEGA WITH PSILI AND VARIA AND PROSGEGRAMMENI\0" "GREEK CAPITAL LETTER OMEGA WITH TONOS\0" "GREEK CAPITAL LETTER OMEGA WITH VARIA\0" "GREEK CAPITAL LETTER OMICRON\0" "GREEK CAPITAL LETTER OMICRON WITH DASIA\0" "GREEK CAPITAL LETTER OMICRON WITH DASIA AND OXIA\0" "GREEK CAPITAL LETTER OMICRON WITH DASIA AND VARIA\0" "GREEK CAPITAL LETTER OMICRON WITH OXIA\0" "GREEK CAPITAL LETTER OMICRON WITH PSILI\0" "GREEK CAPITAL LETTER OMICRON WITH PSILI AND OXIA\0" "GREEK CAPITAL LETTER OMICRON WITH PSILI AND VARIA\0" "GREEK CAPITAL LETTER OMICRON WITH TONOS\0" "GREEK CAPITAL LETTER OMICRON WITH VARIA\0" "GREEK CAPITAL LETTER PAMPHYLIAN DIGAMMA\0" "GREEK CAPITAL LETTER PHI\0" "GREEK CAPITAL LETTER PI\0" "GREEK CAPITAL LETTER PSI\0" "GREEK CAPITAL LETTER RHO\0" "GREEK CAPITAL LETTER RHO WITH DASIA\0" "GREEK CAPITAL LETTER SAN\0" "GREEK CAPITAL LETTER SHO\0" "GREEK CAPITAL LETTER SIGMA\0" "GREEK CAPITAL LETTER TAU\0" "GREEK CAPITAL LETTER THETA\0" "GREEK CAPITAL LETTER UPSILON\0" "GREEK CAPITAL LETTER UPSILON WITH DASIA\0" "GREEK CAPITAL LETTER UPSILON WITH DASIA AND OXIA\0" "GREEK CAPITAL LETTER UPSILON WITH DASIA AND PERISPOMENI\0" "GREEK CAPITAL LETTER UPSILON WITH DASIA AND VARIA\0" "GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA\0" "GREEK CAPITAL LETTER UPSILON WITH MACRON\0" "GREEK CAPITAL LETTER UPSILON WITH OXIA\0" "GREEK CAPITAL LETTER UPSILON WITH TONOS\0" "GREEK CAPITAL LETTER UPSILON WITH VARIA\0" "GREEK CAPITAL LETTER UPSILON WITH VRACHY\0" "GREEK CAPITAL LETTER XI\0" "GREEK CAPITAL LETTER ZETA\0" "GREEK CAPITAL LUNATE SIGMA SYMBOL\0" "GREEK CAPITAL REVERSED DOTTED LUNATE SIGMA SYMBOL\0" "GREEK CAPITAL REVERSED LUNATE SIGMA SYMBOL\0" "GREEK CAPITAL THETA SYMBOL\0" "GREEK DASIA\0" "GREEK DASIA AND OXIA\0" "GREEK DASIA AND PERISPOMENI\0" "GREEK DASIA AND VARIA\0" "GREEK DIALYTIKA AND OXIA\0" "GREEK DIALYTIKA AND PERISPOMENI\0" "GREEK DIALYTIKA AND VARIA\0" "GREEK DIALYTIKA TONOS\0" "GREEK DRACHMA SIGN\0" "GREEK FIVE OBOLS SIGN\0" "GREEK FOUR OBOLS SIGN\0" "GREEK GRAMMA SIGN\0" "GREEK INSTRUMENTAL NOTATION SYMBOL-1\0" "GREEK INSTRUMENTAL NOTATION SYMBOL-11\0" "GREEK INSTRUMENTAL NOTATION SYMBOL-12\0" "GREEK INSTRUMENTAL NOTATION SYMBOL-13\0" "GREEK INSTRUMENTAL NOTATION SYMBOL-14\0" "GREEK INSTRUMENTAL NOTATION SYMBOL-17\0" "GREEK INSTRUMENTAL NOTATION SYMBOL-18\0" "GREEK INSTRUMENTAL NOTATION SYMBOL-19\0" "GREEK INSTRUMENTAL NOTATION SYMBOL-2\0" "GREEK INSTRUMENTAL NOTATION SYMBOL-23\0" "GREEK INSTRUMENTAL NOTATION SYMBOL-24\0" "GREEK INSTRUMENTAL NOTATION SYMBOL-25\0" "GREEK INSTRUMENTAL NOTATION SYMBOL-26\0" "GREEK INSTRUMENTAL NOTATION SYMBOL-27\0" "GREEK INSTRUMENTAL NOTATION SYMBOL-29\0" "GREEK INSTRUMENTAL NOTATION SYMBOL-30\0" "GREEK INSTRUMENTAL NOTATION SYMBOL-32\0" "GREEK INSTRUMENTAL NOTATION SYMBOL-36\0" "GREEK INSTRUMENTAL NOTATION SYMBOL-37\0" "GREEK INSTRUMENTAL NOTATION SYMBOL-38\0" "GREEK INSTRUMENTAL NOTATION SYMBOL-39\0" "GREEK INSTRUMENTAL NOTATION SYMBOL-4\0" "GREEK INSTRUMENTAL NOTATION SYMBOL-40\0" "GREEK INSTRUMENTAL NOTATION SYMBOL-42\0" "GREEK INSTRUMENTAL NOTATION SYMBOL-43\0" "GREEK INSTRUMENTAL NOTATION SYMBOL-45\0" "GREEK INSTRUMENTAL NOTATION SYMBOL-47\0" "GREEK INSTRUMENTAL NOTATION SYMBOL-48\0" "GREEK INSTRUMENTAL NOTATION SYMBOL-49\0" "GREEK INSTRUMENTAL NOTATION SYMBOL-5\0" "GREEK INSTRUMENTAL NOTATION SYMBOL-50\0" "GREEK INSTRUMENTAL NOTATION SYMBOL-51\0" "GREEK INSTRUMENTAL NOTATION SYMBOL-52\0" "GREEK INSTRUMENTAL NOTATION SYMBOL-53\0" "GREEK INSTRUMENTAL NOTATION SYMBOL-54\0" "GREEK INSTRUMENTAL NOTATION SYMBOL-7\0" "GREEK INSTRUMENTAL NOTATION SYMBOL-8\0" "GREEK KAI SYMBOL\0" "GREEK KAPPA SYMBOL\0" "GREEK KORONIS\0" "GREEK KYATHOS BASE SIGN\0" "GREEK LETTER ARCHAIC KOPPA\0" "GREEK LETTER DIGAMMA\0" "GREEK LETTER KOPPA\0" "GREEK LETTER SAMPI\0" "GREEK LETTER SMALL CAPITAL GAMMA\0" "GREEK LETTER SMALL CAPITAL LAMDA\0" "GREEK LETTER SMALL CAPITAL PI\0" "GREEK LETTER SMALL CAPITAL PSI\0" "GREEK LETTER SMALL CAPITAL RHO\0" "GREEK LETTER STIGMA\0" "GREEK LETTER YOT\0" "GREEK LITRA SIGN\0" "GREEK LOWER NUMERAL SIGN\0" "GREEK LUNATE EPSILON SYMBOL\0" "GREEK LUNATE SIGMA SYMBOL\0" "GREEK METRETES SIGN\0" "GREEK MUSICAL LEIMMA\0" "GREEK NUMERAL SIGN\0" "GREEK OBOL SIGN\0" "GREEK ONE HALF SIGN\0" "GREEK ONE HALF SIGN ALTERNATE FORM\0" "GREEK OUNKIA SIGN\0" "GREEK OXIA\0" "GREEK PERISPOMENI\0" "GREEK PHI SYMBOL\0" "GREEK PI SYMBOL\0" "GREEK PROSGEGRAMMENI\0" "GREEK PSILI\0" "GREEK PSILI AND OXIA\0" "GREEK PSILI AND PERISPOMENI\0" "GREEK PSILI AND VARIA\0" "GREEK QUESTION MARK\0" "GREEK REVERSED LUNATE EPSILON SYMBOL\0" "GREEK RHO SYMBOL\0" "GREEK RHO WITH STROKE SYMBOL\0" "GREEK SMALL DOTTED LUNATE SIGMA SYMBOL\0" "GREEK SMALL LETTER ALPHA\0" "GREEK SMALL LETTER ALPHA WITH DASIA\0" "GREEK SMALL LETTER ALPHA WITH DASIA AND OXIA\0" "GREEK SMALL LETTER ALPHA WITH DASIA AND OXIA AND YPOGEGRAMMENI\0" "GREEK SMALL LETTER ALPHA WITH DASIA AND PERISPOMENI\0" "GREEK SMALL LETTER ALPHA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI\0" "GREEK SMALL LETTER ALPHA WITH DASIA AND VARIA\0" "GREEK SMALL LETTER ALPHA WITH DASIA AND VARIA AND YPOGEGRAMMENI\0" "GREEK SMALL LETTER ALPHA WITH DASIA AND YPOGEGRAMMENI\0" "GREEK SMALL LETTER ALPHA WITH MACRON\0" "GREEK SMALL LETTER ALPHA WITH OXIA\0" "GREEK SMALL LETTER ALPHA WITH OXIA AND YPOGEGRAMMENI\0" "GREEK SMALL LETTER ALPHA WITH PERISPOMENI\0" "GREEK SMALL LETTER ALPHA WITH PERISPOMENI AND YPOGEGRAMMENI\0" "GREEK SMALL LETTER ALPHA WITH PSILI\0" "GREEK SMALL LETTER ALPHA WITH PSILI AND OXIA\0" "GREEK SMALL LETTER ALPHA WITH PSILI AND OXIA AND YPOGEGRAMMENI\0" "GREEK SMALL LETTER ALPHA WITH PSILI AND PERISPOMENI\0" "GREEK SMALL LETTER ALPHA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI\0" "GREEK SMALL LETTER ALPHA WITH PSILI AND VARIA\0" "GREEK SMALL LETTER ALPHA WITH PSILI AND VARIA AND YPOGEGRAMMENI\0" "GREEK SMALL LETTER ALPHA WITH PSILI AND YPOGEGRAMMENI\0" "GREEK SMALL LETTER ALPHA WITH TONOS\0" "GREEK SMALL LETTER ALPHA WITH VARIA\0" "GREEK SMALL LETTER ALPHA WITH VARIA AND YPOGEGRAMMENI\0" "GREEK SMALL LETTER ALPHA WITH VRACHY\0" "GREEK SMALL LETTER ALPHA WITH YPOGEGRAMMENI\0" "GREEK SMALL LETTER ARCHAIC KOPPA\0" "GREEK SMALL LETTER ARCHAIC SAMPI\0" "GREEK SMALL LETTER BETA\0" "GREEK SMALL LETTER CHI\0" "GREEK SMALL LETTER DELTA\0" "GREEK SMALL LETTER DIGAMMA\0" "GREEK SMALL LETTER EPSILON\0" "GREEK SMALL LETTER EPSILON WITH DASIA\0" "GREEK SMALL LETTER EPSILON WITH DASIA AND OXIA\0" "GREEK SMALL LETTER EPSILON WITH DASIA AND VARIA\0" "GREEK SMALL LETTER EPSILON WITH OXIA\0" "GREEK SMALL LETTER EPSILON WITH PSILI\0" "GREEK SMALL LETTER EPSILON WITH PSILI AND OXIA\0" "GREEK SMALL LETTER EPSILON WITH PSILI AND VARIA\0" "GREEK SMALL LETTER EPSILON WITH TONOS\0" "GREEK SMALL LETTER EPSILON WITH VARIA\0" "GREEK SMALL LETTER ETA\0" "GREEK SMALL LETTER ETA WITH DASIA\0" "GREEK SMALL LETTER ETA WITH DASIA AND OXIA\0" "GREEK SMALL LETTER ETA WITH DASIA AND OXIA AND YPOGEGRAMMENI\0" "GREEK SMALL LETTER ETA WITH DASIA AND PERISPOMENI\0" "GREEK SMALL LETTER ETA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI\0" "GREEK SMALL LETTER ETA WITH DASIA AND VARIA\0" "GREEK SMALL LETTER ETA WITH DASIA AND VARIA AND YPOGEGRAMMENI\0" "GREEK SMALL LETTER ETA WITH DASIA AND YPOGEGRAMMENI\0" "GREEK SMALL LETTER ETA WITH OXIA\0" "GREEK SMALL LETTER ETA WITH OXIA AND YPOGEGRAMMENI\0" "GREEK SMALL LETTER ETA WITH PERISPOMENI\0" "GREEK SMALL LETTER ETA WITH PERISPOMENI AND YPOGEGRAMMENI\0" "GREEK SMALL LETTER ETA WITH PSILI\0" "GREEK SMALL LETTER ETA WITH PSILI AND OXIA\0" "GREEK SMALL LETTER ETA WITH PSILI AND OXIA AND YPOGEGRAMMENI\0" "GREEK SMALL LETTER ETA WITH PSILI AND PERISPOMENI\0" "GREEK SMALL LETTER ETA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI\0" "GREEK SMALL LETTER ETA WITH PSILI AND VARIA\0" "GREEK SMALL LETTER ETA WITH PSILI AND VARIA AND YPOGEGRAMMENI\0" "GREEK SMALL LETTER ETA WITH PSILI AND YPOGEGRAMMENI\0" "GREEK SMALL LETTER ETA WITH TONOS\0" "GREEK SMALL LETTER ETA WITH VARIA\0" "GREEK SMALL LETTER ETA WITH VARIA AND YPOGEGRAMMENI\0" "GREEK SMALL LETTER ETA WITH YPOGEGRAMMENI\0" "GREEK SMALL LETTER FINAL SIGMA\0" "GREEK SMALL LETTER GAMMA\0" "GREEK SMALL LETTER HETA\0" "GREEK SMALL LETTER IOTA\0" "GREEK SMALL LETTER IOTA WITH DASIA\0" "GREEK SMALL LETTER IOTA WITH DASIA AND OXIA\0" "GREEK SMALL LETTER IOTA WITH DASIA AND PERISPOMENI\0" "GREEK SMALL LETTER IOTA WITH DASIA AND VARIA\0" "GREEK SMALL LETTER IOTA WITH DIALYTIKA\0" "GREEK SMALL LETTER IOTA WITH DIALYTIKA AND OXIA\0" "GREEK SMALL LETTER IOTA WITH DIALYTIKA AND PERISPOMENI\0" "GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS\0" "GREEK SMALL LETTER IOTA WITH DIALYTIKA AND VARIA\0" "GREEK SMALL LETTER IOTA WITH MACRON\0" "GREEK SMALL LETTER IOTA WITH OXIA\0" "GREEK SMALL LETTER IOTA WITH PERISPOMENI\0" "GREEK SMALL LETTER IOTA WITH PSILI\0" "GREEK SMALL LETTER IOTA WITH PSILI AND OXIA\0" "GREEK SMALL LETTER IOTA WITH PSILI AND PERISPOMENI\0" "GREEK SMALL LETTER IOTA WITH PSILI AND VARIA\0" "GREEK SMALL LETTER IOTA WITH TONOS\0" "GREEK SMALL LETTER IOTA WITH VARIA\0" "GREEK SMALL LETTER IOTA WITH VRACHY\0" "GREEK SMALL LETTER KAPPA\0" "GREEK SMALL LETTER KOPPA\0" "GREEK SMALL LETTER LAMDA\0" "GREEK SMALL LETTER MU\0" "GREEK SMALL LETTER NU\0" "GREEK SMALL LETTER OMEGA\0" "GREEK SMALL LETTER OMEGA WITH DASIA\0" "GREEK SMALL LETTER OMEGA WITH DASIA AND OXIA\0" "GREEK SMALL LETTER OMEGA WITH DASIA AND OXIA AND YPOGEGRAMMENI\0" "GREEK SMALL LETTER OMEGA WITH DASIA AND PERISPOMENI\0" "GREEK SMALL LETTER OMEGA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI\0" "GREEK SMALL LETTER OMEGA WITH DASIA AND VARIA\0" "GREEK SMALL LETTER OMEGA WITH DASIA AND VARIA AND YPOGEGRAMMENI\0" "GREEK SMALL LETTER OMEGA WITH DASIA AND YPOGEGRAMMENI\0" "GREEK SMALL LETTER OMEGA WITH OXIA\0" "GREEK SMALL LETTER OMEGA WITH OXIA AND YPOGEGRAMMENI\0" "GREEK SMALL LETTER OMEGA WITH PERISPOMENI\0" "GREEK SMALL LETTER OMEGA WITH PERISPOMENI AND YPOGEGRAMMENI\0" "GREEK SMALL LETTER OMEGA WITH PSILI\0" "GREEK SMALL LETTER OMEGA WITH PSILI AND OXIA\0" "GREEK SMALL LETTER OMEGA WITH PSILI AND OXIA AND YPOGEGRAMMENI\0" "GREEK SMALL LETTER OMEGA WITH PSILI AND PERISPOMENI\0" "GREEK SMALL LETTER OMEGA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI\0" "GREEK SMALL LETTER OMEGA WITH PSILI AND VARIA\0" "GREEK SMALL LETTER OMEGA WITH PSILI AND VARIA AND YPOGEGRAMMENI\0" "GREEK SMALL LETTER OMEGA WITH PSILI AND YPOGEGRAMMENI\0" "GREEK SMALL LETTER OMEGA WITH TONOS\0" "GREEK SMALL LETTER OMEGA WITH VARIA\0" "GREEK SMALL LETTER OMEGA WITH VARIA AND YPOGEGRAMMENI\0" "GREEK SMALL LETTER OMEGA WITH YPOGEGRAMMENI\0" "GREEK SMALL LETTER OMICRON\0" "GREEK SMALL LETTER OMICRON WITH DASIA\0" "GREEK SMALL LETTER OMICRON WITH DASIA AND OXIA\0" "GREEK SMALL LETTER OMICRON WITH DASIA AND VARIA\0" "GREEK SMALL LETTER OMICRON WITH OXIA\0" "GREEK SMALL LETTER OMICRON WITH PSILI\0" "GREEK SMALL LETTER OMICRON WITH PSILI AND OXIA\0" "GREEK SMALL LETTER OMICRON WITH PSILI AND VARIA\0" "GREEK SMALL LETTER OMICRON WITH TONOS\0" "GREEK SMALL LETTER OMICRON WITH VARIA\0" "GREEK SMALL LETTER PAMPHYLIAN DIGAMMA\0" "GREEK SMALL LETTER PHI\0" "GREEK SMALL LETTER PI\0" "GREEK SMALL LETTER PSI\0" "GREEK SMALL LETTER RHO\0" "GREEK SMALL LETTER RHO WITH DASIA\0" "GREEK SMALL LETTER RHO WITH PSILI\0" "GREEK SMALL LETTER SAMPI\0" "GREEK SMALL LETTER SAN\0" "GREEK SMALL LETTER SHO\0" "GREEK SMALL LETTER SIGMA\0" "GREEK SMALL LETTER STIGMA\0" "GREEK SMALL LETTER TAU\0" "GREEK SMALL LETTER THETA\0" "GREEK SMALL LETTER UPSILON\0" "GREEK SMALL LETTER UPSILON WITH DASIA\0" "GREEK SMALL LETTER UPSILON WITH DASIA AND OXIA\0" "GREEK SMALL LETTER UPSILON WITH DASIA AND PERISPOMENI\0" "GREEK SMALL LETTER UPSILON WITH DASIA AND VARIA\0" "GREEK SMALL LETTER UPSILON WITH DIALYTIKA\0" "GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND OXIA\0" "GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND PERISPOMENI\0" "GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS\0" "GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND VARIA\0" "GREEK SMALL LETTER UPSILON WITH MACRON\0" "GREEK SMALL LETTER UPSILON WITH OXIA\0" "GREEK SMALL LETTER UPSILON WITH PERISPOMENI\0" "GREEK SMALL LETTER UPSILON WITH PSILI\0" "GREEK SMALL LETTER UPSILON WITH PSILI AND OXIA\0" "GREEK SMALL LETTER UPSILON WITH PSILI AND PERISPOMENI\0" "GREEK SMALL LETTER UPSILON WITH PSILI AND VARIA\0" "GREEK SMALL LETTER UPSILON WITH TONOS\0" "GREEK SMALL LETTER UPSILON WITH VARIA\0" "GREEK SMALL LETTER UPSILON WITH VRACHY\0" "GREEK SMALL LETTER XI\0" "GREEK SMALL LETTER ZETA\0" "GREEK SMALL REVERSED DOTTED LUNATE SIGMA SYMBOL\0" "GREEK SMALL REVERSED LUNATE SIGMA SYMBOL\0" "GREEK SUBSCRIPT SMALL LETTER BETA\0" "GREEK SUBSCRIPT SMALL LETTER CHI\0" "GREEK SUBSCRIPT SMALL LETTER GAMMA\0" "GREEK SUBSCRIPT SMALL LETTER PHI\0" "GREEK SUBSCRIPT SMALL LETTER RHO\0" "GREEK TALENT SIGN\0" "GREEK THETA SYMBOL\0" "GREEK THREE OBOLS SIGN\0" "GREEK THREE QUARTERS SIGN\0" "GREEK TONOS\0" "GREEK TRYBLION BASE SIGN\0" "GREEK TWO OBOLS SIGN\0" "GREEK TWO THIRDS SIGN\0" "GREEK UPSILON WITH ACUTE AND HOOK SYMBOL\0" "GREEK UPSILON WITH DIAERESIS AND HOOK SYMBOL\0" "GREEK UPSILON WITH HOOK SYMBOL\0" "GREEK VARIA\0" "GREEK VOCAL NOTATION SYMBOL-1\0" "GREEK VOCAL NOTATION SYMBOL-10\0" "GREEK VOCAL NOTATION SYMBOL-11\0" "GREEK VOCAL NOTATION SYMBOL-12\0" "GREEK VOCAL NOTATION SYMBOL-13\0" "GREEK VOCAL NOTATION SYMBOL-14\0" "GREEK VOCAL NOTATION SYMBOL-15\0" "GREEK VOCAL NOTATION SYMBOL-16\0" "GREEK VOCAL NOTATION SYMBOL-17\0" "GREEK VOCAL NOTATION SYMBOL-18\0" "GREEK VOCAL NOTATION SYMBOL-19\0" "GREEK VOCAL NOTATION SYMBOL-2\0" "GREEK VOCAL NOTATION SYMBOL-20\0" "GREEK VOCAL NOTATION SYMBOL-21\0" "GREEK VOCAL NOTATION SYMBOL-22\0" "GREEK VOCAL NOTATION SYMBOL-23\0" "GREEK VOCAL NOTATION SYMBOL-24\0" "GREEK VOCAL NOTATION SYMBOL-3\0" "GREEK VOCAL NOTATION SYMBOL-4\0" "GREEK VOCAL NOTATION SYMBOL-5\0" "GREEK VOCAL NOTATION SYMBOL-50\0" "GREEK VOCAL NOTATION SYMBOL-51\0" "GREEK VOCAL NOTATION SYMBOL-52\0" "GREEK VOCAL NOTATION SYMBOL-53\0" "GREEK VOCAL NOTATION SYMBOL-54\0" "GREEK VOCAL NOTATION SYMBOL-6\0" "GREEK VOCAL NOTATION SYMBOL-7\0" "GREEK VOCAL NOTATION SYMBOL-8\0" "GREEK VOCAL NOTATION SYMBOL-9\0" "GREEK XESTES SIGN\0" "GREEK YEAR SIGN\0" "GREEK YPOGEGRAMMENI\0" "GREEK ZERO SIGN\0" "GREEN APPLE\0" "GREEN BOOK\0" "GREEN HEART\0" "GRINNING CAT FACE WITH SMILING EYES\0" "GRINNING FACE WITH SMILING EYES\0" "GROWING HEART\0" "GUARANI SIGN\0" "GUARDSMAN\0" "GUITAR\0" "GUJARATI DIGIT EIGHT\0" "GUJARATI DIGIT FIVE\0" "GUJARATI DIGIT FOUR\0" "GUJARATI DIGIT NINE\0" "GUJARATI DIGIT ONE\0" "GUJARATI DIGIT SEVEN\0" "GUJARATI DIGIT SIX\0" "GUJARATI DIGIT THREE\0" "GUJARATI DIGIT TWO\0" "GUJARATI DIGIT ZERO\0" "GUJARATI LETTER A\0" "GUJARATI LETTER AA\0" "GUJARATI LETTER AI\0" "GUJARATI LETTER AU\0" "GUJARATI LETTER BA\0" "GUJARATI LETTER BHA\0" "GUJARATI LETTER CA\0" "GUJARATI LETTER CHA\0" "GUJARATI LETTER DA\0" "GUJARATI LETTER DDA\0" "GUJARATI LETTER DDHA\0" "GUJARATI LETTER DHA\0" "GUJARATI LETTER E\0" "GUJARATI LETTER GA\0" "GUJARATI LETTER GHA\0" "GUJARATI LETTER HA\0" "GUJARATI LETTER I\0" "GUJARATI LETTER II\0" "GUJARATI LETTER JA\0" "GUJARATI LETTER JHA\0" "GUJARATI LETTER KA\0" "GUJARATI LETTER KHA\0" "GUJARATI LETTER LA\0" "GUJARATI LETTER LLA\0" "GUJARATI LETTER MA\0" "GUJARATI LETTER NA\0" "GUJARATI LETTER NGA\0" "GUJARATI LETTER NNA\0" "GUJARATI LETTER NYA\0" "GUJARATI LETTER O\0" "GUJARATI LETTER PA\0" "GUJARATI LETTER PHA\0" "GUJARATI LETTER RA\0" "GUJARATI LETTER SA\0" "GUJARATI LETTER SHA\0" "GUJARATI LETTER SSA\0" "GUJARATI LETTER TA\0" "GUJARATI LETTER THA\0" "GUJARATI LETTER TTA\0" "GUJARATI LETTER TTHA\0" "GUJARATI LETTER U\0" "GUJARATI LETTER UU\0" "GUJARATI LETTER VA\0" "GUJARATI LETTER VOCALIC L\0" "GUJARATI LETTER VOCALIC LL\0" "GUJARATI LETTER VOCALIC R\0" "GUJARATI LETTER VOCALIC RR\0" "GUJARATI LETTER YA\0" "GUJARATI OM\0" "GUJARATI RUPEE SIGN\0" "GUJARATI SIGN ANUSVARA\0" "GUJARATI SIGN AVAGRAHA\0" "GUJARATI SIGN CANDRABINDU\0" "GUJARATI SIGN NUKTA\0" "GUJARATI SIGN VIRAMA\0" "GUJARATI SIGN VISARGA\0" "GUJARATI VOWEL CANDRA E\0" "GUJARATI VOWEL CANDRA O\0" "GUJARATI VOWEL SIGN AA\0" "GUJARATI VOWEL SIGN AI\0" "GUJARATI VOWEL SIGN AU\0" "GUJARATI VOWEL SIGN CANDRA E\0" "GUJARATI VOWEL SIGN CANDRA O\0" "GUJARATI VOWEL SIGN E\0" "GUJARATI VOWEL SIGN I\0" "GUJARATI VOWEL SIGN II\0" "GUJARATI VOWEL SIGN O\0" "GUJARATI VOWEL SIGN U\0" "GUJARATI VOWEL SIGN UU\0" "GUJARATI VOWEL SIGN VOCALIC L\0" "GUJARATI VOWEL SIGN VOCALIC LL\0" "GUJARATI VOWEL SIGN VOCALIC R\0" "GUJARATI VOWEL SIGN VOCALIC RR\0" "GURMUKHI ADDAK\0" "GURMUKHI DIGIT EIGHT\0" "GURMUKHI DIGIT FIVE\0" "GURMUKHI DIGIT FOUR\0" "GURMUKHI DIGIT NINE\0" "GURMUKHI DIGIT ONE\0" "GURMUKHI DIGIT SEVEN\0" "GURMUKHI DIGIT SIX\0" "GURMUKHI DIGIT THREE\0" "GURMUKHI DIGIT TWO\0" "GURMUKHI DIGIT ZERO\0" "GURMUKHI EK ONKAR\0" "GURMUKHI IRI\0" "GURMUKHI LETTER A\0" "GURMUKHI LETTER AA\0" "GURMUKHI LETTER AI\0" "GURMUKHI LETTER AU\0" "GURMUKHI LETTER BA\0" "GURMUKHI LETTER BHA\0" "GURMUKHI LETTER CA\0" "GURMUKHI LETTER CHA\0" "GURMUKHI LETTER DA\0" "GURMUKHI LETTER DDA\0" "GURMUKHI LETTER DDHA\0" "GURMUKHI LETTER DHA\0" "GURMUKHI LETTER EE\0" "GURMUKHI LETTER FA\0" "GURMUKHI LETTER GA\0" "GURMUKHI LETTER GHA\0" "GURMUKHI LETTER GHHA\0" "GURMUKHI LETTER HA\0" "GURMUKHI LETTER I\0" "GURMUKHI LETTER II\0" "GURMUKHI LETTER JA\0" "GURMUKHI LETTER JHA\0" "GURMUKHI LETTER KA\0" "GURMUKHI LETTER KHA\0" "GURMUKHI LETTER KHHA\0" "GURMUKHI LETTER LA\0" "GURMUKHI LETTER LLA\0" "GURMUKHI LETTER MA\0" "GURMUKHI LETTER NA\0" "GURMUKHI LETTER NGA\0" "GURMUKHI LETTER NNA\0" "GURMUKHI LETTER NYA\0" "GURMUKHI LETTER OO\0" "GURMUKHI LETTER PA\0" "GURMUKHI LETTER PHA\0" "GURMUKHI LETTER RA\0" "GURMUKHI LETTER RRA\0" "GURMUKHI LETTER SA\0" "GURMUKHI LETTER SHA\0" "GURMUKHI LETTER TA\0" "GURMUKHI LETTER THA\0" "GURMUKHI LETTER TTA\0" "GURMUKHI LETTER TTHA\0" "GURMUKHI LETTER U\0" "GURMUKHI LETTER UU\0" "GURMUKHI LETTER VA\0" "GURMUKHI LETTER YA\0" "GURMUKHI LETTER ZA\0" "GURMUKHI SIGN ADAK BINDI\0" "GURMUKHI SIGN BINDI\0" "GURMUKHI SIGN NUKTA\0" "GURMUKHI SIGN UDAAT\0" "GURMUKHI SIGN VIRAMA\0" "GURMUKHI SIGN VISARGA\0" "GURMUKHI SIGN YAKASH\0" "GURMUKHI TIPPI\0" "GURMUKHI URA\0" "GURMUKHI VOWEL SIGN AA\0" "GURMUKHI VOWEL SIGN AI\0" "GURMUKHI VOWEL SIGN AU\0" "GURMUKHI VOWEL SIGN EE\0" "GURMUKHI VOWEL SIGN I\0" "GURMUKHI VOWEL SIGN II\0" "GURMUKHI VOWEL SIGN OO\0" "GURMUKHI VOWEL SIGN U\0" "GURMUKHI VOWEL SIGN UU\0" "HAIR SPACE\0" "HAIRCUT\0" "HALFWIDTH BLACK SQUARE\0" "HALFWIDTH DOWNWARDS ARROW\0" "HALFWIDTH FORMS LIGHT VERTICAL\0" "HALFWIDTH HANGUL FILLER\0" "HALFWIDTH HANGUL LETTER A\0" "HALFWIDTH HANGUL LETTER AE\0" "HALFWIDTH HANGUL LETTER CHIEUCH\0" "HALFWIDTH HANGUL LETTER CIEUC\0" "HALFWIDTH HANGUL LETTER E\0" "HALFWIDTH HANGUL LETTER EO\0" "HALFWIDTH HANGUL LETTER EU\0" "HALFWIDTH HANGUL LETTER HIEUH\0" "HALFWIDTH HANGUL LETTER I\0" "HALFWIDTH HANGUL LETTER IEUNG\0" "HALFWIDTH HANGUL LETTER KHIEUKH\0" "HALFWIDTH HANGUL LETTER KIYEOK\0" "HALFWIDTH HANGUL LETTER KIYEOK-SIOS\0" "HALFWIDTH HANGUL LETTER MIEUM\0" "HALFWIDTH HANGUL LETTER NIEUN\0" "HALFWIDTH HANGUL LETTER NIEUN-CIEUC\0" "HALFWIDTH HANGUL LETTER NIEUN-HIEUH\0" "HALFWIDTH HANGUL LETTER O\0" "HALFWIDTH HANGUL LETTER OE\0" "HALFWIDTH HANGUL LETTER PHIEUPH\0" "HALFWIDTH HANGUL LETTER PIEUP\0" "HALFWIDTH HANGUL LETTER PIEUP-SIOS\0" "HALFWIDTH HANGUL LETTER RIEUL\0" "HALFWIDTH HANGUL LETTER RIEUL-HIEUH\0" "HALFWIDTH HANGUL LETTER RIEUL-KIYEOK\0" "HALFWIDTH HANGUL LETTER RIEUL-MIEUM\0" "HALFWIDTH HANGUL LETTER RIEUL-PHIEUPH\0" "HALFWIDTH HANGUL LETTER RIEUL-PIEUP\0" "HALFWIDTH HANGUL LETTER RIEUL-SIOS\0" "HALFWIDTH HANGUL LETTER RIEUL-THIEUTH\0" "HALFWIDTH HANGUL LETTER SIOS\0" "HALFWIDTH HANGUL LETTER SSANGCIEUC\0" "HALFWIDTH HANGUL LETTER SSANGKIYEOK\0" "HALFWIDTH HANGUL LETTER SSANGPIEUP\0" "HALFWIDTH HANGUL LETTER SSANGSIOS\0" "HALFWIDTH HANGUL LETTER SSANGTIKEUT\0" "HALFWIDTH HANGUL LETTER THIEUTH\0" "HALFWIDTH HANGUL LETTER TIKEUT\0" "HALFWIDTH HANGUL LETTER U\0" "HALFWIDTH HANGUL LETTER WA\0" "HALFWIDTH HANGUL LETTER WAE\0" "HALFWIDTH HANGUL LETTER WE\0" "HALFWIDTH HANGUL LETTER WEO\0" "HALFWIDTH HANGUL LETTER WI\0" "HALFWIDTH HANGUL LETTER YA\0" "HALFWIDTH HANGUL LETTER YAE\0" "HALFWIDTH HANGUL LETTER YE\0" "HALFWIDTH HANGUL LETTER YEO\0" "HALFWIDTH HANGUL LETTER YI\0" "HALFWIDTH HANGUL LETTER YO\0" "HALFWIDTH HANGUL LETTER YU\0" "HALFWIDTH IDEOGRAPHIC COMMA\0" "HALFWIDTH IDEOGRAPHIC FULL STOP\0" "HALFWIDTH KATAKANA LETTER A\0" "HALFWIDTH KATAKANA LETTER E\0" "HALFWIDTH KATAKANA LETTER HA\0" "HALFWIDTH KATAKANA LETTER HE\0" "HALFWIDTH KATAKANA LETTER HI\0" "HALFWIDTH KATAKANA LETTER HO\0" "HALFWIDTH KATAKANA LETTER HU\0" "HALFWIDTH KATAKANA LETTER I\0" "HALFWIDTH KATAKANA LETTER KA\0" "HALFWIDTH KATAKANA LETTER KE\0" "HALFWIDTH KATAKANA LETTER KI\0" "HALFWIDTH KATAKANA LETTER KO\0" "HALFWIDTH KATAKANA LETTER KU\0" "HALFWIDTH KATAKANA LETTER MA\0" "HALFWIDTH KATAKANA LETTER ME\0" "HALFWIDTH KATAKANA LETTER MI\0" "HALFWIDTH KATAKANA LETTER MO\0" "HALFWIDTH KATAKANA LETTER MU\0" "HALFWIDTH KATAKANA LETTER N\0" "HALFWIDTH KATAKANA LETTER NA\0" "HALFWIDTH KATAKANA LETTER NE\0" "HALFWIDTH KATAKANA LETTER NI\0" "HALFWIDTH KATAKANA LETTER NO\0" "HALFWIDTH KATAKANA LETTER NU\0" "HALFWIDTH KATAKANA LETTER O\0" "HALFWIDTH KATAKANA LETTER RA\0" "HALFWIDTH KATAKANA LETTER RE\0" "HALFWIDTH KATAKANA LETTER RI\0" "HALFWIDTH KATAKANA LETTER RO\0" "HALFWIDTH KATAKANA LETTER RU\0" "HALFWIDTH KATAKANA LETTER SA\0" "HALFWIDTH KATAKANA LETTER SE\0" "HALFWIDTH KATAKANA LETTER SI\0" "HALFWIDTH KATAKANA LETTER SMALL A\0" "HALFWIDTH KATAKANA LETTER SMALL E\0" "HALFWIDTH KATAKANA LETTER SMALL I\0" "HALFWIDTH KATAKANA LETTER SMALL O\0" "HALFWIDTH KATAKANA LETTER SMALL TU\0" "HALFWIDTH KATAKANA LETTER SMALL U\0" "HALFWIDTH KATAKANA LETTER SMALL YA\0" "HALFWIDTH KATAKANA LETTER SMALL YO\0" "HALFWIDTH KATAKANA LETTER SMALL YU\0" "HALFWIDTH KATAKANA LETTER SO\0" "HALFWIDTH KATAKANA LETTER SU\0" "HALFWIDTH KATAKANA LETTER TA\0" "HALFWIDTH KATAKANA LETTER TE\0" "HALFWIDTH KATAKANA LETTER TI\0" "HALFWIDTH KATAKANA LETTER TO\0" "HALFWIDTH KATAKANA LETTER TU\0" "HALFWIDTH KATAKANA LETTER U\0" "HALFWIDTH KATAKANA LETTER WA\0" "HALFWIDTH KATAKANA LETTER WO\0" "HALFWIDTH KATAKANA LETTER YA\0" "HALFWIDTH KATAKANA LETTER YO\0" "HALFWIDTH KATAKANA LETTER YU\0" "HALFWIDTH KATAKANA MIDDLE DOT\0" "HALFWIDTH KATAKANA SEMI-VOICED SOUND MARK\0" "HALFWIDTH KATAKANA VOICED SOUND MARK\0" "HALFWIDTH KATAKANA-HIRAGANA PROLONGED SOUND MARK\0" "HALFWIDTH LEFT CORNER BRACKET\0" "HALFWIDTH LEFTWARDS ARROW\0" "HALFWIDTH RIGHT CORNER BRACKET\0" "HALFWIDTH RIGHTWARDS ARROW\0" "HALFWIDTH UPWARDS ARROW\0" "HALFWIDTH WHITE CIRCLE\0" "HAMBURGER\0" "HAMMER\0" "HAMMER AND PICK\0" "HAMMER AND SICKLE\0" "HAMSTER FACE\0" "HANDBAG\0" "HANGUL CHOSEONG CEONGCHIEUMCHIEUCH\0" "HANGUL CHOSEONG CEONGCHIEUMCIEUC\0" "HANGUL CHOSEONG CEONGCHIEUMSIOS\0" "HANGUL CHOSEONG CEONGCHIEUMSSANGCIEUC\0" "HANGUL CHOSEONG CEONGCHIEUMSSANGSIOS\0" "HANGUL CHOSEONG CHIEUCH\0" "HANGUL CHOSEONG CHIEUCH-HIEUH\0" "HANGUL CHOSEONG CHIEUCH-KHIEUKH\0" "HANGUL CHOSEONG CHITUEUMCHIEUCH\0" "HANGUL CHOSEONG CHITUEUMCIEUC\0" "HANGUL CHOSEONG CHITUEUMSIOS\0" "HANGUL CHOSEONG CHITUEUMSSANGCIEUC\0" "HANGUL CHOSEONG CHITUEUMSSANGSIOS\0" "HANGUL CHOSEONG CIEUC\0" "HANGUL CHOSEONG CIEUC-IEUNG\0" "HANGUL CHOSEONG FILLER\0" "HANGUL CHOSEONG HIEUH\0" "HANGUL CHOSEONG HIEUH-SIOS\0" "HANGUL CHOSEONG IEUNG\0" "HANGUL CHOSEONG IEUNG-CHIEUCH\0" "HANGUL CHOSEONG IEUNG-CIEUC\0" "HANGUL CHOSEONG IEUNG-HIEUH\0" "HANGUL CHOSEONG IEUNG-KIYEOK\0" "HANGUL CHOSEONG IEUNG-MIEUM\0" "HANGUL CHOSEONG IEUNG-PANSIOS\0" "HANGUL CHOSEONG IEUNG-PHIEUPH\0" "HANGUL CHOSEONG IEUNG-PIEUP\0" "HANGUL CHOSEONG IEUNG-RIEUL\0" "HANGUL CHOSEONG IEUNG-SIOS\0" "HANGUL CHOSEONG IEUNG-THIEUTH\0" "HANGUL CHOSEONG IEUNG-TIKEUT\0" "HANGUL CHOSEONG KAPYEOUNMIEUM\0" "HANGUL CHOSEONG KAPYEOUNPHIEUPH\0" "HANGUL CHOSEONG KAPYEOUNPIEUP\0" "HANGUL CHOSEONG KAPYEOUNRIEUL\0" "HANGUL CHOSEONG KAPYEOUNSSANGPIEUP\0" "HANGUL CHOSEONG KHIEUKH\0" "HANGUL CHOSEONG KIYEOK\0" "HANGUL CHOSEONG KIYEOK-TIKEUT\0" "HANGUL CHOSEONG MIEUM\0" "HANGUL CHOSEONG MIEUM-KIYEOK\0" "HANGUL CHOSEONG MIEUM-PIEUP\0" "HANGUL CHOSEONG MIEUM-SIOS\0" "HANGUL CHOSEONG MIEUM-TIKEUT\0" "HANGUL CHOSEONG NIEUN\0" "HANGUL CHOSEONG NIEUN-CIEUC\0" "HANGUL CHOSEONG NIEUN-HIEUH\0" "HANGUL CHOSEONG NIEUN-KIYEOK\0" "HANGUL CHOSEONG NIEUN-PIEUP\0" "HANGUL CHOSEONG NIEUN-SIOS\0" "HANGUL CHOSEONG NIEUN-TIKEUT\0" "HANGUL CHOSEONG PANSIOS\0" "HANGUL CHOSEONG PHIEUPH\0" "HANGUL CHOSEONG PHIEUPH-HIEUH\0" "HANGUL CHOSEONG PHIEUPH-PIEUP\0" "HANGUL CHOSEONG PIEUP\0" "HANGUL CHOSEONG PIEUP-CHIEUCH\0" "HANGUL CHOSEONG PIEUP-CIEUC\0" "HANGUL CHOSEONG PIEUP-HIEUH\0" "HANGUL CHOSEONG PIEUP-KHIEUKH\0" "HANGUL CHOSEONG PIEUP-KIYEOK\0" "HANGUL CHOSEONG PIEUP-NIEUN\0" "HANGUL CHOSEONG PIEUP-PHIEUPH\0" "HANGUL CHOSEONG PIEUP-SIOS\0" "HANGUL CHOSEONG PIEUP-SIOS-CIEUC\0" "HANGUL CHOSEONG PIEUP-SIOS-KIYEOK\0" "HANGUL CHOSEONG PIEUP-SIOS-PIEUP\0" "HANGUL CHOSEONG PIEUP-SIOS-THIEUTH\0" "HANGUL CHOSEONG PIEUP-SIOS-TIKEUT\0" "HANGUL CHOSEONG PIEUP-SSANGSIOS\0" "HANGUL CHOSEONG PIEUP-THIEUTH\0" "HANGUL CHOSEONG PIEUP-TIKEUT\0" "HANGUL CHOSEONG RIEUL\0" "HANGUL CHOSEONG RIEUL-CIEUC\0" "HANGUL CHOSEONG RIEUL-HIEUH\0" "HANGUL CHOSEONG RIEUL-KAPYEOUNPIEUP\0" "HANGUL CHOSEONG RIEUL-KHIEUKH\0" "HANGUL CHOSEONG RIEUL-KIYEOK\0" "HANGUL CHOSEONG RIEUL-MIEUM\0" "HANGUL CHOSEONG RIEUL-NIEUN\0" "HANGUL CHOSEONG RIEUL-PIEUP\0" "HANGUL CHOSEONG RIEUL-SIOS\0" "HANGUL CHOSEONG RIEUL-SSANGKIYEOK\0" "HANGUL CHOSEONG RIEUL-SSANGPIEUP\0" "HANGUL CHOSEONG RIEUL-SSANGTIKEUT\0" "HANGUL CHOSEONG RIEUL-TIKEUT\0" "HANGUL CHOSEONG SIOS\0" "HANGUL CHOSEONG SIOS-CHIEUCH\0" "HANGUL CHOSEONG SIOS-CIEUC\0" "HANGUL CHOSEONG SIOS-HIEUH\0" "HANGUL CHOSEONG SIOS-IEUNG\0" "HANGUL CHOSEONG SIOS-KHIEUKH\0" "HANGUL CHOSEONG SIOS-KIYEOK\0" "HANGUL CHOSEONG SIOS-MIEUM\0" "HANGUL CHOSEONG SIOS-NIEUN\0" "HANGUL CHOSEONG SIOS-PHIEUPH\0" "HANGUL CHOSEONG SIOS-PIEUP\0" "HANGUL CHOSEONG SIOS-PIEUP-KIYEOK\0" "HANGUL CHOSEONG SIOS-RIEUL\0" "HANGUL CHOSEONG SIOS-SSANGSIOS\0" "HANGUL CHOSEONG SIOS-THIEUTH\0" "HANGUL CHOSEONG SIOS-TIKEUT\0" "HANGUL CHOSEONG SSANGCIEUC\0" "HANGUL CHOSEONG SSANGCIEUC-HIEUH\0" "HANGUL CHOSEONG SSANGHIEUH\0" "HANGUL CHOSEONG SSANGIEUNG\0" "HANGUL CHOSEONG SSANGKIYEOK\0" "HANGUL CHOSEONG SSANGNIEUN\0" "HANGUL CHOSEONG SSANGPIEUP\0" "HANGUL CHOSEONG SSANGRIEUL\0" "HANGUL CHOSEONG SSANGSIOS\0" "HANGUL CHOSEONG SSANGSIOS-PIEUP\0" "HANGUL CHOSEONG SSANGTHIEUTH\0" "HANGUL CHOSEONG SSANGTIKEUT\0" "HANGUL CHOSEONG SSANGYEORINHIEUH\0" "HANGUL CHOSEONG THIEUTH\0" "HANGUL CHOSEONG TIKEUT\0" "HANGUL CHOSEONG TIKEUT-CIEUC\0" "HANGUL CHOSEONG TIKEUT-KIYEOK\0" "HANGUL CHOSEONG TIKEUT-MIEUM\0" "HANGUL CHOSEONG TIKEUT-PIEUP\0" "HANGUL CHOSEONG TIKEUT-RIEUL\0" "HANGUL CHOSEONG TIKEUT-SIOS\0" "HANGUL CHOSEONG YEORINHIEUH\0" "HANGUL CHOSEONG YESIEUNG\0" "HANGUL DOUBLE DOT TONE MARK\0" "HANGUL FILLER\0" "HANGUL JONGSEONG CHIEUCH\0" "HANGUL JONGSEONG CIEUC\0" "HANGUL JONGSEONG CIEUC-PIEUP\0" "HANGUL JONGSEONG CIEUC-SSANGPIEUP\0" "HANGUL JONGSEONG HIEUH\0" "HANGUL JONGSEONG HIEUH-MIEUM\0" "HANGUL JONGSEONG HIEUH-NIEUN\0" "HANGUL JONGSEONG HIEUH-PIEUP\0" "HANGUL JONGSEONG HIEUH-RIEUL\0" "HANGUL JONGSEONG IEUNG\0" "HANGUL JONGSEONG IEUNG-KHIEUKH\0" "HANGUL JONGSEONG IEUNG-KIYEOK\0" "HANGUL JONGSEONG IEUNG-SSANGKIYEOK\0" "HANGUL JONGSEONG KAPYEOUNMIEUM\0" "HANGUL JONGSEONG KAPYEOUNPHIEUPH\0" "HANGUL JONGSEONG KAPYEOUNPIEUP\0" "HANGUL JONGSEONG KAPYEOUNRIEUL\0" "HANGUL JONGSEONG KHIEUKH\0" "HANGUL JONGSEONG KIYEOK\0" "HANGUL JONGSEONG KIYEOK-CHIEUCH\0" "HANGUL JONGSEONG KIYEOK-HIEUH\0" "HANGUL JONGSEONG KIYEOK-KHIEUKH\0" "HANGUL JONGSEONG KIYEOK-NIEUN\0" "HANGUL JONGSEONG KIYEOK-PIEUP\0" "HANGUL JONGSEONG KIYEOK-RIEUL\0" "HANGUL JONGSEONG KIYEOK-SIOS\0" "HANGUL JONGSEONG KIYEOK-SIOS-KIYEOK\0" "HANGUL JONGSEONG MIEUM\0" "HANGUL JONGSEONG MIEUM-CHIEUCH\0" "HANGUL JONGSEONG MIEUM-CIEUC\0" "HANGUL JONGSEONG MIEUM-HIEUH\0" "HANGUL JONGSEONG MIEUM-KIYEOK\0" "HANGUL JONGSEONG MIEUM-NIEUN\0" "HANGUL JONGSEONG MIEUM-PANSIOS\0" "HANGUL JONGSEONG MIEUM-PIEUP\0" "HANGUL JONGSEONG MIEUM-PIEUP-SIOS\0" "HANGUL JONGSEONG MIEUM-RIEUL\0" "HANGUL JONGSEONG MIEUM-SIOS\0" "HANGUL JONGSEONG MIEUM-SSANGNIEUN\0" "HANGUL JONGSEONG MIEUM-SSANGSIOS\0" "HANGUL JONGSEONG NIEUN\0" "HANGUL JONGSEONG NIEUN-CHIEUCH\0" "HANGUL JONGSEONG NIEUN-CIEUC\0" "HANGUL JONGSEONG NIEUN-HIEUH\0" "HANGUL JONGSEONG NIEUN-KIYEOK\0" "HANGUL JONGSEONG NIEUN-PANSIOS\0" "HANGUL JONGSEONG NIEUN-RIEUL\0" "HANGUL JONGSEONG NIEUN-SIOS\0" "HANGUL JONGSEONG NIEUN-THIEUTH\0" "HANGUL JONGSEONG NIEUN-TIKEUT\0" "HANGUL JONGSEONG PANSIOS\0" "HANGUL JONGSEONG PANSIOS-KAPYEOUNPIEUP\0" "HANGUL JONGSEONG PANSIOS-PIEUP\0" "HANGUL JONGSEONG PHIEUPH\0" "HANGUL JONGSEONG PHIEUPH-PIEUP\0" "HANGUL JONGSEONG PHIEUPH-SIOS\0" "HANGUL JONGSEONG PHIEUPH-THIEUTH\0" "HANGUL JONGSEONG PIEUP\0" "HANGUL JONGSEONG PIEUP-CHIEUCH\0" "HANGUL JONGSEONG PIEUP-CIEUC\0" "HANGUL JONGSEONG PIEUP-HIEUH\0" "HANGUL JONGSEONG PIEUP-MIEUM\0" "HANGUL JONGSEONG PIEUP-PHIEUPH\0" "HANGUL JONGSEONG PIEUP-RIEUL\0" "HANGUL JONGSEONG PIEUP-RIEUL-PHIEUPH\0" "HANGUL JONGSEONG PIEUP-SIOS\0" "HANGUL JONGSEONG PIEUP-SIOS-TIKEUT\0" "HANGUL JONGSEONG PIEUP-TIKEUT\0" "HANGUL JONGSEONG RIEUL\0" "HANGUL JONGSEONG RIEUL-HIEUH\0" "HANGUL JONGSEONG RIEUL-KAPYEOUNPIEUP\0" "HANGUL JONGSEONG RIEUL-KHIEUKH\0" "HANGUL JONGSEONG RIEUL-KIYEOK\0" "HANGUL JONGSEONG RIEUL-KIYEOK-HIEUH\0" "HANGUL JONGSEONG RIEUL-KIYEOK-SIOS\0" "HANGUL JONGSEONG RIEUL-MIEUM\0" "HANGUL JONGSEONG RIEUL-MIEUM-HIEUH\0" "HANGUL JONGSEONG RIEUL-MIEUM-KIYEOK\0" "HANGUL JONGSEONG RIEUL-MIEUM-SIOS\0" "HANGUL JONGSEONG RIEUL-NIEUN\0" "HANGUL JONGSEONG RIEUL-PANSIOS\0" "HANGUL JONGSEONG RIEUL-PHIEUPH\0" "HANGUL JONGSEONG RIEUL-PIEUP\0" "HANGUL JONGSEONG RIEUL-PIEUP-HIEUH\0" "HANGUL JONGSEONG RIEUL-PIEUP-PHIEUPH\0" "HANGUL JONGSEONG RIEUL-PIEUP-SIOS\0" "HANGUL JONGSEONG RIEUL-PIEUP-TIKEUT\0" "HANGUL JONGSEONG RIEUL-SIOS\0" "HANGUL JONGSEONG RIEUL-SSANGKIYEOK\0" "HANGUL JONGSEONG RIEUL-SSANGSIOS\0" "HANGUL JONGSEONG RIEUL-THIEUTH\0" "HANGUL JONGSEONG RIEUL-TIKEUT\0" "HANGUL JONGSEONG RIEUL-TIKEUT-HIEUH\0" "HANGUL JONGSEONG RIEUL-YEORINHIEUH\0" "HANGUL JONGSEONG RIEUL-YEORINHIEUH-HIEUH\0" "HANGUL JONGSEONG RIEUL-YESIEUNG\0" "HANGUL JONGSEONG SIOS\0" "HANGUL JONGSEONG SIOS-CHIEUCH\0" "HANGUL JONGSEONG SIOS-CIEUC\0" "HANGUL JONGSEONG SIOS-HIEUH\0" "HANGUL JONGSEONG SIOS-KAPYEOUNPIEUP\0" "HANGUL JONGSEONG SIOS-KIYEOK\0" "HANGUL JONGSEONG SIOS-MIEUM\0" "HANGUL JONGSEONG SIOS-PANSIOS\0" "HANGUL JONGSEONG SIOS-PIEUP\0" "HANGUL JONGSEONG SIOS-RIEUL\0" "HANGUL JONGSEONG SIOS-THIEUTH\0" "HANGUL JONGSEONG SIOS-TIKEUT\0" "HANGUL JONGSEONG SSANGCIEUC\0" "HANGUL JONGSEONG SSANGIEUNG\0" "HANGUL JONGSEONG SSANGKIYEOK\0" "HANGUL JONGSEONG SSANGMIEUM\0" "HANGUL JONGSEONG SSANGNIEUN\0" "HANGUL JONGSEONG SSANGPIEUP\0" "HANGUL JONGSEONG SSANGRIEUL\0" "HANGUL JONGSEONG SSANGRIEUL-KHIEUKH\0" "HANGUL JONGSEONG SSANGSIOS\0" "HANGUL JONGSEONG SSANGSIOS-KIYEOK\0" "HANGUL JONGSEONG SSANGSIOS-TIKEUT\0" "HANGUL JONGSEONG SSANGTIKEUT\0" "HANGUL JONGSEONG SSANGTIKEUT-PIEUP\0" "HANGUL JONGSEONG THIEUTH\0" "HANGUL JONGSEONG TIKEUT\0" "HANGUL JONGSEONG TIKEUT-CHIEUCH\0" "HANGUL JONGSEONG TIKEUT-CIEUC\0" "HANGUL JONGSEONG TIKEUT-KIYEOK\0" "HANGUL JONGSEONG TIKEUT-PIEUP\0" "HANGUL JONGSEONG TIKEUT-RIEUL\0" "HANGUL JONGSEONG TIKEUT-SIOS\0" "HANGUL JONGSEONG TIKEUT-SIOS-KIYEOK\0" "HANGUL JONGSEONG TIKEUT-THIEUTH\0" "HANGUL JONGSEONG YEORINHIEUH\0" "HANGUL JONGSEONG YESIEUNG\0" "HANGUL JONGSEONG YESIEUNG-HIEUH\0" "HANGUL JONGSEONG YESIEUNG-MIEUM\0" "HANGUL JONGSEONG YESIEUNG-PANSIOS\0" "HANGUL JONGSEONG YESIEUNG-SIOS\0" "HANGUL JUNGSEONG A\0" "HANGUL JUNGSEONG A-EU\0" "HANGUL JUNGSEONG A-O\0" "HANGUL JUNGSEONG A-U\0" "HANGUL JUNGSEONG AE\0" "HANGUL JUNGSEONG ARAEA\0" "HANGUL JUNGSEONG ARAEA-A\0" "HANGUL JUNGSEONG ARAEA-E\0" "HANGUL JUNGSEONG ARAEA-EO\0" "HANGUL JUNGSEONG ARAEA-I\0" "HANGUL JUNGSEONG ARAEA-U\0" "HANGUL JUNGSEONG E\0" "HANGUL JUNGSEONG EO\0" "HANGUL JUNGSEONG EO-EU\0" "HANGUL JUNGSEONG EO-O\0" "HANGUL JUNGSEONG EO-U\0" "HANGUL JUNGSEONG EU\0" "HANGUL JUNGSEONG EU-A\0" "HANGUL JUNGSEONG EU-E\0" "HANGUL JUNGSEONG EU-EO\0" "HANGUL JUNGSEONG EU-EU\0" "HANGUL JUNGSEONG EU-O\0" "HANGUL JUNGSEONG EU-U\0" "HANGUL JUNGSEONG FILLER\0" "HANGUL JUNGSEONG I\0" "HANGUL JUNGSEONG I-A\0" "HANGUL JUNGSEONG I-ARAEA\0" "HANGUL JUNGSEONG I-EU\0" "HANGUL JUNGSEONG I-I\0" "HANGUL JUNGSEONG I-O\0" "HANGUL JUNGSEONG I-O-I\0" "HANGUL JUNGSEONG I-U\0" "HANGUL JUNGSEONG I-YA\0" "HANGUL JUNGSEONG I-YA-O\0" "HANGUL JUNGSEONG I-YAE\0" "HANGUL JUNGSEONG I-YE\0" "HANGUL JUNGSEONG I-YEO\0" "HANGUL JUNGSEONG I-YO\0" "HANGUL JUNGSEONG I-YU\0" "HANGUL JUNGSEONG O\0" "HANGUL JUNGSEONG O-E\0" "HANGUL JUNGSEONG O-EO\0" "HANGUL JUNGSEONG O-O\0" "HANGUL JUNGSEONG O-O-I\0" "HANGUL JUNGSEONG O-U\0" "HANGUL JUNGSEONG O-YA\0" "HANGUL JUNGSEONG O-YAE\0" "HANGUL JUNGSEONG O-YE\0" "HANGUL JUNGSEONG O-YEO\0" "HANGUL JUNGSEONG OE\0" "HANGUL JUNGSEONG SSANGARAEA\0" "HANGUL JUNGSEONG U\0" "HANGUL JUNGSEONG U-A\0" "HANGUL JUNGSEONG U-AE\0" "HANGUL JUNGSEONG U-EO-EU\0" "HANGUL JUNGSEONG U-I-I\0" "HANGUL JUNGSEONG U-U\0" "HANGUL JUNGSEONG U-YE\0" "HANGUL JUNGSEONG U-YEO\0" "HANGUL JUNGSEONG WA\0" "HANGUL JUNGSEONG WAE\0" "HANGUL JUNGSEONG WE\0" "HANGUL JUNGSEONG WEO\0" "HANGUL JUNGSEONG WI\0" "HANGUL JUNGSEONG YA\0" "HANGUL JUNGSEONG YA-O\0" "HANGUL JUNGSEONG YA-U\0" "HANGUL JUNGSEONG YA-YO\0" "HANGUL JUNGSEONG YAE\0" "HANGUL JUNGSEONG YE\0" "HANGUL JUNGSEONG YEO\0" "HANGUL JUNGSEONG YEO-O\0" "HANGUL JUNGSEONG YEO-U\0" "HANGUL JUNGSEONG YEO-YA\0" "HANGUL JUNGSEONG YI\0" "HANGUL JUNGSEONG YI-U\0" "HANGUL JUNGSEONG YO\0" "HANGUL JUNGSEONG YO-A\0" "HANGUL JUNGSEONG YO-AE\0" "HANGUL JUNGSEONG YO-EO\0" "HANGUL JUNGSEONG YO-I\0" "HANGUL JUNGSEONG YO-O\0" "HANGUL JUNGSEONG YO-YA\0" "HANGUL JUNGSEONG YO-YAE\0" "HANGUL JUNGSEONG YO-YEO\0" "HANGUL JUNGSEONG YU\0" "HANGUL JUNGSEONG YU-A\0" "HANGUL JUNGSEONG YU-AE\0" "HANGUL JUNGSEONG YU-E\0" "HANGUL JUNGSEONG YU-EO\0" "HANGUL JUNGSEONG YU-I\0" "HANGUL JUNGSEONG YU-O\0" "HANGUL JUNGSEONG YU-U\0" "HANGUL JUNGSEONG YU-YE\0" "HANGUL JUNGSEONG YU-YEO\0" "HANGUL LETTER A\0" "HANGUL LETTER AE\0" "HANGUL LETTER ARAEA\0" "HANGUL LETTER ARAEAE\0" "HANGUL LETTER CHIEUCH\0" "HANGUL LETTER CIEUC\0" "HANGUL LETTER E\0" "HANGUL LETTER EO\0" "HANGUL LETTER EU\0" "HANGUL LETTER HIEUH\0" "HANGUL LETTER I\0" "HANGUL LETTER IEUNG\0" "HANGUL LETTER KAPYEOUNMIEUM\0" "HANGUL LETTER KAPYEOUNPHIEUPH\0" "HANGUL LETTER KAPYEOUNPIEUP\0" "HANGUL LETTER KAPYEOUNSSANGPIEUP\0" "HANGUL LETTER KHIEUKH\0" "HANGUL LETTER KIYEOK\0" "HANGUL LETTER KIYEOK-SIOS\0" "HANGUL LETTER MIEUM\0" "HANGUL LETTER MIEUM-PANSIOS\0" "HANGUL LETTER MIEUM-PIEUP\0" "HANGUL LETTER MIEUM-SIOS\0" "HANGUL LETTER NIEUN\0" "HANGUL LETTER NIEUN-CIEUC\0" "HANGUL LETTER NIEUN-HIEUH\0" "HANGUL LETTER NIEUN-PANSIOS\0" "HANGUL LETTER NIEUN-SIOS\0" "HANGUL LETTER NIEUN-TIKEUT\0" "HANGUL LETTER O\0" "HANGUL LETTER OE\0" "HANGUL LETTER PANSIOS\0" "HANGUL LETTER PHIEUPH\0" "HANGUL LETTER PIEUP\0" "HANGUL LETTER PIEUP-CIEUC\0" "HANGUL LETTER PIEUP-KIYEOK\0" "HANGUL LETTER PIEUP-SIOS\0" "HANGUL LETTER PIEUP-SIOS-KIYEOK\0" "HANGUL LETTER PIEUP-SIOS-TIKEUT\0" "HANGUL LETTER PIEUP-THIEUTH\0" "HANGUL LETTER PIEUP-TIKEUT\0" "HANGUL LETTER RIEUL\0" "HANGUL LETTER RIEUL-HIEUH\0" "HANGUL LETTER RIEUL-KIYEOK\0" "HANGUL LETTER RIEUL-KIYEOK-SIOS\0" "HANGUL LETTER RIEUL-MIEUM\0" "HANGUL LETTER RIEUL-PANSIOS\0" "HANGUL LETTER RIEUL-PHIEUPH\0" "HANGUL LETTER RIEUL-PIEUP\0" "HANGUL LETTER RIEUL-PIEUP-SIOS\0" "HANGUL LETTER RIEUL-SIOS\0" "HANGUL LETTER RIEUL-THIEUTH\0" "HANGUL LETTER RIEUL-TIKEUT\0" "HANGUL LETTER RIEUL-YEORINHIEUH\0" "HANGUL LETTER SIOS\0" "HANGUL LETTER SIOS-CIEUC\0" "HANGUL LETTER SIOS-KIYEOK\0" "HANGUL LETTER SIOS-NIEUN\0" "HANGUL LETTER SIOS-PIEUP\0" "HANGUL LETTER SIOS-TIKEUT\0" "HANGUL LETTER SSANGCIEUC\0" "HANGUL LETTER SSANGHIEUH\0" "HANGUL LETTER SSANGIEUNG\0" "HANGUL LETTER SSANGKIYEOK\0" "HANGUL LETTER SSANGNIEUN\0" "HANGUL LETTER SSANGPIEUP\0" "HANGUL LETTER SSANGSIOS\0" "HANGUL LETTER SSANGTIKEUT\0" "HANGUL LETTER THIEUTH\0" "HANGUL LETTER TIKEUT\0" "HANGUL LETTER U\0" "HANGUL LETTER WA\0" "HANGUL LETTER WAE\0" "HANGUL LETTER WE\0" "HANGUL LETTER WEO\0" "HANGUL LETTER WI\0" "HANGUL LETTER YA\0" "HANGUL LETTER YAE\0" "HANGUL LETTER YE\0" "HANGUL LETTER YEO\0" "HANGUL LETTER YEORINHIEUH\0" "HANGUL LETTER YESIEUNG\0" "HANGUL LETTER YESIEUNG-PANSIOS\0" "HANGUL LETTER YESIEUNG-SIOS\0" "HANGUL LETTER YI\0" "HANGUL LETTER YO\0" "HANGUL LETTER YO-I\0" "HANGUL LETTER YO-YA\0" "HANGUL LETTER YO-YAE\0" "HANGUL LETTER YU\0" "HANGUL LETTER YU-I\0" "HANGUL LETTER YU-YE\0" "HANGUL LETTER YU-YEO\0" "HANGUL SINGLE DOT TONE MARK\0" "HANGZHOU NUMERAL EIGHT\0" "HANGZHOU NUMERAL FIVE\0" "HANGZHOU NUMERAL FOUR\0" "HANGZHOU NUMERAL NINE\0" "HANGZHOU NUMERAL ONE\0" "HANGZHOU NUMERAL SEVEN\0" "HANGZHOU NUMERAL SIX\0" "HANGZHOU NUMERAL TEN\0" "HANGZHOU NUMERAL THIRTY\0" "HANGZHOU NUMERAL THREE\0" "HANGZHOU NUMERAL TWENTY\0" "HANGZHOU NUMERAL TWO\0" "HANUNOO LETTER A\0" "HANUNOO LETTER BA\0" "HANUNOO LETTER DA\0" "HANUNOO LETTER GA\0" "HANUNOO LETTER HA\0" "HANUNOO LETTER I\0" "HANUNOO LETTER KA\0" "HANUNOO LETTER LA\0" "HANUNOO LETTER MA\0" "HANUNOO LETTER NA\0" "HANUNOO LETTER NGA\0" "HANUNOO LETTER PA\0" "HANUNOO LETTER RA\0" "HANUNOO LETTER SA\0" "HANUNOO LETTER TA\0" "HANUNOO LETTER U\0" "HANUNOO LETTER WA\0" "HANUNOO LETTER YA\0" "HANUNOO SIGN PAMUDPOD\0" "HANUNOO VOWEL SIGN I\0" "HANUNOO VOWEL SIGN U\0" "HAPPY PERSON RAISING ONE HAND\0" "HATCHING CHICK\0" "HEADPHONE\0" "HEADSTONE GRAVEYARD SYMBOL\0" "HEAR-NO-EVIL MONKEY\0" "HEART DECORATION\0" "HEART WITH ARROW\0" "HEART WITH RIBBON\0" "HEAVY ASTERISK\0" "HEAVY BALLOT X\0" "HEAVY BLACK CURVED DOWNWARDS AND RIGHTWARDS ARROW\0" "HEAVY BLACK CURVED UPWARDS AND RIGHTWARDS ARROW\0" "HEAVY BLACK HEART\0" "HEAVY BLACK-FEATHERED NORTH EAST ARROW\0" "HEAVY BLACK-FEATHERED RIGHTWARDS ARROW\0" "HEAVY BLACK-FEATHERED SOUTH EAST ARROW\0" "HEAVY CHECK MARK\0" "HEAVY CHEVRON SNOWFLAKE\0" "HEAVY CIRCLE\0" "HEAVY CIRCLE WITH CIRCLE INSIDE\0" "HEAVY CIRCLE WITH STROKE AND TWO DOTS ABOVE\0" "HEAVY CIRCLED SALTIRE\0" "HEAVY CONCAVE-POINTED BLACK RIGHTWARDS ARROW\0" "HEAVY DASHED TRIANGLE-HEADED RIGHTWARDS ARROW\0" "HEAVY DIVISION SIGN\0" "HEAVY DOLLAR SIGN\0" "HEAVY DOUBLE COMMA QUOTATION MARK ORNAMENT\0" "HEAVY DOUBLE TURNED COMMA QUOTATION MARK ORNAMENT\0" "HEAVY EIGHT POINTED RECTILINEAR BLACK STAR\0" "HEAVY EIGHT TEARDROP-SPOKED PROPELLER ASTERISK\0" "HEAVY EXCLAMATION MARK ORNAMENT\0" "HEAVY EXCLAMATION MARK SYMBOL\0" "HEAVY FOUR BALLOON-SPOKED ASTERISK\0" "HEAVY GREEK CROSS\0" "HEAVY HEART EXCLAMATION MARK ORNAMENT\0" "HEAVY LARGE CIRCLE\0" "HEAVY LEFT-POINTING ANGLE BRACKET ORNAMENT\0" "HEAVY LEFT-POINTING ANGLE QUOTATION MARK ORNAMENT\0" "HEAVY LOW DOUBLE COMMA QUOTATION MARK ORNAMENT\0" "HEAVY LOW SINGLE COMMA QUOTATION MARK ORNAMENT\0" "HEAVY LOWER RIGHT-SHADOWED WHITE RIGHTWARDS ARROW\0" "HEAVY MINUS SIGN\0" "HEAVY MULTIPLICATION X\0" "HEAVY NORTH EAST ARROW\0" "HEAVY OPEN CENTRE CROSS\0" "HEAVY OUTLINED BLACK STAR\0" "HEAVY OVAL WITH OVAL INSIDE\0" "HEAVY PLUS SIGN\0" "HEAVY RIGHT-POINTING ANGLE BRACKET ORNAMENT\0" "HEAVY RIGHT-POINTING ANGLE QUOTATION MARK ORNAMENT\0" "HEAVY RIGHTWARDS ARROW\0" "HEAVY ROUND-TIPPED RIGHTWARDS ARROW\0" "HEAVY SINGLE COMMA QUOTATION MARK ORNAMENT\0" "HEAVY SINGLE TURNED COMMA QUOTATION MARK ORNAMENT\0" "HEAVY SOUTH EAST ARROW\0" "HEAVY SPARKLE\0" "HEAVY TEARDROP-SHANKED RIGHTWARDS ARROW\0" "HEAVY TEARDROP-SPOKED ASTERISK\0" "HEAVY TEARDROP-SPOKED PINWHEEL ASTERISK\0" "HEAVY TRIANGLE-HEADED RIGHTWARDS ARROW\0" "HEAVY UPPER RIGHT-SHADOWED WHITE RIGHTWARDS ARROW\0" "HEAVY VERTICAL BAR\0" "HEAVY WEDGE-TAILED RIGHTWARDS ARROW\0" "HEAVY WHITE DOWN-POINTING TRIANGLE\0" "HEAVY WIDE-HEADED RIGHTWARDS ARROW\0" "HEBREW ACCENT ATNAH HAFUKH\0" "HEBREW ACCENT DARGA\0" "HEBREW ACCENT DEHI\0" "HEBREW ACCENT ETNAHTA\0" "HEBREW ACCENT GERESH\0" "HEBREW ACCENT GERESH MUQDAM\0" "HEBREW ACCENT GERSHAYIM\0" "HEBREW ACCENT ILUY\0" "HEBREW ACCENT MAHAPAKH\0" "HEBREW ACCENT MERKHA\0" "HEBREW ACCENT MERKHA KEFULA\0" "HEBREW ACCENT MUNAH\0" "HEBREW ACCENT OLE\0" "HEBREW ACCENT PASHTA\0" "HEBREW ACCENT PAZER\0" "HEBREW ACCENT QADMA\0" "HEBREW ACCENT QARNEY PARA\0" "HEBREW ACCENT REVIA\0" "HEBREW ACCENT SEGOL\0" "HEBREW ACCENT SHALSHELET\0" "HEBREW ACCENT TELISHA GEDOLA\0" "HEBREW ACCENT TELISHA QETANA\0" "HEBREW ACCENT TEVIR\0" "HEBREW ACCENT TIPEHA\0" "HEBREW ACCENT YERAH BEN YOMO\0" "HEBREW ACCENT YETIV\0" "HEBREW ACCENT ZAQEF GADOL\0" "HEBREW ACCENT ZAQEF QATAN\0" "HEBREW ACCENT ZARQA\0" "HEBREW ACCENT ZINOR\0" "HEBREW LETTER ALEF\0" "HEBREW LETTER ALEF WITH MAPIQ\0" "HEBREW LETTER ALEF WITH PATAH\0" "HEBREW LETTER ALEF WITH QAMATS\0" "HEBREW LETTER ALTERNATIVE AYIN\0" "HEBREW LETTER ALTERNATIVE PLUS SIGN\0" "HEBREW LETTER AYIN\0" "HEBREW LETTER BET\0" "HEBREW LETTER BET WITH DAGESH\0" "HEBREW LETTER BET WITH RAFE\0" "HEBREW LETTER DALET\0" "HEBREW LETTER DALET WITH DAGESH\0" "HEBREW LETTER FINAL KAF\0" "HEBREW LETTER FINAL KAF WITH DAGESH\0" "HEBREW LETTER FINAL MEM\0" "HEBREW LETTER FINAL NUN\0" "HEBREW LETTER FINAL PE\0" "HEBREW LETTER FINAL PE WITH DAGESH\0" "HEBREW LETTER FINAL TSADI\0" "HEBREW LETTER GIMEL\0" "HEBREW LETTER GIMEL WITH DAGESH\0" "HEBREW LETTER HE\0" "HEBREW LETTER HE WITH MAPIQ\0" "HEBREW LETTER HET\0" "HEBREW LETTER KAF\0" "HEBREW LETTER KAF WITH DAGESH\0" "HEBREW LETTER KAF WITH RAFE\0" "HEBREW LETTER LAMED\0" "HEBREW LETTER LAMED WITH DAGESH\0" "HEBREW LETTER MEM\0" "HEBREW LETTER MEM WITH DAGESH\0" "HEBREW LETTER NUN\0" "HEBREW LETTER NUN WITH DAGESH\0" "HEBREW LETTER PE\0" "HEBREW LETTER PE WITH DAGESH\0" "HEBREW LETTER PE WITH RAFE\0" "HEBREW LETTER QOF\0" "HEBREW LETTER QOF WITH DAGESH\0" "HEBREW LETTER RESH\0" "HEBREW LETTER RESH WITH DAGESH\0" "HEBREW LETTER SAMEKH\0" "HEBREW LETTER SAMEKH WITH DAGESH\0" "HEBREW LETTER SHIN\0" "HEBREW LETTER SHIN WITH DAGESH\0" "HEBREW LETTER SHIN WITH DAGESH AND SHIN DOT\0" "HEBREW LETTER SHIN WITH DAGESH AND SIN DOT\0" "HEBREW LETTER SHIN WITH SHIN DOT\0" "HEBREW LETTER SHIN WITH SIN DOT\0" "HEBREW LETTER TAV\0" "HEBREW LETTER TAV WITH DAGESH\0" "HEBREW LETTER TET\0" "HEBREW LETTER TET WITH DAGESH\0" "HEBREW LETTER TSADI\0" "HEBREW LETTER TSADI WITH DAGESH\0" "HEBREW LETTER VAV\0" "HEBREW LETTER VAV WITH DAGESH\0" "HEBREW LETTER VAV WITH HOLAM\0" "HEBREW LETTER WIDE ALEF\0" "HEBREW LETTER WIDE DALET\0" "HEBREW LETTER WIDE FINAL MEM\0" "HEBREW LETTER WIDE HE\0" "HEBREW LETTER WIDE KAF\0" "HEBREW LETTER WIDE LAMED\0" "HEBREW LETTER WIDE RESH\0" "HEBREW LETTER WIDE TAV\0" "HEBREW LETTER YOD\0" "HEBREW LETTER YOD WITH DAGESH\0" "HEBREW LETTER YOD WITH HIRIQ\0" "HEBREW LETTER ZAYIN\0" "HEBREW LETTER ZAYIN WITH DAGESH\0" "HEBREW LIGATURE ALEF LAMED\0" "HEBREW LIGATURE YIDDISH DOUBLE VAV\0" "HEBREW LIGATURE YIDDISH DOUBLE YOD\0" "HEBREW LIGATURE YIDDISH VAV YOD\0" "HEBREW LIGATURE YIDDISH YOD YOD PATAH\0" "HEBREW MARK LOWER DOT\0" "HEBREW MARK MASORA CIRCLE\0" "HEBREW MARK UPPER DOT\0" "HEBREW POINT DAGESH OR MAPIQ\0" "HEBREW POINT HATAF PATAH\0" "HEBREW POINT HATAF QAMATS\0" "HEBREW POINT HATAF SEGOL\0" "HEBREW POINT HIRIQ\0" "HEBREW POINT HOLAM\0" "HEBREW POINT HOLAM HASER FOR VAV\0" "HEBREW POINT JUDEO-SPANISH VARIKA\0" "HEBREW POINT METEG\0" "HEBREW POINT PATAH\0" "HEBREW POINT QAMATS\0" "HEBREW POINT QAMATS QATAN\0" "HEBREW POINT QUBUTS\0" "HEBREW POINT RAFE\0" "HEBREW POINT SEGOL\0" "HEBREW POINT SHEVA\0" "HEBREW POINT SHIN DOT\0" "HEBREW POINT SIN DOT\0" "HEBREW POINT TSERE\0" "HEBREW PUNCTUATION GERESH\0" "HEBREW PUNCTUATION GERSHAYIM\0" "HEBREW PUNCTUATION MAQAF\0" "HEBREW PUNCTUATION NUN HAFUKHA\0" "HEBREW PUNCTUATION PASEQ\0" "HEBREW PUNCTUATION SOF PASUQ\0" "HELICOPTER\0" "HELM SYMBOL\0" "HELMET WITH WHITE CROSS\0" "HERB\0" "HERMITIAN CONJUGATE MATRIX\0" "HEXAGRAM FOR ABUNDANCE\0" "HEXAGRAM FOR AFTER COMPLETION\0" "HEXAGRAM FOR APPROACH\0" "HEXAGRAM FOR BEFORE COMPLETION\0" "HEXAGRAM FOR BITING THROUGH\0" "HEXAGRAM FOR BREAKTHROUGH\0" "HEXAGRAM FOR COMING TO MEET\0" "HEXAGRAM FOR CONFLICT\0" "HEXAGRAM FOR CONTEMPLATION\0" "HEXAGRAM FOR DARKENING OF THE LIGHT\0" "HEXAGRAM FOR DECREASE\0" "HEXAGRAM FOR DELIVERANCE\0" "HEXAGRAM FOR DEVELOPMENT\0" "HEXAGRAM FOR DIFFICULTY AT THE BEGINNING\0" "HEXAGRAM FOR DISPERSION\0" "HEXAGRAM FOR DURATION\0" "HEXAGRAM FOR ENTHUSIASM\0" "HEXAGRAM FOR FELLOWSHIP\0" "HEXAGRAM FOR FOLLOWING\0" "HEXAGRAM FOR GATHERING TOGETHER\0" "HEXAGRAM FOR GRACE\0" "HEXAGRAM FOR GREAT POSSESSION\0" "HEXAGRAM FOR GREAT POWER\0" "HEXAGRAM FOR GREAT PREPONDERANCE\0" "HEXAGRAM FOR GREAT TAMING\0" "HEXAGRAM FOR HOLDING TOGETHER\0" "HEXAGRAM FOR INCREASE\0" "HEXAGRAM FOR INFLUENCE\0" "HEXAGRAM FOR INNER TRUTH\0" "HEXAGRAM FOR INNOCENCE\0" "HEXAGRAM FOR LIMITATION\0" "HEXAGRAM FOR MODESTY\0" "HEXAGRAM FOR MOUTH CORNERS\0" "HEXAGRAM FOR OBSTRUCTION\0" "HEXAGRAM FOR OPPOSITION\0" "HEXAGRAM FOR OPPRESSION\0" "HEXAGRAM FOR PEACE\0" "HEXAGRAM FOR PROGRESS\0" "HEXAGRAM FOR PUSHING UPWARD\0" "HEXAGRAM FOR RETREAT\0" "HEXAGRAM FOR RETURN\0" "HEXAGRAM FOR REVOLUTION\0" "HEXAGRAM FOR SMALL PREPONDERANCE\0" "HEXAGRAM FOR SMALL TAMING\0" "HEXAGRAM FOR SPLITTING APART\0" "HEXAGRAM FOR STANDSTILL\0" "HEXAGRAM FOR THE ABYSMAL WATER\0" "HEXAGRAM FOR THE ARMY\0" "HEXAGRAM FOR THE AROUSING THUNDER\0" "HEXAGRAM FOR THE CAULDRON\0" "HEXAGRAM FOR THE CLINGING FIRE\0" "HEXAGRAM FOR THE CREATIVE HEAVEN\0" "HEXAGRAM FOR THE FAMILY\0" "HEXAGRAM FOR THE GENTLE WIND\0" "HEXAGRAM FOR THE JOYOUS LAKE\0" "HEXAGRAM FOR THE KEEPING STILL MOUNTAIN\0" "HEXAGRAM FOR THE MARRYING MAIDEN\0" "HEXAGRAM FOR THE RECEPTIVE EARTH\0" "HEXAGRAM FOR THE WANDERER\0" "HEXAGRAM FOR THE WELL\0" "HEXAGRAM FOR TREADING\0" "HEXAGRAM FOR WAITING\0" "HEXAGRAM FOR WORK ON THE DECAYED\0" "HEXAGRAM FOR YOUTHFUL FOLLY\0" "HIBISCUS\0" "HIGH BRIGHTNESS SYMBOL\0" "HIGH VOLTAGE SIGN\0" "HIGH-HEELED SHOE\0" "HIGH-SPEED TRAIN\0" "HIGH-SPEED TRAIN WITH BULLET NOSE\0" "HIRAGANA DIGRAPH YORI\0" "HIRAGANA ITERATION MARK\0" "HIRAGANA LETTER A\0" "HIRAGANA LETTER ARCHAIC YE\0" "HIRAGANA LETTER BA\0" "HIRAGANA LETTER BE\0" "HIRAGANA LETTER BI\0" "HIRAGANA LETTER BO\0" "HIRAGANA LETTER BU\0" "HIRAGANA LETTER DA\0" "HIRAGANA LETTER DE\0" "HIRAGANA LETTER DI\0" "HIRAGANA LETTER DO\0" "HIRAGANA LETTER DU\0" "HIRAGANA LETTER E\0" "HIRAGANA LETTER GA\0" "HIRAGANA LETTER GE\0" "HIRAGANA LETTER GI\0" "HIRAGANA LETTER GO\0" "HIRAGANA LETTER GU\0" "HIRAGANA LETTER HA\0" "HIRAGANA LETTER HE\0" "HIRAGANA LETTER HI\0" "HIRAGANA LETTER HO\0" "HIRAGANA LETTER HU\0" "HIRAGANA LETTER I\0" "HIRAGANA LETTER KA\0" "HIRAGANA LETTER KE\0" "HIRAGANA LETTER KI\0" "HIRAGANA LETTER KO\0" "HIRAGANA LETTER KU\0" "HIRAGANA LETTER MA\0" "HIRAGANA LETTER ME\0" "HIRAGANA LETTER MI\0" "HIRAGANA LETTER MO\0" "HIRAGANA LETTER MU\0" "HIRAGANA LETTER N\0" "HIRAGANA LETTER NA\0" "HIRAGANA LETTER NE\0" "HIRAGANA LETTER NI\0" "HIRAGANA LETTER NO\0" "HIRAGANA LETTER NU\0" "HIRAGANA LETTER O\0" "HIRAGANA LETTER PA\0" "HIRAGANA LETTER PE\0" "HIRAGANA LETTER PI\0" "HIRAGANA LETTER PO\0" "HIRAGANA LETTER PU\0" "HIRAGANA LETTER RA\0" "HIRAGANA LETTER RE\0" "HIRAGANA LETTER RI\0" "HIRAGANA LETTER RO\0" "HIRAGANA LETTER RU\0" "HIRAGANA LETTER SA\0" "HIRAGANA LETTER SE\0" "HIRAGANA LETTER SI\0" "HIRAGANA LETTER SMALL A\0" "HIRAGANA LETTER SMALL E\0" "HIRAGANA LETTER SMALL I\0" "HIRAGANA LETTER SMALL KA\0" "HIRAGANA LETTER SMALL KE\0" "HIRAGANA LETTER SMALL O\0" "HIRAGANA LETTER SMALL TU\0" "HIRAGANA LETTER SMALL U\0" "HIRAGANA LETTER SMALL WA\0" "HIRAGANA LETTER SMALL YA\0" "HIRAGANA LETTER SMALL YO\0" "HIRAGANA LETTER SMALL YU\0" "HIRAGANA LETTER SO\0" "HIRAGANA LETTER SU\0" "HIRAGANA LETTER TA\0" "HIRAGANA LETTER TE\0" "HIRAGANA LETTER TI\0" "HIRAGANA LETTER TO\0" "HIRAGANA LETTER TU\0" "HIRAGANA LETTER U\0" "HIRAGANA LETTER VU\0" "HIRAGANA LETTER WA\0" "HIRAGANA LETTER WE\0" "HIRAGANA LETTER WI\0" "HIRAGANA LETTER WO\0" "HIRAGANA LETTER YA\0" "HIRAGANA LETTER YO\0" "HIRAGANA LETTER YU\0" "HIRAGANA LETTER ZA\0" "HIRAGANA LETTER ZE\0" "HIRAGANA LETTER ZI\0" "HIRAGANA LETTER ZO\0" "HIRAGANA LETTER ZU\0" "HIRAGANA VOICED ITERATION MARK\0" "HISTORIC SITE\0" "HOCHO\0" "HOMOTHETIC\0" "HONEY POT\0" "HONEYBEE\0" "HORIZONTAL BAR\0" "HORIZONTAL BLACK HEXAGON\0" "HORIZONTAL ELLIPSIS\0" "HORIZONTAL LINE EXTENSION\0" "HORIZONTAL MALE WITH STROKE SIGN\0" "HORIZONTAL SCAN LINE-1\0" "HORIZONTAL SCAN LINE-3\0" "HORIZONTAL SCAN LINE-7\0" "HORIZONTAL SCAN LINE-9\0" "HORIZONTAL TRAFFIC LIGHT\0" "HORSE\0" "HORSE FACE\0" "HORSE RACING\0" "HOSPITAL\0" "HOT BEVERAGE\0" "HOT SPRINGS\0" "HOTEL\0" "HOURGLASS\0" "HOURGLASS WITH FLOWING SAND\0" "HOUSE\0" "HOUSE BUILDING\0" "HOUSE WITH GARDEN\0" "HRYVNIA SIGN\0" "HUNDRED POINTS SYMBOL\0" "HYPHEN\0" "HYPHEN BULLET\0" "HYPHEN WITH DIAERESIS\0" "HYPHEN-MINUS\0" "HYPHENATION POINT\0" "HYPODIASTOLE\0" "HYSTERESIS SYMBOL\0" "ICE CREAM\0" "ICE SKATE\0" "IDENTICAL TO\0" "IDENTICAL TO AND SLANTED PARALLEL\0" "IDENTICAL WITH DOT ABOVE\0" "IDEOGRAPHIC ANNOTATION BOTTOM MARK\0" "IDEOGRAPHIC ANNOTATION EARTH MARK\0" "IDEOGRAPHIC ANNOTATION FIRST MARK\0" "IDEOGRAPHIC ANNOTATION FOUR MARK\0" "IDEOGRAPHIC ANNOTATION FOURTH MARK\0" "IDEOGRAPHIC ANNOTATION HEAVEN MARK\0" "IDEOGRAPHIC ANNOTATION LINKING MARK\0" "IDEOGRAPHIC ANNOTATION MAN MARK\0" "IDEOGRAPHIC ANNOTATION MIDDLE MARK\0" "IDEOGRAPHIC ANNOTATION ONE MARK\0" "IDEOGRAPHIC ANNOTATION REVERSE MARK\0" "IDEOGRAPHIC ANNOTATION SECOND MARK\0" "IDEOGRAPHIC ANNOTATION THIRD MARK\0" "IDEOGRAPHIC ANNOTATION THREE MARK\0" "IDEOGRAPHIC ANNOTATION TOP MARK\0" "IDEOGRAPHIC ANNOTATION TWO MARK\0" "IDEOGRAPHIC CLOSING MARK\0" "IDEOGRAPHIC COMMA\0" "IDEOGRAPHIC DEPARTING TONE MARK\0" "IDEOGRAPHIC DESCRIPTION CHARACTER ABOVE TO BELOW\0" "IDEOGRAPHIC DESCRIPTION CHARACTER ABOVE TO MIDDLE AND BELOW\0" "IDEOGRAPHIC DESCRIPTION CHARACTER FULL SURROUND\0" "IDEOGRAPHIC DESCRIPTION CHARACTER LEFT TO MIDDLE AND RIGHT\0" "IDEOGRAPHIC DESCRIPTION CHARACTER LEFT TO RIGHT\0" "IDEOGRAPHIC DESCRIPTION CHARACTER OVERLAID\0" "IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM ABOVE\0" "IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM BELOW\0" "IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM LEFT\0" "IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM LOWER LEFT\0" "IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM UPPER LEFT\0" "IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM UPPER RIGHT\0" "IDEOGRAPHIC ENTERING TONE MARK\0" "IDEOGRAPHIC FULL STOP\0" "IDEOGRAPHIC HALF FILL SPACE\0" "IDEOGRAPHIC ITERATION MARK\0" "IDEOGRAPHIC LEVEL TONE MARK\0" "IDEOGRAPHIC NUMBER ZERO\0" "IDEOGRAPHIC RISING TONE MARK\0" "IDEOGRAPHIC SPACE\0" "IDEOGRAPHIC TELEGRAPH LINE FEED SEPARATOR SYMBOL\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR APRIL\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR AUGUST\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY EIGHT\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY EIGHTEEN\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY ELEVEN\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY FIFTEEN\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY FIVE\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY FOUR\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY FOURTEEN\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY NINE\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY NINETEEN\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY ONE\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY SEVEN\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY SEVENTEEN\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY SIX\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY SIXTEEN\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TEN\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY THIRTEEN\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY THIRTY\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY THIRTY-ONE\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY THREE\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWELVE\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-EIGHT\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-FIVE\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-FOUR\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-NINE\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-ONE\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-SEVEN\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-SIX\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-THREE\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-TWO\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWO\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DECEMBER\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR FEBRUARY\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR EIGHT\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR EIGHTEEN\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR ELEVEN\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR FIFTEEN\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR FIVE\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR FOUR\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR FOURTEEN\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR NINE\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR NINETEEN\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR ONE\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR SEVEN\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR SEVENTEEN\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR SIX\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR SIXTEEN\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TEN\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR THIRTEEN\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR THREE\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWELVE\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY-FOUR\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY-ONE\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY-THREE\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY-TWO\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWO\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR ZERO\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR JANUARY\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR JULY\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR JUNE\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR MARCH\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR MAY\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR NOVEMBER\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR OCTOBER\0" "IDEOGRAPHIC TELEGRAPH SYMBOL FOR SEPTEMBER\0" "IDEOGRAPHIC VARIATION INDICATOR\0" "IMAGE OF\0" "IMAGE OF OR APPROXIMATELY EQUAL TO\0" "IMP\0" "IMPERIAL ARAMAIC LETTER ALEPH\0" "IMPERIAL ARAMAIC LETTER AYIN\0" "IMPERIAL ARAMAIC LETTER BETH\0" "IMPERIAL ARAMAIC LETTER DALETH\0" "IMPERIAL ARAMAIC LETTER GIMEL\0" "IMPERIAL ARAMAIC LETTER HE\0" "IMPERIAL ARAMAIC LETTER HETH\0" "IMPERIAL ARAMAIC LETTER KAPH\0" "IMPERIAL ARAMAIC LETTER LAMEDH\0" "IMPERIAL ARAMAIC LETTER MEM\0" "IMPERIAL ARAMAIC LETTER NUN\0" "IMPERIAL ARAMAIC LETTER PE\0" "IMPERIAL ARAMAIC LETTER QOPH\0" "IMPERIAL ARAMAIC LETTER RESH\0" "IMPERIAL ARAMAIC LETTER SADHE\0" "IMPERIAL ARAMAIC LETTER SAMEKH\0" "IMPERIAL ARAMAIC LETTER SHIN\0" "IMPERIAL ARAMAIC LETTER TAW\0" "IMPERIAL ARAMAIC LETTER TETH\0" "IMPERIAL ARAMAIC LETTER WAW\0" "IMPERIAL ARAMAIC LETTER YODH\0" "IMPERIAL ARAMAIC LETTER ZAYIN\0" "IMPERIAL ARAMAIC NUMBER ONE\0" "IMPERIAL ARAMAIC NUMBER ONE HUNDRED\0" "IMPERIAL ARAMAIC NUMBER ONE THOUSAND\0" "IMPERIAL ARAMAIC NUMBER TEN\0" "IMPERIAL ARAMAIC NUMBER TEN THOUSAND\0" "IMPERIAL ARAMAIC NUMBER THREE\0" "IMPERIAL ARAMAIC NUMBER TWENTY\0" "IMPERIAL ARAMAIC NUMBER TWO\0" "IMPERIAL ARAMAIC SECTION SIGN\0" "INBOX TRAY\0" "INCOMING ENVELOPE\0" "INCOMPLETE INFINITY\0" "INCREASES AS\0" "INCREMENT\0" "INDIAN RUPEE SIGN\0" "INFINITY\0" "INFINITY NEGATED WITH VERTICAL BAR\0" "INFORMATION DESK PERSON\0" "INFORMATION SOURCE\0" "INHIBIT ARABIC FORM SHAPING\0" "INHIBIT SYMMETRIC SWAPPING\0" "INPUT SYMBOL FOR LATIN CAPITAL LETTERS\0" "INPUT SYMBOL FOR LATIN LETTERS\0" "INPUT SYMBOL FOR LATIN SMALL LETTERS\0" "INPUT SYMBOL FOR NUMBERS\0" "INPUT SYMBOL FOR SYMBOLS\0" "INSCRIPTIONAL PAHLAVI LETTER ALEPH\0" "INSCRIPTIONAL PAHLAVI LETTER BETH\0" "INSCRIPTIONAL PAHLAVI LETTER DALETH\0" "INSCRIPTIONAL PAHLAVI LETTER GIMEL\0" "INSCRIPTIONAL PAHLAVI LETTER HE\0" "INSCRIPTIONAL PAHLAVI LETTER HETH\0" "INSCRIPTIONAL PAHLAVI LETTER KAPH\0" "INSCRIPTIONAL PAHLAVI LETTER LAMEDH\0" "INSCRIPTIONAL PAHLAVI LETTER MEM-QOPH\0" "INSCRIPTIONAL PAHLAVI LETTER NUN\0" "INSCRIPTIONAL PAHLAVI LETTER PE\0" "INSCRIPTIONAL PAHLAVI LETTER SADHE\0" "INSCRIPTIONAL PAHLAVI LETTER SAMEKH\0" "INSCRIPTIONAL PAHLAVI LETTER SHIN\0" "INSCRIPTIONAL PAHLAVI LETTER TAW\0" "INSCRIPTIONAL PAHLAVI LETTER TETH\0" "INSCRIPTIONAL PAHLAVI LETTER WAW-AYIN-RESH\0" "INSCRIPTIONAL PAHLAVI LETTER YODH\0" "INSCRIPTIONAL PAHLAVI LETTER ZAYIN\0" "INSCRIPTIONAL PAHLAVI NUMBER FOUR\0" "INSCRIPTIONAL PAHLAVI NUMBER ONE\0" "INSCRIPTIONAL PAHLAVI NUMBER ONE HUNDRED\0" "INSCRIPTIONAL PAHLAVI NUMBER ONE THOUSAND\0" "INSCRIPTIONAL PAHLAVI NUMBER TEN\0" "INSCRIPTIONAL PAHLAVI NUMBER THREE\0" "INSCRIPTIONAL PAHLAVI NUMBER TWENTY\0" "INSCRIPTIONAL PAHLAVI NUMBER TWO\0" "INSCRIPTIONAL PARTHIAN LETTER ALEPH\0" "INSCRIPTIONAL PARTHIAN LETTER AYIN\0" "INSCRIPTIONAL PARTHIAN LETTER BETH\0" "INSCRIPTIONAL PARTHIAN LETTER DALETH\0" "INSCRIPTIONAL PARTHIAN LETTER GIMEL\0" "INSCRIPTIONAL PARTHIAN LETTER HE\0" "INSCRIPTIONAL PARTHIAN LETTER HETH\0" "INSCRIPTIONAL PARTHIAN LETTER KAPH\0" "INSCRIPTIONAL PARTHIAN LETTER LAMEDH\0" "INSCRIPTIONAL PARTHIAN LETTER MEM\0" "INSCRIPTIONAL PARTHIAN LETTER NUN\0" "INSCRIPTIONAL PARTHIAN LETTER PE\0" "INSCRIPTIONAL PARTHIAN LETTER QOPH\0" "INSCRIPTIONAL PARTHIAN LETTER RESH\0" "INSCRIPTIONAL PARTHIAN LETTER SADHE\0" "INSCRIPTIONAL PARTHIAN LETTER SAMEKH\0" "INSCRIPTIONAL PARTHIAN LETTER SHIN\0" "INSCRIPTIONAL PARTHIAN LETTER TAW\0" "INSCRIPTIONAL PARTHIAN LETTER TETH\0" "INSCRIPTIONAL PARTHIAN LETTER WAW\0" "INSCRIPTIONAL PARTHIAN LETTER YODH\0" "INSCRIPTIONAL PARTHIAN LETTER ZAYIN\0" "INSCRIPTIONAL PARTHIAN NUMBER FOUR\0" "INSCRIPTIONAL PARTHIAN NUMBER ONE\0" "INSCRIPTIONAL PARTHIAN NUMBER ONE HUNDRED\0" "INSCRIPTIONAL PARTHIAN NUMBER ONE THOUSAND\0" "INSCRIPTIONAL PARTHIAN NUMBER TEN\0" "INSCRIPTIONAL PARTHIAN NUMBER THREE\0" "INSCRIPTIONAL PARTHIAN NUMBER TWENTY\0" "INSCRIPTIONAL PARTHIAN NUMBER TWO\0" "INSERTION SYMBOL\0" "INTEGRAL\0" "INTEGRAL AROUND A POINT OPERATOR\0" "INTEGRAL AVERAGE WITH SLASH\0" "INTEGRAL EXTENSION\0" "INTEGRAL WITH DOUBLE STROKE\0" "INTEGRAL WITH INTERSECTION\0" "INTEGRAL WITH LEFTWARDS ARROW WITH HOOK\0" "INTEGRAL WITH OVERBAR\0" "INTEGRAL WITH TIMES SIGN\0" "INTEGRAL WITH UNDERBAR\0" "INTEGRAL WITH UNION\0" "INTERCALATE\0" "INTERIOR PRODUCT\0" "INTERLINEAR ANNOTATION ANCHOR\0" "INTERLINEAR ANNOTATION SEPARATOR\0" "INTERLINEAR ANNOTATION TERMINATOR\0" "INTERLOCKED FEMALE AND MALE SIGN\0" "INTERROBANG\0" "INTERSECTION\0" "INTERSECTION ABOVE BAR ABOVE UNION\0" "INTERSECTION ABOVE UNION\0" "INTERSECTION BESIDE AND JOINED WITH INTERSECTION\0" "INTERSECTION WITH DOT\0" "INTERSECTION WITH LOGICAL AND\0" "INTERSECTION WITH OVERBAR\0" "INVERSE BULLET\0" "INVERSE WHITE CIRCLE\0" "INVERTED EXCLAMATION MARK\0" "INVERTED INTERROBANG\0" "INVERTED LAZY S\0" "INVERTED OHM SIGN\0" "INVERTED PENTAGRAM\0" "INVERTED QUESTION MARK\0" "INVERTED UNDERTIE\0" "INVISIBLE PLUS\0" "INVISIBLE SEPARATOR\0" "INVISIBLE TIMES\0" "IZAKAYA LANTERN\0" "JACK-O-LANTERN\0" "JAPANESE BANK SYMBOL\0" "JAPANESE CASTLE\0" "JAPANESE DOLLS\0" "JAPANESE GOBLIN\0" "JAPANESE INDUSTRIAL STANDARD SYMBOL\0" "JAPANESE OGRE\0" "JAPANESE POST OFFICE\0" "JAPANESE SYMBOL FOR BEGINNER\0" "JAVANESE CONSONANT SIGN CAKRA\0" "JAVANESE CONSONANT SIGN KERET\0" "JAVANESE CONSONANT SIGN PENGKAL\0" "JAVANESE DIGIT EIGHT\0" "JAVANESE DIGIT FIVE\0" "JAVANESE DIGIT FOUR\0" "JAVANESE DIGIT NINE\0" "JAVANESE DIGIT ONE\0" "JAVANESE DIGIT SEVEN\0" "JAVANESE DIGIT SIX\0" "JAVANESE DIGIT THREE\0" "JAVANESE DIGIT TWO\0" "JAVANESE DIGIT ZERO\0" "JAVANESE LEFT RERENGGAN\0" "JAVANESE LETTER A\0" "JAVANESE LETTER AI\0" "JAVANESE LETTER BA\0" "JAVANESE LETTER BA MURDA\0" "JAVANESE LETTER CA\0" "JAVANESE LETTER CA MURDA\0" "JAVANESE LETTER DA\0" "JAVANESE LETTER DA MAHAPRANA\0" "JAVANESE LETTER DDA\0" "JAVANESE LETTER DDA MAHAPRANA\0" "JAVANESE LETTER E\0" "JAVANESE LETTER GA\0" "JAVANESE LETTER GA MURDA\0" "JAVANESE LETTER HA\0" "JAVANESE LETTER I\0" "JAVANESE LETTER I KAWI\0" "JAVANESE LETTER II\0" "JAVANESE LETTER JA\0" "JAVANESE LETTER JA MAHAPRANA\0" "JAVANESE LETTER KA\0" "JAVANESE LETTER KA MURDA\0" "JAVANESE LETTER KA SASAK\0" "JAVANESE LETTER LA\0" "JAVANESE LETTER MA\0" "JAVANESE LETTER NA\0" "JAVANESE LETTER NA MURDA\0" "JAVANESE LETTER NGA\0" "JAVANESE LETTER NGA LELET\0" "JAVANESE LETTER NGA LELET RASWADI\0" "JAVANESE LETTER NYA\0" "JAVANESE LETTER NYA MURDA\0" "JAVANESE LETTER O\0" "JAVANESE LETTER PA\0" "JAVANESE LETTER PA CEREK\0" "JAVANESE LETTER PA MURDA\0" "JAVANESE LETTER RA\0" "JAVANESE LETTER RA AGUNG\0" "JAVANESE LETTER SA\0" "JAVANESE LETTER SA MAHAPRANA\0" "JAVANESE LETTER SA MURDA\0" "JAVANESE LETTER TA\0" "JAVANESE LETTER TA MURDA\0" "JAVANESE LETTER TTA\0" "JAVANESE LETTER TTA MAHAPRANA\0" "JAVANESE LETTER U\0" "JAVANESE LETTER WA\0" "JAVANESE LETTER YA\0" "JAVANESE PADA ADEG\0" "JAVANESE PADA ADEG ADEG\0" "JAVANESE PADA ANDAP\0" "JAVANESE PADA ISEN-ISEN\0" "JAVANESE PADA LINGSA\0" "JAVANESE PADA LUHUR\0" "JAVANESE PADA LUNGSI\0" "JAVANESE PADA MADYA\0" "JAVANESE PADA PANGKAT\0" "JAVANESE PADA PISELEH\0" "JAVANESE PADA TIRTA TUMETES\0" "JAVANESE PADA WINDU\0" "JAVANESE PANGKON\0" "JAVANESE PANGRANGKEP\0" "JAVANESE RIGHT RERENGGAN\0" "JAVANESE SIGN CECAK\0" "JAVANESE SIGN CECAK TELU\0" "JAVANESE SIGN LAYAR\0" "JAVANESE SIGN PANYANGGA\0" "JAVANESE SIGN WIGNYAN\0" "JAVANESE TURNED PADA PISELEH\0" "JAVANESE VOWEL SIGN DIRGA MURE\0" "JAVANESE VOWEL SIGN PEPET\0" "JAVANESE VOWEL SIGN SUKU\0" "JAVANESE VOWEL SIGN SUKU MENDUT\0" "JAVANESE VOWEL SIGN TALING\0" "JAVANESE VOWEL SIGN TARUNG\0" "JAVANESE VOWEL SIGN TOLONG\0" "JAVANESE VOWEL SIGN WULU\0" "JAVANESE VOWEL SIGN WULU MELIK\0" "JEANS\0" "JOIN\0" "JUNO\0" "JUPITER\0" "KAITHI ABBREVIATION SIGN\0" "KAITHI DANDA\0" "KAITHI DOUBLE DANDA\0" "KAITHI DOUBLE SECTION MARK\0" "KAITHI ENUMERATION SIGN\0" "KAITHI LETTER A\0" "KAITHI LETTER AA\0" "KAITHI LETTER AI\0" "KAITHI LETTER AU\0" "KAITHI LETTER BA\0" "KAITHI LETTER BHA\0" "KAITHI LETTER CA\0" "KAITHI LETTER CHA\0" "KAITHI LETTER DA\0" "KAITHI LETTER DDA\0" "KAITHI LETTER DDDHA\0" "KAITHI LETTER DDHA\0" "KAITHI LETTER DHA\0" "KAITHI LETTER E\0" "KAITHI LETTER GA\0" "KAITHI LETTER GHA\0" "KAITHI LETTER HA\0" "KAITHI LETTER I\0" "KAITHI LETTER II\0" "KAITHI LETTER JA\0" "KAITHI LETTER JHA\0" "KAITHI LETTER KA\0" "KAITHI LETTER KHA\0" "KAITHI LETTER LA\0" "KAITHI LETTER MA\0" "KAITHI LETTER NA\0" "KAITHI LETTER NGA\0" "KAITHI LETTER NNA\0" "KAITHI LETTER NYA\0" "KAITHI LETTER O\0" "KAITHI LETTER PA\0" "KAITHI LETTER PHA\0" "KAITHI LETTER RA\0" "KAITHI LETTER RHA\0" "KAITHI LETTER SA\0" "KAITHI LETTER SHA\0" "KAITHI LETTER SSA\0" "KAITHI LETTER TA\0" "KAITHI LETTER THA\0" "KAITHI LETTER TTA\0" "KAITHI LETTER TTHA\0" "KAITHI LETTER U\0" "KAITHI LETTER UU\0" "KAITHI LETTER VA\0" "KAITHI LETTER YA\0" "KAITHI NUMBER SIGN\0" "KAITHI SECTION MARK\0" "KAITHI SIGN ANUSVARA\0" "KAITHI SIGN CANDRABINDU\0" "KAITHI SIGN NUKTA\0" "KAITHI SIGN VIRAMA\0" "KAITHI SIGN VISARGA\0" "KAITHI VOWEL SIGN AA\0" "KAITHI VOWEL SIGN AI\0" "KAITHI VOWEL SIGN AU\0" "KAITHI VOWEL SIGN E\0" "KAITHI VOWEL SIGN I\0" "KAITHI VOWEL SIGN II\0" "KAITHI VOWEL SIGN O\0" "KAITHI VOWEL SIGN U\0" "KAITHI VOWEL SIGN UU\0" "KANGXI RADICAL AGAIN\0" "KANGXI RADICAL AND\0" "KANGXI RADICAL ARRIVE\0" "KANGXI RADICAL ARROW\0" "KANGXI RADICAL AXE\0" "KANGXI RADICAL BADGER\0" "KANGXI RADICAL BAMBOO\0" "KANGXI RADICAL BEAN\0" "KANGXI RADICAL BIG\0" "KANGXI RADICAL BIRD\0" "KANGXI RADICAL BITTER\0" "KANGXI RADICAL BLACK\0" "KANGXI RADICAL BLOOD\0" "KANGXI RADICAL BLUE\0" "KANGXI RADICAL BOAT\0" "KANGXI RADICAL BODY\0" "KANGXI RADICAL BOLT OF CLOTH\0" "KANGXI RADICAL BONE\0" "KANGXI RADICAL BOW\0" "KANGXI RADICAL BRANCH\0" "KANGXI RADICAL BRISTLE\0" "KANGXI RADICAL BRUSH\0" "KANGXI RADICAL CART\0" "KANGXI RADICAL CAULDRON\0" "KANGXI RADICAL CAVE\0" "KANGXI RADICAL CHILD\0" "KANGXI RADICAL CITY\0" "KANGXI RADICAL CLAN\0" "KANGXI RADICAL CLAW\0" "KANGXI RADICAL CLIFF\0" "KANGXI RADICAL CLOTHES\0" "KANGXI RADICAL COLOR\0" "KANGXI RADICAL COMPARE\0" "KANGXI RADICAL CORPSE\0" "KANGXI RADICAL COVER\0" "KANGXI RADICAL COW\0" "KANGXI RADICAL DEATH\0" "KANGXI RADICAL DEER\0" "KANGXI RADICAL DIPPER\0" "KANGXI RADICAL DISH\0" "KANGXI RADICAL DISTINGUISH\0" "KANGXI RADICAL DIVINATION\0" "KANGXI RADICAL DO NOT\0" "KANGXI RADICAL DOG\0" "KANGXI RADICAL DOOR\0" "KANGXI RADICAL DOT\0" "KANGXI RADICAL DOTTED CLIFF\0" "KANGXI RADICAL DOTTED TENT\0" "KANGXI RADICAL DOUBLE X\0" "KANGXI RADICAL DOWN BOX\0" "KANGXI RADICAL DRAGON\0" "KANGXI RADICAL DRUM\0" "KANGXI RADICAL DRY\0" "KANGXI RADICAL EAR\0" "KANGXI RADICAL EARTH\0" "KANGXI RADICAL EAT\0" "KANGXI RADICAL EIGHT\0" "KANGXI RADICAL EMBROIDERY\0" "KANGXI RADICAL ENCLOSURE\0" "KANGXI RADICAL ENTER\0" "KANGXI RADICAL EVEN\0" "KANGXI RADICAL EVENING\0" "KANGXI RADICAL EYE\0" "KANGXI RADICAL FACE\0" "KANGXI RADICAL FANG\0" "KANGXI RADICAL FATHER\0" "KANGXI RADICAL FEATHER\0" "KANGXI RADICAL FIELD\0" "KANGXI RADICAL FIGHT\0" "KANGXI RADICAL FIRE\0" "KANGXI RADICAL FISH\0" "KANGXI RADICAL FLUTE\0" "KANGXI RADICAL FLY\0" "KANGXI RADICAL FOOT\0" "KANGXI RADICAL FRAGRANT\0" "KANGXI RADICAL FROG\0" "KANGXI RADICAL FUR\0" "KANGXI RADICAL GATE\0" "KANGXI RADICAL GHOST\0" "KANGXI RADICAL GO\0" "KANGXI RADICAL GO SLOWLY\0" "KANGXI RADICAL GOLD\0" "KANGXI RADICAL GRAIN\0" "KANGXI RADICAL GRASS\0" "KANGXI RADICAL HAIR\0" "KANGXI RADICAL HALBERD\0" "KANGXI RADICAL HALF TREE TRUNK\0" "KANGXI RADICAL HAND\0" "KANGXI RADICAL HEAD\0" "KANGXI RADICAL HEART\0" "KANGXI RADICAL HEMP\0" "KANGXI RADICAL HIDING ENCLOSURE\0" "KANGXI RADICAL HOOK\0" "KANGXI RADICAL HORN\0" "KANGXI RADICAL HORSE\0" "KANGXI RADICAL ICE\0" "KANGXI RADICAL INCH\0" "KANGXI RADICAL INSECT\0" "KANGXI RADICAL JADE\0" "KANGXI RADICAL JAR\0" "KANGXI RADICAL KNIFE\0" "KANGXI RADICAL LACK\0" "KANGXI RADICAL LAME\0" "KANGXI RADICAL LEAF\0" "KANGXI RADICAL LEATHER\0" "KANGXI RADICAL LEEK\0" "KANGXI RADICAL LEGS\0" "KANGXI RADICAL LID\0" "KANGXI RADICAL LIFE\0" "KANGXI RADICAL LINE\0" "KANGXI RADICAL LONG\0" "KANGXI RADICAL LONG STRIDE\0" "KANGXI RADICAL MAN\0" "KANGXI RADICAL MEAT\0" "KANGXI RADICAL MELON\0" "KANGXI RADICAL MILLET\0" "KANGXI RADICAL MINISTER\0" "KANGXI RADICAL MOON\0" "KANGXI RADICAL MORNING\0" "KANGXI RADICAL MORTAR\0" "KANGXI RADICAL MOUND\0" "KANGXI RADICAL MOUNTAIN\0" "KANGXI RADICAL MOUTH\0" "KANGXI RADICAL NET\0" "KANGXI RADICAL NOSE\0" "KANGXI RADICAL NOT\0" "KANGXI RADICAL OLD\0" "KANGXI RADICAL ONE\0" "KANGXI RADICAL ONESELF\0" "KANGXI RADICAL OPEN BOX\0" "KANGXI RADICAL OPPOSE\0" "KANGXI RADICAL PIG\0" "KANGXI RADICAL PLOW\0" "KANGXI RADICAL POWER\0" "KANGXI RADICAL PRIVATE\0" "KANGXI RADICAL PROFOUND\0" "KANGXI RADICAL RAIN\0" "KANGXI RADICAL RAP\0" "KANGXI RADICAL RAT\0" "KANGXI RADICAL RED\0" "KANGXI RADICAL RICE\0" "KANGXI RADICAL RIGHT OPEN BOX\0" "KANGXI RADICAL RIVER\0" "KANGXI RADICAL ROOF\0" "KANGXI RADICAL RUN\0" "KANGXI RADICAL SACRIFICIAL WINE\0" "KANGXI RADICAL SALT\0" "KANGXI RADICAL SAY\0" "KANGXI RADICAL SCHOLAR\0" "KANGXI RADICAL SCRIPT\0" "KANGXI RADICAL SEAL\0" "KANGXI RADICAL SECOND\0" "KANGXI RADICAL SEE\0" "KANGXI RADICAL SELF\0" "KANGXI RADICAL SHEEP\0" "KANGXI RADICAL SHELL\0" "KANGXI RADICAL SHOOT\0" "KANGXI RADICAL SHORT TAILED BIRD\0" "KANGXI RADICAL SHORT THREAD\0" "KANGXI RADICAL SICKNESS\0" "KANGXI RADICAL SILK\0" "KANGXI RADICAL SKIN\0" "KANGXI RADICAL SLASH\0" "KANGXI RADICAL SLAVE\0" "KANGXI RADICAL SLICE\0" "KANGXI RADICAL SMALL\0" "KANGXI RADICAL SNOUT\0" "KANGXI RADICAL SOUND\0" "KANGXI RADICAL SPEAR\0" "KANGXI RADICAL SPEECH\0" "KANGXI RADICAL SPIRIT\0" "KANGXI RADICAL SPOON\0" "KANGXI RADICAL SPROUT\0" "KANGXI RADICAL SQUARE\0" "KANGXI RADICAL STAND\0" "KANGXI RADICAL STEAM\0" "KANGXI RADICAL STEP\0" "KANGXI RADICAL STONE\0" "KANGXI RADICAL STOP\0" "KANGXI RADICAL STOPPING\0" "KANGXI RADICAL SUN\0" "KANGXI RADICAL SWEET\0" "KANGXI RADICAL TABLE\0" "KANGXI RADICAL TALL\0" "KANGXI RADICAL TANNED LEATHER\0" "KANGXI RADICAL TEN\0" "KANGXI RADICAL TIGER\0" "KANGXI RADICAL TILE\0" "KANGXI RADICAL TONGUE\0" "KANGXI RADICAL TOOTH\0" "KANGXI RADICAL TRACK\0" "KANGXI RADICAL TREE\0" "KANGXI RADICAL TRIPOD\0" "KANGXI RADICAL TURBAN\0" "KANGXI RADICAL TURTLE\0" "KANGXI RADICAL TWO\0" "KANGXI RADICAL TWO HANDS\0" "KANGXI RADICAL USE\0" "KANGXI RADICAL VALLEY\0" "KANGXI RADICAL VILLAGE\0" "KANGXI RADICAL WALK\0" "KANGXI RADICAL WALK ENCLOSURE\0" "KANGXI RADICAL WATER\0" "KANGXI RADICAL WEAPON\0" "KANGXI RADICAL WEST\0" "KANGXI RADICAL WHEAT\0" "KANGXI RADICAL WHITE\0" "KANGXI RADICAL WIND\0" "KANGXI RADICAL WINE\0" "KANGXI RADICAL WOMAN\0" "KANGXI RADICAL WORK\0" "KANGXI RADICAL WRAP\0" "KANGXI RADICAL WRONG\0" "KANGXI RADICAL YELLOW\0" "KANNADA AI LENGTH MARK\0" "KANNADA DIGIT EIGHT\0" "KANNADA DIGIT FIVE\0" "KANNADA DIGIT FOUR\0" "KANNADA DIGIT NINE\0" "KANNADA DIGIT ONE\0" "KANNADA DIGIT SEVEN\0" "KANNADA DIGIT SIX\0" "KANNADA DIGIT THREE\0" "KANNADA DIGIT TWO\0" "KANNADA DIGIT ZERO\0" "KANNADA LENGTH MARK\0" "KANNADA LETTER A\0" "KANNADA LETTER AA\0" "KANNADA LETTER AI\0" "KANNADA LETTER AU\0" "KANNADA LETTER BA\0" "KANNADA LETTER BHA\0" "KANNADA LETTER CA\0" "KANNADA LETTER CHA\0" "KANNADA LETTER DA\0" "KANNADA LETTER DDA\0" "KANNADA LETTER DDHA\0" "KANNADA LETTER DHA\0" "KANNADA LETTER E\0" "KANNADA LETTER EE\0" "KANNADA LETTER FA\0" "KANNADA LETTER GA\0" "KANNADA LETTER GHA\0" "KANNADA LETTER HA\0" "KANNADA LETTER I\0" "KANNADA LETTER II\0" "KANNADA LETTER JA\0" "KANNADA LETTER JHA\0" "KANNADA LETTER KA\0" "KANNADA LETTER KHA\0" "KANNADA LETTER LA\0" "KANNADA LETTER LLA\0" "KANNADA LETTER MA\0" "KANNADA LETTER NA\0" "KANNADA LETTER NGA\0" "KANNADA LETTER NNA\0" "KANNADA LETTER NYA\0" "KANNADA LETTER O\0" "KANNADA LETTER OO\0" "KANNADA LETTER PA\0" "KANNADA LETTER PHA\0" "KANNADA LETTER RA\0" "KANNADA LETTER RRA\0" "KANNADA LETTER SA\0" "KANNADA LETTER SHA\0" "KANNADA LETTER SSA\0" "KANNADA LETTER TA\0" "KANNADA LETTER THA\0" "KANNADA LETTER TTA\0" "KANNADA LETTER TTHA\0" "KANNADA LETTER U\0" "KANNADA LETTER UU\0" "KANNADA LETTER VA\0" "KANNADA LETTER VOCALIC L\0" "KANNADA LETTER VOCALIC LL\0" "KANNADA LETTER VOCALIC R\0" "KANNADA LETTER VOCALIC RR\0" "KANNADA LETTER YA\0" "KANNADA SIGN ANUSVARA\0" "KANNADA SIGN AVAGRAHA\0" "KANNADA SIGN JIHVAMULIYA\0" "KANNADA SIGN NUKTA\0" "KANNADA SIGN UPADHMANIYA\0" "KANNADA SIGN VIRAMA\0" "KANNADA SIGN VISARGA\0" "KANNADA VOWEL SIGN AA\0" "KANNADA VOWEL SIGN AI\0" "KANNADA VOWEL SIGN AU\0" "KANNADA VOWEL SIGN E\0" "KANNADA VOWEL SIGN EE\0" "KANNADA VOWEL SIGN I\0" "KANNADA VOWEL SIGN II\0" "KANNADA VOWEL SIGN O\0" "KANNADA VOWEL SIGN OO\0" "KANNADA VOWEL SIGN U\0" "KANNADA VOWEL SIGN UU\0" "KANNADA VOWEL SIGN VOCALIC L\0" "KANNADA VOWEL SIGN VOCALIC LL\0" "KANNADA VOWEL SIGN VOCALIC R\0" "KANNADA VOWEL SIGN VOCALIC RR\0" "KATAKANA DIGRAPH KOTO\0" "KATAKANA ITERATION MARK\0" "KATAKANA LETTER A\0" "KATAKANA LETTER ARCHAIC E\0" "KATAKANA LETTER BA\0" "KATAKANA LETTER BE\0" "KATAKANA LETTER BI\0" "KATAKANA LETTER BO\0" "KATAKANA LETTER BU\0" "KATAKANA LETTER DA\0" "KATAKANA LETTER DE\0" "KATAKANA LETTER DI\0" "KATAKANA LETTER DO\0" "KATAKANA LETTER DU\0" "KATAKANA LETTER E\0" "KATAKANA LETTER GA\0" "KATAKANA LETTER GE\0" "KATAKANA LETTER GI\0" "KATAKANA LETTER GO\0" "KATAKANA LETTER GU\0" "KATAKANA LETTER HA\0" "KATAKANA LETTER HE\0" "KATAKANA LETTER HI\0" "KATAKANA LETTER HO\0" "KATAKANA LETTER HU\0" "KATAKANA LETTER I\0" "KATAKANA LETTER KA\0" "KATAKANA LETTER KE\0" "KATAKANA LETTER KI\0" "KATAKANA LETTER KO\0" "KATAKANA LETTER KU\0" "KATAKANA LETTER MA\0" "KATAKANA LETTER ME\0" "KATAKANA LETTER MI\0" "KATAKANA LETTER MO\0" "KATAKANA LETTER MU\0" "KATAKANA LETTER N\0" "KATAKANA LETTER NA\0" "KATAKANA LETTER NE\0" "KATAKANA LETTER NI\0" "KATAKANA LETTER NO\0" "KATAKANA LETTER NU\0" "KATAKANA LETTER O\0" "KATAKANA LETTER PA\0" "KATAKANA LETTER PE\0" "KATAKANA LETTER PI\0" "KATAKANA LETTER PO\0" "KATAKANA LETTER PU\0" "KATAKANA LETTER RA\0" "KATAKANA LETTER RE\0" "KATAKANA LETTER RI\0" "KATAKANA LETTER RO\0" "KATAKANA LETTER RU\0" "KATAKANA LETTER SA\0" "KATAKANA LETTER SE\0" "KATAKANA LETTER SI\0" "KATAKANA LETTER SMALL A\0" "KATAKANA LETTER SMALL E\0" "KATAKANA LETTER SMALL HA\0" "KATAKANA LETTER SMALL HE\0" "KATAKANA LETTER SMALL HI\0" "KATAKANA LETTER SMALL HO\0" "KATAKANA LETTER SMALL HU\0" "KATAKANA LETTER SMALL I\0" "KATAKANA LETTER SMALL KA\0" "KATAKANA LETTER SMALL KE\0" "KATAKANA LETTER SMALL KU\0" "KATAKANA LETTER SMALL MU\0" "KATAKANA LETTER SMALL NU\0" "KATAKANA LETTER SMALL O\0" "KATAKANA LETTER SMALL RA\0" "KATAKANA LETTER SMALL RE\0" "KATAKANA LETTER SMALL RI\0" "KATAKANA LETTER SMALL RO\0" "KATAKANA LETTER SMALL RU\0" "KATAKANA LETTER SMALL SI\0" "KATAKANA LETTER SMALL SU\0" "KATAKANA LETTER SMALL TO\0" "KATAKANA LETTER SMALL TU\0" "KATAKANA LETTER SMALL U\0" "KATAKANA LETTER SMALL WA\0" "KATAKANA LETTER SMALL YA\0" "KATAKANA LETTER SMALL YO\0" "KATAKANA LETTER SMALL YU\0" "KATAKANA LETTER SO\0" "KATAKANA LETTER SU\0" "KATAKANA LETTER TA\0" "KATAKANA LETTER TE\0" "KATAKANA LETTER TI\0" "KATAKANA LETTER TO\0" "KATAKANA LETTER TU\0" "KATAKANA LETTER U\0" "KATAKANA LETTER VA\0" "KATAKANA LETTER VE\0" "KATAKANA LETTER VI\0" "KATAKANA LETTER VO\0" "KATAKANA LETTER VU\0" "KATAKANA LETTER WA\0" "KATAKANA LETTER WE\0" "KATAKANA LETTER WI\0" "KATAKANA LETTER WO\0" "KATAKANA LETTER YA\0" "KATAKANA LETTER YO\0" "KATAKANA LETTER YU\0" "KATAKANA LETTER ZA\0" "KATAKANA LETTER ZE\0" "KATAKANA LETTER ZI\0" "KATAKANA LETTER ZO\0" "KATAKANA LETTER ZU\0" "KATAKANA MIDDLE DOT\0" "KATAKANA VOICED ITERATION MARK\0" "KATAKANA-HIRAGANA DOUBLE HYPHEN\0" "KATAKANA-HIRAGANA PROLONGED SOUND MARK\0" "KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK\0" "KATAKANA-HIRAGANA VOICED SOUND MARK\0" "KAYAH LI DIGIT EIGHT\0" "KAYAH LI DIGIT FIVE\0" "KAYAH LI DIGIT FOUR\0" "KAYAH LI DIGIT NINE\0" "KAYAH LI DIGIT ONE\0" "KAYAH LI DIGIT SEVEN\0" "KAYAH LI DIGIT SIX\0" "KAYAH LI DIGIT THREE\0" "KAYAH LI DIGIT TWO\0" "KAYAH LI DIGIT ZERO\0" "KAYAH LI LETTER A\0" "KAYAH LI LETTER BA\0" "KAYAH LI LETTER CA\0" "KAYAH LI LETTER DA\0" "KAYAH LI LETTER GA\0" "KAYAH LI LETTER HA\0" "KAYAH LI LETTER HTA\0" "KAYAH LI LETTER I\0" "KAYAH LI LETTER KA\0" "KAYAH LI LETTER KHA\0" "KAYAH LI LETTER LA\0" "KAYAH LI LETTER MA\0" "KAYAH LI LETTER NA\0" "KAYAH LI LETTER NGA\0" "KAYAH LI LETTER NYA\0" "KAYAH LI LETTER OE\0" "KAYAH LI LETTER OO\0" "KAYAH LI LETTER PA\0" "KAYAH LI LETTER PHA\0" "KAYAH LI LETTER RA\0" "KAYAH LI LETTER SA\0" "KAYAH LI LETTER SHA\0" "KAYAH LI LETTER TA\0" "KAYAH LI LETTER THA\0" "KAYAH LI LETTER VA\0" "KAYAH LI LETTER WA\0" "KAYAH LI LETTER YA\0" "KAYAH LI LETTER ZA\0" "KAYAH LI SIGN CWI\0" "KAYAH LI SIGN SHYA\0" "KAYAH LI TONE CALYA\0" "KAYAH LI TONE CALYA PLOPHU\0" "KAYAH LI TONE PLOPHU\0" "KAYAH LI VOWEL E\0" "KAYAH LI VOWEL EE\0" "KAYAH LI VOWEL O\0" "KAYAH LI VOWEL U\0" "KAYAH LI VOWEL UE\0" "KELVIN SIGN\0" "KEY\0" "KEYBOARD\0" "KEYCAP TEN\0" "KHAROSHTHI DIGIT FOUR\0" "KHAROSHTHI DIGIT ONE\0" "KHAROSHTHI DIGIT THREE\0" "KHAROSHTHI DIGIT TWO\0" "KHAROSHTHI LETTER A\0" "KHAROSHTHI LETTER BA\0" "KHAROSHTHI LETTER BHA\0" "KHAROSHTHI LETTER CA\0" "KHAROSHTHI LETTER CHA\0" "KHAROSHTHI LETTER DA\0" "KHAROSHTHI LETTER DDA\0" "KHAROSHTHI LETTER DDHA\0" "KHAROSHTHI LETTER DHA\0" "KHAROSHTHI LETTER GA\0" "KHAROSHTHI LETTER GHA\0" "KHAROSHTHI LETTER HA\0" "KHAROSHTHI LETTER JA\0" "KHAROSHTHI LETTER KA\0" "KHAROSHTHI LETTER KHA\0" "KHAROSHTHI LETTER KKA\0" "KHAROSHTHI LETTER LA\0" "KHAROSHTHI LETTER MA\0" "KHAROSHTHI LETTER NA\0" "KHAROSHTHI LETTER NNA\0" "KHAROSHTHI LETTER NYA\0" "KHAROSHTHI LETTER PA\0" "KHAROSHTHI LETTER PHA\0" "KHAROSHTHI LETTER RA\0" "KHAROSHTHI LETTER SA\0" "KHAROSHTHI LETTER SHA\0" "KHAROSHTHI LETTER SSA\0" "KHAROSHTHI LETTER TA\0" "KHAROSHTHI LETTER THA\0" "KHAROSHTHI LETTER TTA\0" "KHAROSHTHI LETTER TTHA\0" "KHAROSHTHI LETTER TTTHA\0" "KHAROSHTHI LETTER VA\0" "KHAROSHTHI LETTER YA\0" "KHAROSHTHI LETTER ZA\0" "KHAROSHTHI NUMBER ONE HUNDRED\0" "KHAROSHTHI NUMBER ONE THOUSAND\0" "KHAROSHTHI NUMBER TEN\0" "KHAROSHTHI NUMBER TWENTY\0" "KHAROSHTHI PUNCTUATION CIRCLE\0" "KHAROSHTHI PUNCTUATION CRESCENT BAR\0" "KHAROSHTHI PUNCTUATION DANDA\0" "KHAROSHTHI PUNCTUATION DOT\0" "KHAROSHTHI PUNCTUATION DOUBLE DANDA\0" "KHAROSHTHI PUNCTUATION LINES\0" "KHAROSHTHI PUNCTUATION LOTUS\0" "KHAROSHTHI PUNCTUATION MANGALAM\0" "KHAROSHTHI PUNCTUATION SMALL CIRCLE\0" "KHAROSHTHI SIGN ANUSVARA\0" "KHAROSHTHI SIGN BAR ABOVE\0" "KHAROSHTHI SIGN CAUDA\0" "KHAROSHTHI SIGN DOT BELOW\0" "KHAROSHTHI SIGN DOUBLE RING BELOW\0" "KHAROSHTHI SIGN VISARGA\0" "KHAROSHTHI VIRAMA\0" "KHAROSHTHI VOWEL LENGTH MARK\0" "KHAROSHTHI VOWEL SIGN E\0" "KHAROSHTHI VOWEL SIGN I\0" "KHAROSHTHI VOWEL SIGN O\0" "KHAROSHTHI VOWEL SIGN U\0" "KHAROSHTHI VOWEL SIGN VOCALIC R\0" "KHMER CURRENCY SYMBOL RIEL\0" "KHMER DIGIT EIGHT\0" "KHMER DIGIT FIVE\0" "KHMER DIGIT FOUR\0" "KHMER DIGIT NINE\0" "KHMER DIGIT ONE\0" "KHMER DIGIT SEVEN\0" "KHMER DIGIT SIX\0" "KHMER DIGIT THREE\0" "KHMER DIGIT TWO\0" "KHMER DIGIT ZERO\0" "KHMER INDEPENDENT VOWEL LY\0" "KHMER INDEPENDENT VOWEL LYY\0" "KHMER INDEPENDENT VOWEL QAA\0" "KHMER INDEPENDENT VOWEL QAI\0" "KHMER INDEPENDENT VOWEL QAQ\0" "KHMER INDEPENDENT VOWEL QAU\0" "KHMER INDEPENDENT VOWEL QE\0" "KHMER INDEPENDENT VOWEL QI\0" "KHMER INDEPENDENT VOWEL QII\0" "KHMER INDEPENDENT VOWEL QOO TYPE ONE\0" "KHMER INDEPENDENT VOWEL QOO TYPE TWO\0" "KHMER INDEPENDENT VOWEL QU\0" "KHMER INDEPENDENT VOWEL QUK\0" "KHMER INDEPENDENT VOWEL QUU\0" "KHMER INDEPENDENT VOWEL QUUV\0" "KHMER INDEPENDENT VOWEL RY\0" "KHMER INDEPENDENT VOWEL RYY\0" "KHMER LETTER BA\0" "KHMER LETTER CA\0" "KHMER LETTER CHA\0" "KHMER LETTER CHO\0" "KHMER LETTER CO\0" "KHMER LETTER DA\0" "KHMER LETTER DO\0" "KHMER LETTER HA\0" "KHMER LETTER KA\0" "KHMER LETTER KHA\0" "KHMER LETTER KHO\0" "KHMER LETTER KO\0" "KHMER LETTER LA\0" "KHMER LETTER LO\0" "KHMER LETTER MO\0" "KHMER LETTER NGO\0" "KHMER LETTER NNO\0" "KHMER LETTER NO\0" "KHMER LETTER NYO\0" "KHMER LETTER PHA\0" "KHMER LETTER PHO\0" "KHMER LETTER PO\0" "KHMER LETTER QA\0" "KHMER LETTER RO\0" "KHMER LETTER SA\0" "KHMER LETTER SHA\0" "KHMER LETTER SSO\0" "KHMER LETTER TA\0" "KHMER LETTER THA\0" "KHMER LETTER THO\0" "KHMER LETTER TO\0" "KHMER LETTER TTHA\0" "KHMER LETTER TTHO\0" "KHMER LETTER VO\0" "KHMER LETTER YO\0" "KHMER SIGN AHSDA\0" "KHMER SIGN ATTHACAN\0" "KHMER SIGN AVAKRAHASANYA\0" "KHMER SIGN BANTOC\0" "KHMER SIGN BARIYOOSAN\0" "KHMER SIGN BATHAMASAT\0" "KHMER SIGN BEYYAL\0" "KHMER SIGN CAMNUC PII KUUH\0" "KHMER SIGN COENG\0" "KHMER SIGN KAKABAT\0" "KHMER SIGN KHAN\0" "KHMER SIGN KOOMUUT\0" "KHMER SIGN LEK TOO\0" "KHMER SIGN MUUSIKATOAN\0" "KHMER SIGN NIKAHIT\0" "KHMER SIGN PHNAEK MUAN\0" "KHMER SIGN REAHMUK\0" "KHMER SIGN ROBAT\0" "KHMER SIGN SAMYOK SANNYA\0" "KHMER SIGN TOANDAKHIAT\0" "KHMER SIGN TRIISAP\0" "KHMER SIGN VIRIAM\0" "KHMER SIGN YUUKALEAPINTU\0" "KHMER SYMBOL BEI KOET\0" "KHMER SYMBOL BEI ROC\0" "KHMER SYMBOL BUON KOET\0" "KHMER SYMBOL BUON ROC\0" "KHMER SYMBOL DAP KOET\0" "KHMER SYMBOL DAP ROC\0" "KHMER SYMBOL DAP-BEI KOET\0" "KHMER SYMBOL DAP-BEI ROC\0" "KHMER SYMBOL DAP-BUON KOET\0" "KHMER SYMBOL DAP-BUON ROC\0" "KHMER SYMBOL DAP-MUOY KOET\0" "KHMER SYMBOL DAP-MUOY ROC\0" "KHMER SYMBOL DAP-PII KOET\0" "KHMER SYMBOL DAP-PII ROC\0" "KHMER SYMBOL DAP-PRAM KOET\0" "KHMER SYMBOL DAP-PRAM ROC\0" "KHMER SYMBOL LEK ATTAK BEI\0" "KHMER SYMBOL LEK ATTAK BUON\0" "KHMER SYMBOL LEK ATTAK MUOY\0" "KHMER SYMBOL LEK ATTAK PII\0" "KHMER SYMBOL LEK ATTAK PRAM\0" "KHMER SYMBOL LEK ATTAK PRAM-BEI\0" "KHMER SYMBOL LEK ATTAK PRAM-BUON\0" "KHMER SYMBOL LEK ATTAK PRAM-MUOY\0" "KHMER SYMBOL LEK ATTAK PRAM-PII\0" "KHMER SYMBOL LEK ATTAK SON\0" "KHMER SYMBOL MUOY KOET\0" "KHMER SYMBOL MUOY ROC\0" "KHMER SYMBOL PATHAMASAT\0" "KHMER SYMBOL PII KOET\0" "KHMER SYMBOL PII ROC\0" "KHMER SYMBOL PRAM KOET\0" "KHMER SYMBOL PRAM ROC\0" "KHMER SYMBOL PRAM-BEI KOET\0" "KHMER SYMBOL PRAM-BEI ROC\0" "KHMER SYMBOL PRAM-BUON KOET\0" "KHMER SYMBOL PRAM-BUON ROC\0" "KHMER SYMBOL PRAM-MUOY KOET\0" "KHMER SYMBOL PRAM-MUOY ROC\0" "KHMER SYMBOL PRAM-PII KOET\0" "KHMER SYMBOL PRAM-PII ROC\0" "KHMER SYMBOL TUTEYASAT\0" "KHMER VOWEL INHERENT AA\0" "KHMER VOWEL INHERENT AQ\0" "KHMER VOWEL SIGN AA\0" "KHMER VOWEL SIGN AE\0" "KHMER VOWEL SIGN AI\0" "KHMER VOWEL SIGN AU\0" "KHMER VOWEL SIGN E\0" "KHMER VOWEL SIGN I\0" "KHMER VOWEL SIGN IE\0" "KHMER VOWEL SIGN II\0" "KHMER VOWEL SIGN OE\0" "KHMER VOWEL SIGN OO\0" "KHMER VOWEL SIGN U\0" "KHMER VOWEL SIGN UA\0" "KHMER VOWEL SIGN UU\0" "KHMER VOWEL SIGN Y\0" "KHMER VOWEL SIGN YA\0" "KHMER VOWEL SIGN YY\0" "KIMONO\0" "KIP SIGN\0" "KISS\0" "KISS MARK\0" "KISSING CAT FACE WITH CLOSED EYES\0" "KISSING FACE WITH CLOSED EYES\0" "KOALA\0" "KOREAN STANDARD SYMBOL\0" "L B BAR SYMBOL\0" "LADY BEETLE\0" "LANGUAGE TAG\0" "LAO CANCELLATION MARK\0" "LAO DIGIT EIGHT\0" "LAO DIGIT FIVE\0" "LAO DIGIT FOUR\0" "LAO DIGIT NINE\0" "LAO DIGIT ONE\0" "LAO DIGIT SEVEN\0" "LAO DIGIT SIX\0" "LAO DIGIT THREE\0" "LAO DIGIT TWO\0" "LAO DIGIT ZERO\0" "LAO ELLIPSIS\0" "LAO HO MO\0" "LAO HO NO\0" "LAO KO LA\0" "LAO LETTER BO\0" "LAO LETTER CO\0" "LAO LETTER DO\0" "LAO LETTER FO SUNG\0" "LAO LETTER FO TAM\0" "LAO LETTER HO SUNG\0" "LAO LETTER HO TAM\0" "LAO LETTER KHO SUNG\0" "LAO LETTER KHO TAM\0" "LAO LETTER KO\0" "LAO LETTER LO LING\0" "LAO LETTER LO LOOT\0" "LAO LETTER MO\0" "LAO LETTER NGO\0" "LAO LETTER NO\0" "LAO LETTER NYO\0" "LAO LETTER O\0" "LAO LETTER PHO SUNG\0" "LAO LETTER PHO TAM\0" "LAO LETTER PO\0" "LAO LETTER SO SUNG\0" "LAO LETTER SO TAM\0" "LAO LETTER THO SUNG\0" "LAO LETTER THO TAM\0" "LAO LETTER TO\0" "LAO LETTER WO\0" "LAO LETTER YO\0" "LAO NIGGAHITA\0" "LAO SEMIVOWEL SIGN LO\0" "LAO SEMIVOWEL SIGN NYO\0" "LAO TONE MAI CATAWA\0" "LAO TONE MAI EK\0" "LAO TONE MAI THO\0" "LAO TONE MAI TI\0" "LAO VOWEL SIGN A\0" "LAO VOWEL SIGN AA\0" "LAO VOWEL SIGN AI\0" "LAO VOWEL SIGN AM\0" "LAO VOWEL SIGN AY\0" "LAO VOWEL SIGN E\0" "LAO VOWEL SIGN EI\0" "LAO VOWEL SIGN I\0" "LAO VOWEL SIGN II\0" "LAO VOWEL SIGN MAI KAN\0" "LAO VOWEL SIGN MAI KON\0" "LAO VOWEL SIGN O\0" "LAO VOWEL SIGN U\0" "LAO VOWEL SIGN UU\0" "LAO VOWEL SIGN Y\0" "LAO VOWEL SIGN YY\0" "LARGE BLUE CIRCLE\0" "LARGE BLUE DIAMOND\0" "LARGE CIRCLE\0" "LARGE DOWN TACK\0" "LARGE LEFT TRIANGLE OPERATOR\0" "LARGE ONE DOT OVER TWO DOTS PUNCTUATION\0" "LARGE ONE RING OVER TWO RINGS PUNCTUATION\0" "LARGE ORANGE DIAMOND\0" "LARGE RED CIRCLE\0" "LARGE TRIPLE VERTICAL BAR OPERATOR\0" "LARGE TWO DOTS OVER ONE DOT PUNCTUATION\0" "LARGE TWO RINGS OVER ONE RING PUNCTUATION\0" "LARGE UP TACK\0" "LARGER THAN\0" "LARGER THAN OR EQUAL TO\0" "LAST QUARTER MOON\0" "LAST QUARTER MOON SYMBOL\0" "LAST QUARTER MOON WITH FACE\0" "LATIN CAPITAL LETTER A\0" "LATIN CAPITAL LETTER A WITH ACUTE\0" "LATIN CAPITAL LETTER A WITH BREVE\0" "LATIN CAPITAL LETTER A WITH BREVE AND ACUTE\0" "LATIN CAPITAL LETTER A WITH BREVE AND DOT BELOW\0" "LATIN CAPITAL LETTER A WITH BREVE AND GRAVE\0" "LATIN CAPITAL LETTER A WITH BREVE AND HOOK ABOVE\0" "LATIN CAPITAL LETTER A WITH BREVE AND TILDE\0" "LATIN CAPITAL LETTER A WITH CARON\0" "LATIN CAPITAL LETTER A WITH CIRCUMFLEX\0" "LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND ACUTE\0" "LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND DOT BELOW\0" "LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND GRAVE\0" "LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE\0" "LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND TILDE\0" "LATIN CAPITAL LETTER A WITH DIAERESIS\0" "LATIN CAPITAL LETTER A WITH DIAERESIS AND MACRON\0" "LATIN CAPITAL LETTER A WITH DOT ABOVE\0" "LATIN CAPITAL LETTER A WITH DOT ABOVE AND MACRON\0" "LATIN CAPITAL LETTER A WITH DOT BELOW\0" "LATIN CAPITAL LETTER A WITH DOUBLE GRAVE\0" "LATIN CAPITAL LETTER A WITH GRAVE\0" "LATIN CAPITAL LETTER A WITH HOOK ABOVE\0" "LATIN CAPITAL LETTER A WITH INVERTED BREVE\0" "LATIN CAPITAL LETTER A WITH MACRON\0" "LATIN CAPITAL LETTER A WITH OGONEK\0" "LATIN CAPITAL LETTER A WITH RING ABOVE\0" "LATIN CAPITAL LETTER A WITH RING ABOVE AND ACUTE\0" "LATIN CAPITAL LETTER A WITH RING BELOW\0" "LATIN CAPITAL LETTER A WITH STROKE\0" "LATIN CAPITAL LETTER A WITH TILDE\0" "LATIN CAPITAL LETTER AA\0" "LATIN CAPITAL LETTER AE\0" "LATIN CAPITAL LETTER AE WITH ACUTE\0" "LATIN CAPITAL LETTER AE WITH MACRON\0" "LATIN CAPITAL LETTER AFRICAN D\0" "LATIN CAPITAL LETTER ALPHA\0" "LATIN CAPITAL LETTER AO\0" "LATIN CAPITAL LETTER AU\0" "LATIN CAPITAL LETTER AV\0" "LATIN CAPITAL LETTER AV WITH HORIZONTAL BAR\0" "LATIN CAPITAL LETTER AY\0" "LATIN CAPITAL LETTER B\0" "LATIN CAPITAL LETTER B WITH DOT ABOVE\0" "LATIN CAPITAL LETTER B WITH DOT BELOW\0" "LATIN CAPITAL LETTER B WITH HOOK\0" "LATIN CAPITAL LETTER B WITH LINE BELOW\0" "LATIN CAPITAL LETTER B WITH STROKE\0" "LATIN CAPITAL LETTER B WITH TOPBAR\0" "LATIN CAPITAL LETTER BROKEN L\0" "LATIN CAPITAL LETTER C\0" "LATIN CAPITAL LETTER C WITH ACUTE\0" "LATIN CAPITAL LETTER C WITH CARON\0" "LATIN CAPITAL LETTER C WITH CEDILLA\0" "LATIN CAPITAL LETTER C WITH CEDILLA AND ACUTE\0" "LATIN CAPITAL LETTER C WITH CIRCUMFLEX\0" "LATIN CAPITAL LETTER C WITH DOT ABOVE\0" "LATIN CAPITAL LETTER C WITH HOOK\0" "LATIN CAPITAL LETTER C WITH STROKE\0" "LATIN CAPITAL LETTER CON\0" "LATIN CAPITAL LETTER CUATRILLO\0" "LATIN CAPITAL LETTER CUATRILLO WITH COMMA\0" "LATIN CAPITAL LETTER D\0" "LATIN CAPITAL LETTER D WITH CARON\0" "LATIN CAPITAL LETTER D WITH CEDILLA\0" "LATIN CAPITAL LETTER D WITH CIRCUMFLEX BELOW\0" "LATIN CAPITAL LETTER D WITH DOT ABOVE\0" "LATIN CAPITAL LETTER D WITH DOT BELOW\0" "LATIN CAPITAL LETTER D WITH HOOK\0" "LATIN CAPITAL LETTER D WITH LINE BELOW\0" "LATIN CAPITAL LETTER D WITH SMALL LETTER Z\0" "LATIN CAPITAL LETTER D WITH SMALL LETTER Z WITH CARON\0" "LATIN CAPITAL LETTER D WITH STROKE\0" "LATIN CAPITAL LETTER D WITH TOPBAR\0" "LATIN CAPITAL LETTER DZ\0" "LATIN CAPITAL LETTER DZ WITH CARON\0" "LATIN CAPITAL LETTER E\0" "LATIN CAPITAL LETTER E WITH ACUTE\0" "LATIN CAPITAL LETTER E WITH BREVE\0" "LATIN CAPITAL LETTER E WITH CARON\0" "LATIN CAPITAL LETTER E WITH CEDILLA\0" "LATIN CAPITAL LETTER E WITH CEDILLA AND BREVE\0" "LATIN CAPITAL LETTER E WITH CIRCUMFLEX\0" "LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND ACUTE\0" "LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND DOT BELOW\0" "LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND GRAVE\0" "LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE\0" "LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND TILDE\0" "LATIN CAPITAL LETTER E WITH CIRCUMFLEX BELOW\0" "LATIN CAPITAL LETTER E WITH DIAERESIS\0" "LATIN CAPITAL LETTER E WITH DOT ABOVE\0" "LATIN CAPITAL LETTER E WITH DOT BELOW\0" "LATIN CAPITAL LETTER E WITH DOUBLE GRAVE\0" "LATIN CAPITAL LETTER E WITH GRAVE\0" "LATIN CAPITAL LETTER E WITH HOOK ABOVE\0" "LATIN CAPITAL LETTER E WITH INVERTED BREVE\0" "LATIN CAPITAL LETTER E WITH MACRON\0" "LATIN CAPITAL LETTER E WITH MACRON AND ACUTE\0" "LATIN CAPITAL LETTER E WITH MACRON AND GRAVE\0" "LATIN CAPITAL LETTER E WITH OGONEK\0" "LATIN CAPITAL LETTER E WITH STROKE\0" "LATIN CAPITAL LETTER E WITH TILDE\0" "LATIN CAPITAL LETTER E WITH TILDE BELOW\0" "LATIN CAPITAL LETTER EGYPTOLOGICAL AIN\0" "LATIN CAPITAL LETTER EGYPTOLOGICAL ALEF\0" "LATIN CAPITAL LETTER ENG\0" "LATIN CAPITAL LETTER ESH\0" "LATIN CAPITAL LETTER ET\0" "LATIN CAPITAL LETTER ETH\0" "LATIN CAPITAL LETTER EZH\0" "LATIN CAPITAL LETTER EZH REVERSED\0" "LATIN CAPITAL LETTER EZH WITH CARON\0" "LATIN CAPITAL LETTER F\0" "LATIN CAPITAL LETTER F WITH DOT ABOVE\0" "LATIN CAPITAL LETTER F WITH HOOK\0" "LATIN CAPITAL LETTER G\0" "LATIN CAPITAL LETTER G WITH ACUTE\0" "LATIN CAPITAL LETTER G WITH BREVE\0" "LATIN CAPITAL LETTER G WITH CARON\0" "LATIN CAPITAL LETTER G WITH CEDILLA\0" "LATIN CAPITAL LETTER G WITH CIRCUMFLEX\0" "LATIN CAPITAL LETTER G WITH DOT ABOVE\0" "LATIN CAPITAL LETTER G WITH HOOK\0" "LATIN CAPITAL LETTER G WITH MACRON\0" "LATIN CAPITAL LETTER G WITH OBLIQUE STROKE\0" "LATIN CAPITAL LETTER G WITH STROKE\0" "LATIN CAPITAL LETTER GAMMA\0" "LATIN CAPITAL LETTER GLOTTAL STOP\0" "LATIN CAPITAL LETTER H\0" "LATIN CAPITAL LETTER H WITH BREVE BELOW\0" "LATIN CAPITAL LETTER H WITH CARON\0" "LATIN CAPITAL LETTER H WITH CEDILLA\0" "LATIN CAPITAL LETTER H WITH CIRCUMFLEX\0" "LATIN CAPITAL LETTER H WITH DESCENDER\0" "LATIN CAPITAL LETTER H WITH DIAERESIS\0" "LATIN CAPITAL LETTER H WITH DOT ABOVE\0" "LATIN CAPITAL LETTER H WITH DOT BELOW\0" "LATIN CAPITAL LETTER H WITH STROKE\0" "LATIN CAPITAL LETTER HALF H\0" "LATIN CAPITAL LETTER HENG\0" "LATIN CAPITAL LETTER HWAIR\0" "LATIN CAPITAL LETTER I\0" "LATIN CAPITAL LETTER I WITH ACUTE\0" "LATIN CAPITAL LETTER I WITH BREVE\0" "LATIN CAPITAL LETTER I WITH CARON\0" "LATIN CAPITAL LETTER I WITH CIRCUMFLEX\0" "LATIN CAPITAL LETTER I WITH DIAERESIS\0" "LATIN CAPITAL LETTER I WITH DIAERESIS AND ACUTE\0" "LATIN CAPITAL LETTER I WITH DOT ABOVE\0" "LATIN CAPITAL LETTER I WITH DOT BELOW\0" "LATIN CAPITAL LETTER I WITH DOUBLE GRAVE\0" "LATIN CAPITAL LETTER I WITH GRAVE\0" "LATIN CAPITAL LETTER I WITH HOOK ABOVE\0" "LATIN CAPITAL LETTER I WITH INVERTED BREVE\0" "LATIN CAPITAL LETTER I WITH MACRON\0" "LATIN CAPITAL LETTER I WITH OGONEK\0" "LATIN CAPITAL LETTER I WITH STROKE\0" "LATIN CAPITAL LETTER I WITH TILDE\0" "LATIN CAPITAL LETTER I WITH TILDE BELOW\0" "LATIN CAPITAL LETTER INSULAR D\0" "LATIN CAPITAL LETTER INSULAR F\0" "LATIN CAPITAL LETTER INSULAR G\0" "LATIN CAPITAL LETTER INSULAR R\0" "LATIN CAPITAL LETTER INSULAR S\0" "LATIN CAPITAL LETTER INSULAR T\0" "LATIN CAPITAL LETTER IOTA\0" "LATIN CAPITAL LETTER IS\0" "LATIN CAPITAL LETTER J\0" "LATIN CAPITAL LETTER J WITH CIRCUMFLEX\0" "LATIN CAPITAL LETTER J WITH STROKE\0" "LATIN CAPITAL LETTER K\0" "LATIN CAPITAL LETTER K WITH ACUTE\0" "LATIN CAPITAL LETTER K WITH CARON\0" "LATIN CAPITAL LETTER K WITH CEDILLA\0" "LATIN CAPITAL LETTER K WITH DESCENDER\0" "LATIN CAPITAL LETTER K WITH DIAGONAL STROKE\0" "LATIN CAPITAL LETTER K WITH DOT BELOW\0" "LATIN CAPITAL LETTER K WITH HOOK\0" "LATIN CAPITAL LETTER K WITH LINE BELOW\0" "LATIN CAPITAL LETTER K WITH OBLIQUE STROKE\0" "LATIN CAPITAL LETTER K WITH STROKE\0" "LATIN CAPITAL LETTER K WITH STROKE AND DIAGONAL STROKE\0" "LATIN CAPITAL LETTER L\0" "LATIN CAPITAL LETTER L WITH ACUTE\0" "LATIN CAPITAL LETTER L WITH BAR\0" "LATIN CAPITAL LETTER L WITH CARON\0" "LATIN CAPITAL LETTER L WITH CEDILLA\0" "LATIN CAPITAL LETTER L WITH CIRCUMFLEX BELOW\0" "LATIN CAPITAL LETTER L WITH DOT BELOW\0" "LATIN CAPITAL LETTER L WITH DOT BELOW AND MACRON\0" "LATIN CAPITAL LETTER L WITH DOUBLE BAR\0" "LATIN CAPITAL LETTER L WITH HIGH STROKE\0" "LATIN CAPITAL LETTER L WITH LINE BELOW\0" "LATIN CAPITAL LETTER L WITH MIDDLE DOT\0" "LATIN CAPITAL LETTER L WITH MIDDLE TILDE\0" "LATIN CAPITAL LETTER L WITH SMALL LETTER J\0" "LATIN CAPITAL LETTER L WITH STROKE\0" "LATIN CAPITAL LETTER LJ\0" "LATIN CAPITAL LETTER M\0" "LATIN CAPITAL LETTER M WITH ACUTE\0" "LATIN CAPITAL LETTER M WITH DOT ABOVE\0" "LATIN CAPITAL LETTER M WITH DOT BELOW\0" "LATIN CAPITAL LETTER M WITH HOOK\0" "LATIN CAPITAL LETTER MIDDLE-WELSH LL\0" "LATIN CAPITAL LETTER MIDDLE-WELSH V\0" "LATIN CAPITAL LETTER N\0" "LATIN CAPITAL LETTER N WITH ACUTE\0" "LATIN CAPITAL LETTER N WITH CARON\0" "LATIN CAPITAL LETTER N WITH CEDILLA\0" "LATIN CAPITAL LETTER N WITH CIRCUMFLEX BELOW\0" "LATIN CAPITAL LETTER N WITH DESCENDER\0" "LATIN CAPITAL LETTER N WITH DOT ABOVE\0" "LATIN CAPITAL LETTER N WITH DOT BELOW\0" "LATIN CAPITAL LETTER N WITH GRAVE\0" "LATIN CAPITAL LETTER N WITH LEFT HOOK\0" "LATIN CAPITAL LETTER N WITH LINE BELOW\0" "LATIN CAPITAL LETTER N WITH LONG RIGHT LEG\0" "LATIN CAPITAL LETTER N WITH OBLIQUE STROKE\0" "LATIN CAPITAL LETTER N WITH SMALL LETTER J\0" "LATIN CAPITAL LETTER N WITH TILDE\0" "LATIN CAPITAL LETTER NJ\0" "LATIN CAPITAL LETTER O\0" "LATIN CAPITAL LETTER O WITH ACUTE\0" "LATIN CAPITAL LETTER O WITH BREVE\0" "LATIN CAPITAL LETTER O WITH CARON\0" "LATIN CAPITAL LETTER O WITH CIRCUMFLEX\0" "LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND ACUTE\0" "LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND DOT BELOW\0" "LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND GRAVE\0" "LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE\0" "LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND TILDE\0" "LATIN CAPITAL LETTER O WITH DIAERESIS\0" "LATIN CAPITAL LETTER O WITH DIAERESIS AND MACRON\0" "LATIN CAPITAL LETTER O WITH DOT ABOVE\0" "LATIN CAPITAL LETTER O WITH DOT ABOVE AND MACRON\0" "LATIN CAPITAL LETTER O WITH DOT BELOW\0" "LATIN CAPITAL LETTER O WITH DOUBLE ACUTE\0" "LATIN CAPITAL LETTER O WITH DOUBLE GRAVE\0" "LATIN CAPITAL LETTER O WITH GRAVE\0" "LATIN CAPITAL LETTER O WITH HOOK ABOVE\0" "LATIN CAPITAL LETTER O WITH HORN\0" "LATIN CAPITAL LETTER O WITH HORN AND ACUTE\0" "LATIN CAPITAL LETTER O WITH HORN AND DOT BELOW\0" "LATIN CAPITAL LETTER O WITH HORN AND GRAVE\0" "LATIN CAPITAL LETTER O WITH HORN AND HOOK ABOVE\0" "LATIN CAPITAL LETTER O WITH HORN AND TILDE\0" "LATIN CAPITAL LETTER O WITH INVERTED BREVE\0" "LATIN CAPITAL LETTER O WITH LONG STROKE OVERLAY\0" "LATIN CAPITAL LETTER O WITH LOOP\0" "LATIN CAPITAL LETTER O WITH MACRON\0" "LATIN CAPITAL LETTER O WITH MACRON AND ACUTE\0" "LATIN CAPITAL LETTER O WITH MACRON AND GRAVE\0" "LATIN CAPITAL LETTER O WITH MIDDLE TILDE\0" "LATIN CAPITAL LETTER O WITH OGONEK\0" "LATIN CAPITAL LETTER O WITH OGONEK AND MACRON\0" "LATIN CAPITAL LETTER O WITH STROKE\0" "LATIN CAPITAL LETTER O WITH STROKE AND ACUTE\0" "LATIN CAPITAL LETTER O WITH TILDE\0" "LATIN CAPITAL LETTER O WITH TILDE AND ACUTE\0" "LATIN CAPITAL LETTER O WITH TILDE AND DIAERESIS\0" "LATIN CAPITAL LETTER O WITH TILDE AND MACRON\0" "LATIN CAPITAL LETTER OI\0" "LATIN CAPITAL LETTER OO\0" "LATIN CAPITAL LETTER OPEN E\0" "LATIN CAPITAL LETTER OPEN O\0" "LATIN CAPITAL LETTER OU\0" "LATIN CAPITAL LETTER P\0" "LATIN CAPITAL LETTER P WITH ACUTE\0" "LATIN CAPITAL LETTER P WITH DOT ABOVE\0" "LATIN CAPITAL LETTER P WITH FLOURISH\0" "LATIN CAPITAL LETTER P WITH HOOK\0" "LATIN CAPITAL LETTER P WITH SQUIRREL TAIL\0" "LATIN CAPITAL LETTER P WITH STROKE\0" "LATIN CAPITAL LETTER P WITH STROKE THROUGH DESCENDER\0" "LATIN CAPITAL LETTER Q\0" "LATIN CAPITAL LETTER Q WITH DIAGONAL STROKE\0" "LATIN CAPITAL LETTER Q WITH STROKE THROUGH DESCENDER\0" "LATIN CAPITAL LETTER R\0" "LATIN CAPITAL LETTER R ROTUNDA\0" "LATIN CAPITAL LETTER R WITH ACUTE\0" "LATIN CAPITAL LETTER R WITH CARON\0" "LATIN CAPITAL LETTER R WITH CEDILLA\0" "LATIN CAPITAL LETTER R WITH DOT ABOVE\0" "LATIN CAPITAL LETTER R WITH DOT BELOW\0" "LATIN CAPITAL LETTER R WITH DOT BELOW AND MACRON\0" "LATIN CAPITAL LETTER R WITH DOUBLE GRAVE\0" "LATIN CAPITAL LETTER R WITH INVERTED BREVE\0" "LATIN CAPITAL LETTER R WITH LINE BELOW\0" "LATIN CAPITAL LETTER R WITH OBLIQUE STROKE\0" "LATIN CAPITAL LETTER R WITH STROKE\0" "LATIN CAPITAL LETTER R WITH TAIL\0" "LATIN CAPITAL LETTER REVERSED C WITH DOT\0" "LATIN CAPITAL LETTER REVERSED E\0" "LATIN CAPITAL LETTER RUM ROTUNDA\0" "LATIN CAPITAL LETTER S\0" "LATIN CAPITAL LETTER S WITH ACUTE\0" "LATIN CAPITAL LETTER S WITH ACUTE AND DOT ABOVE\0" "LATIN CAPITAL LETTER S WITH CARON\0" "LATIN CAPITAL LETTER S WITH CARON AND DOT ABOVE\0" "LATIN CAPITAL LETTER S WITH CEDILLA\0" "LATIN CAPITAL LETTER S WITH CIRCUMFLEX\0" "LATIN CAPITAL LETTER S WITH COMMA BELOW\0" "LATIN CAPITAL LETTER S WITH DOT ABOVE\0" "LATIN CAPITAL LETTER S WITH DOT BELOW\0" "LATIN CAPITAL LETTER S WITH DOT BELOW AND DOT ABOVE\0" "LATIN CAPITAL LETTER S WITH OBLIQUE STROKE\0" "LATIN CAPITAL LETTER S WITH SWASH TAIL\0" "LATIN CAPITAL LETTER SALTILLO\0" "LATIN CAPITAL LETTER SCHWA\0" "LATIN CAPITAL LETTER SHARP S\0" "LATIN CAPITAL LETTER SMALL Q WITH HOOK TAIL\0" "LATIN CAPITAL LETTER T\0" "LATIN CAPITAL LETTER T WITH CARON\0" "LATIN CAPITAL LETTER T WITH CEDILLA\0" "LATIN CAPITAL LETTER T WITH CIRCUMFLEX BELOW\0" "LATIN CAPITAL LETTER T WITH COMMA BELOW\0" "LATIN CAPITAL LETTER T WITH DIAGONAL STROKE\0" "LATIN CAPITAL LETTER T WITH DOT ABOVE\0" "LATIN CAPITAL LETTER T WITH DOT BELOW\0" "LATIN CAPITAL LETTER T WITH HOOK\0" "LATIN CAPITAL LETTER T WITH LINE BELOW\0" "LATIN CAPITAL LETTER T WITH RETROFLEX HOOK\0" "LATIN CAPITAL LETTER T WITH STROKE\0" "LATIN CAPITAL LETTER THORN\0" "LATIN CAPITAL LETTER THORN WITH STROKE\0" "LATIN CAPITAL LETTER THORN WITH STROKE THROUGH DESCENDER\0" "LATIN CAPITAL LETTER TONE FIVE\0" "LATIN CAPITAL LETTER TONE SIX\0" "LATIN CAPITAL LETTER TONE TWO\0" "LATIN CAPITAL LETTER TRESILLO\0" "LATIN CAPITAL LETTER TURNED A\0" "LATIN CAPITAL LETTER TURNED ALPHA\0" "LATIN CAPITAL LETTER TURNED H\0" "LATIN CAPITAL LETTER TURNED INSULAR G\0" "LATIN CAPITAL LETTER TURNED L\0" "LATIN CAPITAL LETTER TURNED M\0" "LATIN CAPITAL LETTER TURNED V\0" "LATIN CAPITAL LETTER TZ\0" "LATIN CAPITAL LETTER U\0" "LATIN CAPITAL LETTER U BAR\0" "LATIN CAPITAL LETTER U WITH ACUTE\0" "LATIN CAPITAL LETTER U WITH BREVE\0" "LATIN CAPITAL LETTER U WITH CARON\0" "LATIN CAPITAL LETTER U WITH CIRCUMFLEX\0" "LATIN CAPITAL LETTER U WITH CIRCUMFLEX BELOW\0" "LATIN CAPITAL LETTER U WITH DIAERESIS\0" "LATIN CAPITAL LETTER U WITH DIAERESIS AND ACUTE\0" "LATIN CAPITAL LETTER U WITH DIAERESIS AND CARON\0" "LATIN CAPITAL LETTER U WITH DIAERESIS AND GRAVE\0" "LATIN CAPITAL LETTER U WITH DIAERESIS AND MACRON\0" "LATIN CAPITAL LETTER U WITH DIAERESIS BELOW\0" "LATIN CAPITAL LETTER U WITH DOT BELOW\0" "LATIN CAPITAL LETTER U WITH DOUBLE ACUTE\0" "LATIN CAPITAL LETTER U WITH DOUBLE GRAVE\0" "LATIN CAPITAL LETTER U WITH GRAVE\0" "LATIN CAPITAL LETTER U WITH HOOK ABOVE\0" "LATIN CAPITAL LETTER U WITH HORN\0" "LATIN CAPITAL LETTER U WITH HORN AND ACUTE\0" "LATIN CAPITAL LETTER U WITH HORN AND DOT BELOW\0" "LATIN CAPITAL LETTER U WITH HORN AND GRAVE\0" "LATIN CAPITAL LETTER U WITH HORN AND HOOK ABOVE\0" "LATIN CAPITAL LETTER U WITH HORN AND TILDE\0" "LATIN CAPITAL LETTER U WITH INVERTED BREVE\0" "LATIN CAPITAL LETTER U WITH MACRON\0" "LATIN CAPITAL LETTER U WITH MACRON AND DIAERESIS\0" "LATIN CAPITAL LETTER U WITH OGONEK\0" "LATIN CAPITAL LETTER U WITH RING ABOVE\0" "LATIN CAPITAL LETTER U WITH TILDE\0" "LATIN CAPITAL LETTER U WITH TILDE AND ACUTE\0" "LATIN CAPITAL LETTER U WITH TILDE BELOW\0" "LATIN CAPITAL LETTER UPSILON\0" "LATIN CAPITAL LETTER V\0" "LATIN CAPITAL LETTER V WITH DIAGONAL STROKE\0" "LATIN CAPITAL LETTER V WITH DOT BELOW\0" "LATIN CAPITAL LETTER V WITH HOOK\0" "LATIN CAPITAL LETTER V WITH TILDE\0" "LATIN CAPITAL LETTER VEND\0" "LATIN CAPITAL LETTER VISIGOTHIC Z\0" "LATIN CAPITAL LETTER VY\0" "LATIN CAPITAL LETTER W\0" "LATIN CAPITAL LETTER W WITH ACUTE\0" "LATIN CAPITAL LETTER W WITH CIRCUMFLEX\0" "LATIN CAPITAL LETTER W WITH DIAERESIS\0" "LATIN CAPITAL LETTER W WITH DOT ABOVE\0" "LATIN CAPITAL LETTER W WITH DOT BELOW\0" "LATIN CAPITAL LETTER W WITH GRAVE\0" "LATIN CAPITAL LETTER W WITH HOOK\0" "LATIN CAPITAL LETTER WYNN\0" "LATIN CAPITAL LETTER X\0" "LATIN CAPITAL LETTER X WITH DIAERESIS\0" "LATIN CAPITAL LETTER X WITH DOT ABOVE\0" "LATIN CAPITAL LETTER Y\0" "LATIN CAPITAL LETTER Y WITH ACUTE\0" "LATIN CAPITAL LETTER Y WITH CIRCUMFLEX\0" "LATIN CAPITAL LETTER Y WITH DIAERESIS\0" "LATIN CAPITAL LETTER Y WITH DOT ABOVE\0" "LATIN CAPITAL LETTER Y WITH DOT BELOW\0" "LATIN CAPITAL LETTER Y WITH GRAVE\0" "LATIN CAPITAL LETTER Y WITH HOOK\0" "LATIN CAPITAL LETTER Y WITH HOOK ABOVE\0" "LATIN CAPITAL LETTER Y WITH LOOP\0" "LATIN CAPITAL LETTER Y WITH MACRON\0" "LATIN CAPITAL LETTER Y WITH STROKE\0" "LATIN CAPITAL LETTER Y WITH TILDE\0" "LATIN CAPITAL LETTER YOGH\0" "LATIN CAPITAL LETTER Z\0" "LATIN CAPITAL LETTER Z WITH ACUTE\0" "LATIN CAPITAL LETTER Z WITH CARON\0" "LATIN CAPITAL LETTER Z WITH CIRCUMFLEX\0" "LATIN CAPITAL LETTER Z WITH DESCENDER\0" "LATIN CAPITAL LETTER Z WITH DOT ABOVE\0" "LATIN CAPITAL LETTER Z WITH DOT BELOW\0" "LATIN CAPITAL LETTER Z WITH HOOK\0" "LATIN CAPITAL LETTER Z WITH LINE BELOW\0" "LATIN CAPITAL LETTER Z WITH STROKE\0" "LATIN CAPITAL LETTER Z WITH SWASH TAIL\0" "LATIN CAPITAL LIGATURE IJ\0" "LATIN CAPITAL LIGATURE OE\0" "LATIN CROSS\0" "LATIN EPIGRAPHIC LETTER ARCHAIC M\0" "LATIN EPIGRAPHIC LETTER I LONGA\0" "LATIN EPIGRAPHIC LETTER INVERTED M\0" "LATIN EPIGRAPHIC LETTER REVERSED F\0" "LATIN EPIGRAPHIC LETTER REVERSED P\0" "LATIN LETTER AIN\0" "LATIN LETTER ALVEOLAR CLICK\0" "LATIN LETTER BIDENTAL PERCUSSIVE\0" "LATIN LETTER BILABIAL CLICK\0" "LATIN LETTER BILABIAL PERCUSSIVE\0" "LATIN LETTER DENTAL CLICK\0" "LATIN LETTER GLOTTAL STOP\0" "LATIN LETTER GLOTTAL STOP WITH STROKE\0" "LATIN LETTER INVERTED GLOTTAL STOP\0" "LATIN LETTER INVERTED GLOTTAL STOP WITH STROKE\0" "LATIN LETTER LATERAL CLICK\0" "LATIN LETTER PHARYNGEAL VOICED FRICATIVE\0" "LATIN LETTER RETROFLEX CLICK\0" "LATIN LETTER REVERSED ESH LOOP\0" "LATIN LETTER REVERSED GLOTTAL STOP WITH STROKE\0" "LATIN LETTER SMALL CAPITAL A\0" "LATIN LETTER SMALL CAPITAL AE\0" "LATIN LETTER SMALL CAPITAL B\0" "LATIN LETTER SMALL CAPITAL BARRED B\0" "LATIN LETTER SMALL CAPITAL C\0" "LATIN LETTER SMALL CAPITAL D\0" "LATIN LETTER SMALL CAPITAL E\0" "LATIN LETTER SMALL CAPITAL ETH\0" "LATIN LETTER SMALL CAPITAL EZH\0" "LATIN LETTER SMALL CAPITAL F\0" "LATIN LETTER SMALL CAPITAL G\0" "LATIN LETTER SMALL CAPITAL G WITH HOOK\0" "LATIN LETTER SMALL CAPITAL H\0" "LATIN LETTER SMALL CAPITAL I\0" "LATIN LETTER SMALL CAPITAL INVERTED R\0" "LATIN LETTER SMALL CAPITAL J\0" "LATIN LETTER SMALL CAPITAL K\0" "LATIN LETTER SMALL CAPITAL L\0" "LATIN LETTER SMALL CAPITAL L WITH STROKE\0" "LATIN LETTER SMALL CAPITAL M\0" "LATIN LETTER SMALL CAPITAL N\0" "LATIN LETTER SMALL CAPITAL O\0" "LATIN LETTER SMALL CAPITAL OE\0" "LATIN LETTER SMALL CAPITAL OPEN O\0" "LATIN LETTER SMALL CAPITAL OU\0" "LATIN LETTER SMALL CAPITAL P\0" "LATIN LETTER SMALL CAPITAL R\0" "LATIN LETTER SMALL CAPITAL REVERSED N\0" "LATIN LETTER SMALL CAPITAL REVERSED R\0" "LATIN LETTER SMALL CAPITAL RUM\0" "LATIN LETTER SMALL CAPITAL S\0" "LATIN LETTER SMALL CAPITAL T\0" "LATIN LETTER SMALL CAPITAL TURNED E\0" "LATIN LETTER SMALL CAPITAL TURNED M\0" "LATIN LETTER SMALL CAPITAL TURNED R\0" "LATIN LETTER SMALL CAPITAL U\0" "LATIN LETTER SMALL CAPITAL V\0" "LATIN LETTER SMALL CAPITAL W\0" "LATIN LETTER SMALL CAPITAL Y\0" "LATIN LETTER SMALL CAPITAL Z\0" "LATIN LETTER STRETCHED C\0" "LATIN LETTER TWO WITH STROKE\0" "LATIN LETTER VOICED LARYNGEAL SPIRANT\0" "LATIN LETTER WYNN\0" "LATIN LETTER YR\0" "LATIN SMALL CAPITAL LETTER I WITH STROKE\0" "LATIN SMALL CAPITAL LETTER U WITH STROKE\0" "LATIN SMALL LETTER A\0" "LATIN SMALL LETTER A WITH ACUTE\0" "LATIN SMALL LETTER A WITH BREVE\0" "LATIN SMALL LETTER A WITH BREVE AND ACUTE\0" "LATIN SMALL LETTER A WITH BREVE AND DOT BELOW\0" "LATIN SMALL LETTER A WITH BREVE AND GRAVE\0" "LATIN SMALL LETTER A WITH BREVE AND HOOK ABOVE\0" "LATIN SMALL LETTER A WITH BREVE AND TILDE\0" "LATIN SMALL LETTER A WITH CARON\0" "LATIN SMALL LETTER A WITH CIRCUMFLEX\0" "LATIN SMALL LETTER A WITH CIRCUMFLEX AND ACUTE\0" "LATIN SMALL LETTER A WITH CIRCUMFLEX AND DOT BELOW\0" "LATIN SMALL LETTER A WITH CIRCUMFLEX AND GRAVE\0" "LATIN SMALL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE\0" "LATIN SMALL LETTER A WITH CIRCUMFLEX AND TILDE\0" "LATIN SMALL LETTER A WITH DIAERESIS\0" "LATIN SMALL LETTER A WITH DIAERESIS AND MACRON\0" "LATIN SMALL LETTER A WITH DOT ABOVE\0" "LATIN SMALL LETTER A WITH DOT ABOVE AND MACRON\0" "LATIN SMALL LETTER A WITH DOT BELOW\0" "LATIN SMALL LETTER A WITH DOUBLE GRAVE\0" "LATIN SMALL LETTER A WITH GRAVE\0" "LATIN SMALL LETTER A WITH HOOK ABOVE\0" "LATIN SMALL LETTER A WITH INVERTED BREVE\0" "LATIN SMALL LETTER A WITH MACRON\0" "LATIN SMALL LETTER A WITH OGONEK\0" "LATIN SMALL LETTER A WITH RETROFLEX HOOK\0" "LATIN SMALL LETTER A WITH RIGHT HALF RING\0" "LATIN SMALL LETTER A WITH RING ABOVE\0" "LATIN SMALL LETTER A WITH RING ABOVE AND ACUTE\0" "LATIN SMALL LETTER A WITH RING BELOW\0" "LATIN SMALL LETTER A WITH STROKE\0" "LATIN SMALL LETTER A WITH TILDE\0" "LATIN SMALL LETTER AA\0" "LATIN SMALL LETTER AE\0" "LATIN SMALL LETTER AE WITH ACUTE\0" "LATIN SMALL LETTER AE WITH MACRON\0" "LATIN SMALL LETTER ALPHA\0" "LATIN SMALL LETTER ALPHA WITH RETROFLEX HOOK\0" "LATIN SMALL LETTER AO\0" "LATIN SMALL LETTER AU\0" "LATIN SMALL LETTER AV\0" "LATIN SMALL LETTER AV WITH HORIZONTAL BAR\0" "LATIN SMALL LETTER AY\0" "LATIN SMALL LETTER B\0" "LATIN SMALL LETTER B WITH DOT ABOVE\0" "LATIN SMALL LETTER B WITH DOT BELOW\0" "LATIN SMALL LETTER B WITH HOOK\0" "LATIN SMALL LETTER B WITH LINE BELOW\0" "LATIN SMALL LETTER B WITH MIDDLE TILDE\0" "LATIN SMALL LETTER B WITH PALATAL HOOK\0" "LATIN SMALL LETTER B WITH STROKE\0" "LATIN SMALL LETTER B WITH TOPBAR\0" "LATIN SMALL LETTER BARRED O\0" "LATIN SMALL LETTER BOTTOM HALF O\0" "LATIN SMALL LETTER BROKEN L\0" "LATIN SMALL LETTER C\0" "LATIN SMALL LETTER C WITH ACUTE\0" "LATIN SMALL LETTER C WITH CARON\0" "LATIN SMALL LETTER C WITH CEDILLA\0" "LATIN SMALL LETTER C WITH CEDILLA AND ACUTE\0" "LATIN SMALL LETTER C WITH CIRCUMFLEX\0" "LATIN SMALL LETTER C WITH CURL\0" "LATIN SMALL LETTER C WITH DOT ABOVE\0" "LATIN SMALL LETTER C WITH HOOK\0" "LATIN SMALL LETTER C WITH STROKE\0" "LATIN SMALL LETTER CLOSED OMEGA\0" "LATIN SMALL LETTER CLOSED OPEN E\0" "LATIN SMALL LETTER CLOSED REVERSED OPEN E\0" "LATIN SMALL LETTER CON\0" "LATIN SMALL LETTER CUATRILLO\0" "LATIN SMALL LETTER CUATRILLO WITH COMMA\0" "LATIN SMALL LETTER D\0" "LATIN SMALL LETTER D WITH CARON\0" "LATIN SMALL LETTER D WITH CEDILLA\0" "LATIN SMALL LETTER D WITH CIRCUMFLEX BELOW\0" "LATIN SMALL LETTER D WITH CURL\0" "LATIN SMALL LETTER D WITH DOT ABOVE\0" "LATIN SMALL LETTER D WITH DOT BELOW\0" "LATIN SMALL LETTER D WITH HOOK\0" "LATIN SMALL LETTER D WITH HOOK AND TAIL\0" "LATIN SMALL LETTER D WITH LINE BELOW\0" "LATIN SMALL LETTER D WITH MIDDLE TILDE\0" "LATIN SMALL LETTER D WITH PALATAL HOOK\0" "LATIN SMALL LETTER D WITH STROKE\0" "LATIN SMALL LETTER D WITH TAIL\0" "LATIN SMALL LETTER D WITH TOPBAR\0" "LATIN SMALL LETTER DB DIGRAPH\0" "LATIN SMALL LETTER DELTA\0" "LATIN SMALL LETTER DEZH DIGRAPH\0" "LATIN SMALL LETTER DOTLESS I\0" "LATIN SMALL LETTER DOTLESS J\0" "LATIN SMALL LETTER DOTLESS J WITH STROKE\0" "LATIN SMALL LETTER DOTLESS J WITH STROKE AND HOOK\0" "LATIN SMALL LETTER DUM\0" "LATIN SMALL LETTER DZ\0" "LATIN SMALL LETTER DZ DIGRAPH\0" "LATIN SMALL LETTER DZ DIGRAPH WITH CURL\0" "LATIN SMALL LETTER DZ WITH CARON\0" "LATIN SMALL LETTER E\0" "LATIN SMALL LETTER E WITH ACUTE\0" "LATIN SMALL LETTER E WITH BREVE\0" "LATIN SMALL LETTER E WITH CARON\0" "LATIN SMALL LETTER E WITH CEDILLA\0" "LATIN SMALL LETTER E WITH CEDILLA AND BREVE\0" "LATIN SMALL LETTER E WITH CIRCUMFLEX\0" "LATIN SMALL LETTER E WITH CIRCUMFLEX AND ACUTE\0" "LATIN SMALL LETTER E WITH CIRCUMFLEX AND DOT BELOW\0" "LATIN SMALL LETTER E WITH CIRCUMFLEX AND GRAVE\0" "LATIN SMALL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE\0" "LATIN SMALL LETTER E WITH CIRCUMFLEX AND TILDE\0" "LATIN SMALL LETTER E WITH CIRCUMFLEX BELOW\0" "LATIN SMALL LETTER E WITH DIAERESIS\0" "LATIN SMALL LETTER E WITH DOT ABOVE\0" "LATIN SMALL LETTER E WITH DOT BELOW\0" "LATIN SMALL LETTER E WITH DOUBLE GRAVE\0" "LATIN SMALL LETTER E WITH GRAVE\0" "LATIN SMALL LETTER E WITH HOOK ABOVE\0" "LATIN SMALL LETTER E WITH INVERTED BREVE\0" "LATIN SMALL LETTER E WITH MACRON\0" "LATIN SMALL LETTER E WITH MACRON AND ACUTE\0" "LATIN SMALL LETTER E WITH MACRON AND GRAVE\0" "LATIN SMALL LETTER E WITH NOTCH\0" "LATIN SMALL LETTER E WITH OGONEK\0" "LATIN SMALL LETTER E WITH RETROFLEX HOOK\0" "LATIN SMALL LETTER E WITH STROKE\0" "LATIN SMALL LETTER E WITH TILDE\0" "LATIN SMALL LETTER E WITH TILDE BELOW\0" "LATIN SMALL LETTER EGYPTOLOGICAL AIN\0" "LATIN SMALL LETTER EGYPTOLOGICAL ALEF\0" "LATIN SMALL LETTER ENG\0" "LATIN SMALL LETTER ESH\0" "LATIN SMALL LETTER ESH WITH CURL\0" "LATIN SMALL LETTER ESH WITH PALATAL HOOK\0" "LATIN SMALL LETTER ESH WITH RETROFLEX HOOK\0" "LATIN SMALL LETTER ET\0" "LATIN SMALL LETTER ETH\0" "LATIN SMALL LETTER EZH\0" "LATIN SMALL LETTER EZH REVERSED\0" "LATIN SMALL LETTER EZH WITH CARON\0" "LATIN SMALL LETTER EZH WITH CURL\0" "LATIN SMALL LETTER EZH WITH RETROFLEX HOOK\0" "LATIN SMALL LETTER EZH WITH TAIL\0" "LATIN SMALL LETTER F\0" "LATIN SMALL LETTER F WITH DOT ABOVE\0" "LATIN SMALL LETTER F WITH HOOK\0" "LATIN SMALL LETTER F WITH MIDDLE TILDE\0" "LATIN SMALL LETTER F WITH PALATAL HOOK\0" "LATIN SMALL LETTER FENG DIGRAPH\0" "LATIN SMALL LETTER G\0" "LATIN SMALL LETTER G WITH ACUTE\0" "LATIN SMALL LETTER G WITH BREVE\0" "LATIN SMALL LETTER G WITH CARON\0" "LATIN SMALL LETTER G WITH CEDILLA\0" "LATIN SMALL LETTER G WITH CIRCUMFLEX\0" "LATIN SMALL LETTER G WITH DOT ABOVE\0" "LATIN SMALL LETTER G WITH HOOK\0" "LATIN SMALL LETTER G WITH MACRON\0" "LATIN SMALL LETTER G WITH OBLIQUE STROKE\0" "LATIN SMALL LETTER G WITH PALATAL HOOK\0" "LATIN SMALL LETTER G WITH STROKE\0" "LATIN SMALL LETTER GAMMA\0" "LATIN SMALL LETTER GLOTTAL STOP\0" "LATIN SMALL LETTER H\0" "LATIN SMALL LETTER H WITH BREVE BELOW\0" "LATIN SMALL LETTER H WITH CARON\0" "LATIN SMALL LETTER H WITH CEDILLA\0" "LATIN SMALL LETTER H WITH CIRCUMFLEX\0" "LATIN SMALL LETTER H WITH DESCENDER\0" "LATIN SMALL LETTER H WITH DIAERESIS\0" "LATIN SMALL LETTER H WITH DOT ABOVE\0" "LATIN SMALL LETTER H WITH DOT BELOW\0" "LATIN SMALL LETTER H WITH HOOK\0" "LATIN SMALL LETTER H WITH LINE BELOW\0" "LATIN SMALL LETTER H WITH STROKE\0" "LATIN SMALL LETTER HALF H\0" "LATIN SMALL LETTER HENG\0" "LATIN SMALL LETTER HENG WITH HOOK\0" "LATIN SMALL LETTER HV\0" "LATIN SMALL LETTER I\0" "LATIN SMALL LETTER I WITH ACUTE\0" "LATIN SMALL LETTER I WITH BREVE\0" "LATIN SMALL LETTER I WITH CARON\0" "LATIN SMALL LETTER I WITH CIRCUMFLEX\0" "LATIN SMALL LETTER I WITH DIAERESIS\0" "LATIN SMALL LETTER I WITH DIAERESIS AND ACUTE\0" "LATIN SMALL LETTER I WITH DOT BELOW\0" "LATIN SMALL LETTER I WITH DOUBLE GRAVE\0" "LATIN SMALL LETTER I WITH GRAVE\0" "LATIN SMALL LETTER I WITH HOOK ABOVE\0" "LATIN SMALL LETTER I WITH INVERTED BREVE\0" "LATIN SMALL LETTER I WITH MACRON\0" "LATIN SMALL LETTER I WITH OGONEK\0" "LATIN SMALL LETTER I WITH RETROFLEX HOOK\0" "LATIN SMALL LETTER I WITH STROKE\0" "LATIN SMALL LETTER I WITH TILDE\0" "LATIN SMALL LETTER I WITH TILDE BELOW\0" "LATIN SMALL LETTER INSULAR D\0" "LATIN SMALL LETTER INSULAR F\0" "LATIN SMALL LETTER INSULAR G\0" "LATIN SMALL LETTER INSULAR R\0" "LATIN SMALL LETTER INSULAR S\0" "LATIN SMALL LETTER INSULAR T\0" "LATIN SMALL LETTER IOTA\0" "LATIN SMALL LETTER IOTA WITH STROKE\0" "LATIN SMALL LETTER IS\0" "LATIN SMALL LETTER J\0" "LATIN SMALL LETTER J WITH CARON\0" "LATIN SMALL LETTER J WITH CIRCUMFLEX\0" "LATIN SMALL LETTER J WITH CROSSED-TAIL\0" "LATIN SMALL LETTER J WITH STROKE\0" "LATIN SMALL LETTER K\0" "LATIN SMALL LETTER K WITH ACUTE\0" "LATIN SMALL LETTER K WITH CARON\0" "LATIN SMALL LETTER K WITH CEDILLA\0" "LATIN SMALL LETTER K WITH DESCENDER\0" "LATIN SMALL LETTER K WITH DIAGONAL STROKE\0" "LATIN SMALL LETTER K WITH DOT BELOW\0" "LATIN SMALL LETTER K WITH HOOK\0" "LATIN SMALL LETTER K WITH LINE BELOW\0" "LATIN SMALL LETTER K WITH OBLIQUE STROKE\0" "LATIN SMALL LETTER K WITH PALATAL HOOK\0" "LATIN SMALL LETTER K WITH STROKE\0" "LATIN SMALL LETTER K WITH STROKE AND DIAGONAL STROKE\0" "LATIN SMALL LETTER KRA\0" "LATIN SMALL LETTER L\0" "LATIN SMALL LETTER L WITH ACUTE\0" "LATIN SMALL LETTER L WITH BAR\0" "LATIN SMALL LETTER L WITH BELT\0" "LATIN SMALL LETTER L WITH CARON\0" "LATIN SMALL LETTER L WITH CEDILLA\0" "LATIN SMALL LETTER L WITH CIRCUMFLEX BELOW\0" "LATIN SMALL LETTER L WITH CURL\0" "LATIN SMALL LETTER L WITH DOT BELOW\0" "LATIN SMALL LETTER L WITH DOT BELOW AND MACRON\0" "LATIN SMALL LETTER L WITH DOUBLE BAR\0" "LATIN SMALL LETTER L WITH HIGH STROKE\0" "LATIN SMALL LETTER L WITH LINE BELOW\0" "LATIN SMALL LETTER L WITH MIDDLE DOT\0" "LATIN SMALL LETTER L WITH MIDDLE TILDE\0" "LATIN SMALL LETTER L WITH PALATAL HOOK\0" "LATIN SMALL LETTER L WITH RETROFLEX HOOK\0" "LATIN SMALL LETTER L WITH RETROFLEX HOOK AND BELT\0" "LATIN SMALL LETTER L WITH STROKE\0" "LATIN SMALL LETTER LAMBDA WITH STROKE\0" "LATIN SMALL LETTER LEZH\0" "LATIN SMALL LETTER LJ\0" "LATIN SMALL LETTER LONG S\0" "LATIN SMALL LETTER LONG S WITH DIAGONAL STROKE\0" "LATIN SMALL LETTER LONG S WITH DOT ABOVE\0" "LATIN SMALL LETTER LONG S WITH HIGH STROKE\0" "LATIN SMALL LETTER LS DIGRAPH\0" "LATIN SMALL LETTER LUM\0" "LATIN SMALL LETTER LZ DIGRAPH\0" "LATIN SMALL LETTER M\0" "LATIN SMALL LETTER M WITH ACUTE\0" "LATIN SMALL LETTER M WITH DOT ABOVE\0" "LATIN SMALL LETTER M WITH DOT BELOW\0" "LATIN SMALL LETTER M WITH HOOK\0" "LATIN SMALL LETTER M WITH MIDDLE TILDE\0" "LATIN SMALL LETTER M WITH PALATAL HOOK\0" "LATIN SMALL LETTER MIDDLE-WELSH LL\0" "LATIN SMALL LETTER MIDDLE-WELSH V\0" "LATIN SMALL LETTER MUM\0" "LATIN SMALL LETTER N\0" "LATIN SMALL LETTER N PRECEDED BY APOSTROPHE\0" "LATIN SMALL LETTER N WITH ACUTE\0" "LATIN SMALL LETTER N WITH CARON\0" "LATIN SMALL LETTER N WITH CEDILLA\0" "LATIN SMALL LETTER N WITH CIRCUMFLEX BELOW\0" "LATIN SMALL LETTER N WITH CURL\0" "LATIN SMALL LETTER N WITH DESCENDER\0" "LATIN SMALL LETTER N WITH DOT ABOVE\0" "LATIN SMALL LETTER N WITH DOT BELOW\0" "LATIN SMALL LETTER N WITH GRAVE\0" "LATIN SMALL LETTER N WITH LEFT HOOK\0" "LATIN SMALL LETTER N WITH LINE BELOW\0" "LATIN SMALL LETTER N WITH LONG RIGHT LEG\0" "LATIN SMALL LETTER N WITH MIDDLE TILDE\0" "LATIN SMALL LETTER N WITH OBLIQUE STROKE\0" "LATIN SMALL LETTER N WITH PALATAL HOOK\0" "LATIN SMALL LETTER N WITH RETROFLEX HOOK\0" "LATIN SMALL LETTER N WITH TILDE\0" "LATIN SMALL LETTER NJ\0" "LATIN SMALL LETTER NUM\0" "LATIN SMALL LETTER O\0" "LATIN SMALL LETTER O WITH ACUTE\0" "LATIN SMALL LETTER O WITH BREVE\0" "LATIN SMALL LETTER O WITH CARON\0" "LATIN SMALL LETTER O WITH CIRCUMFLEX\0" "LATIN SMALL LETTER O WITH CIRCUMFLEX AND ACUTE\0" "LATIN SMALL LETTER O WITH CIRCUMFLEX AND DOT BELOW\0" "LATIN SMALL LETTER O WITH CIRCUMFLEX AND GRAVE\0" "LATIN SMALL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE\0" "LATIN SMALL LETTER O WITH CIRCUMFLEX AND TILDE\0" "LATIN SMALL LETTER O WITH DIAERESIS\0" "LATIN SMALL LETTER O WITH DIAERESIS AND MACRON\0" "LATIN SMALL LETTER O WITH DOT ABOVE\0" "LATIN SMALL LETTER O WITH DOT ABOVE AND MACRON\0" "LATIN SMALL LETTER O WITH DOT BELOW\0" "LATIN SMALL LETTER O WITH DOUBLE ACUTE\0" "LATIN SMALL LETTER O WITH DOUBLE GRAVE\0" "LATIN SMALL LETTER O WITH GRAVE\0" "LATIN SMALL LETTER O WITH HOOK ABOVE\0" "LATIN SMALL LETTER O WITH HORN\0" "LATIN SMALL LETTER O WITH HORN AND ACUTE\0" "LATIN SMALL LETTER O WITH HORN AND DOT BELOW\0" "LATIN SMALL LETTER O WITH HORN AND GRAVE\0" "LATIN SMALL LETTER O WITH HORN AND HOOK ABOVE\0" "LATIN SMALL LETTER O WITH HORN AND TILDE\0" "LATIN SMALL LETTER O WITH INVERTED BREVE\0" "LATIN SMALL LETTER O WITH LONG STROKE OVERLAY\0" "LATIN SMALL LETTER O WITH LOOP\0" "LATIN SMALL LETTER O WITH LOW RING INSIDE\0" "LATIN SMALL LETTER O WITH MACRON\0" "LATIN SMALL LETTER O WITH MACRON AND ACUTE\0" "LATIN SMALL LETTER O WITH MACRON AND GRAVE\0" "LATIN SMALL LETTER O WITH OGONEK\0" "LATIN SMALL LETTER O WITH OGONEK AND MACRON\0" "LATIN SMALL LETTER O WITH STROKE\0" "LATIN SMALL LETTER O WITH STROKE AND ACUTE\0" "LATIN SMALL LETTER O WITH TILDE\0" "LATIN SMALL LETTER O WITH TILDE AND ACUTE\0" "LATIN SMALL LETTER O WITH TILDE AND DIAERESIS\0" "LATIN SMALL LETTER O WITH TILDE AND MACRON\0" "LATIN SMALL LETTER OI\0" "LATIN SMALL LETTER OO\0" "LATIN SMALL LETTER OPEN E\0" "LATIN SMALL LETTER OPEN E WITH RETROFLEX HOOK\0" "LATIN SMALL LETTER OPEN O\0" "LATIN SMALL LETTER OPEN O WITH RETROFLEX HOOK\0" "LATIN SMALL LETTER OU\0" "LATIN SMALL LETTER P\0" "LATIN SMALL LETTER P WITH ACUTE\0" "LATIN SMALL LETTER P WITH DOT ABOVE\0" "LATIN SMALL LETTER P WITH FLOURISH\0" "LATIN SMALL LETTER P WITH HOOK\0" "LATIN SMALL LETTER P WITH MIDDLE TILDE\0" "LATIN SMALL LETTER P WITH PALATAL HOOK\0" "LATIN SMALL LETTER P WITH SQUIRREL TAIL\0" "LATIN SMALL LETTER P WITH STROKE\0" "LATIN SMALL LETTER P WITH STROKE THROUGH DESCENDER\0" "LATIN SMALL LETTER PHI\0" "LATIN SMALL LETTER Q\0" "LATIN SMALL LETTER Q WITH DIAGONAL STROKE\0" "LATIN SMALL LETTER Q WITH HOOK\0" "LATIN SMALL LETTER Q WITH HOOK TAIL\0" "LATIN SMALL LETTER Q WITH STROKE THROUGH DESCENDER\0" "LATIN SMALL LETTER QP DIGRAPH\0" "LATIN SMALL LETTER R\0" "LATIN SMALL LETTER R ROTUNDA\0" "LATIN SMALL LETTER R WITH ACUTE\0" "LATIN SMALL LETTER R WITH CARON\0" "LATIN SMALL LETTER R WITH CEDILLA\0" "LATIN SMALL LETTER R WITH DOT ABOVE\0" "LATIN SMALL LETTER R WITH DOT BELOW\0" "LATIN SMALL LETTER R WITH DOT BELOW AND MACRON\0" "LATIN SMALL LETTER R WITH DOUBLE GRAVE\0" "LATIN SMALL LETTER R WITH FISHHOOK\0" "LATIN SMALL LETTER R WITH FISHHOOK AND MIDDLE TILDE\0" "LATIN SMALL LETTER R WITH INVERTED BREVE\0" "LATIN SMALL LETTER R WITH LINE BELOW\0" "LATIN SMALL LETTER R WITH LONG LEG\0" "LATIN SMALL LETTER R WITH MIDDLE TILDE\0" "LATIN SMALL LETTER R WITH OBLIQUE STROKE\0" "LATIN SMALL LETTER R WITH PALATAL HOOK\0" "LATIN SMALL LETTER R WITH STROKE\0" "LATIN SMALL LETTER R WITH TAIL\0" "LATIN SMALL LETTER RAMS HORN\0" "LATIN SMALL LETTER REVERSED C\0" "LATIN SMALL LETTER REVERSED C WITH DOT\0" "LATIN SMALL LETTER REVERSED E\0" "LATIN SMALL LETTER REVERSED OPEN E\0" "LATIN SMALL LETTER REVERSED OPEN E WITH HOOK\0" "LATIN SMALL LETTER REVERSED OPEN E WITH RETROFLEX HOOK\0" "LATIN SMALL LETTER REVERSED R WITH FISHHOOK\0" "LATIN SMALL LETTER RUM\0" "LATIN SMALL LETTER RUM ROTUNDA\0" "LATIN SMALL LETTER S\0" "LATIN SMALL LETTER S WITH ACUTE\0" "LATIN SMALL LETTER S WITH ACUTE AND DOT ABOVE\0" "LATIN SMALL LETTER S WITH CARON\0" "LATIN SMALL LETTER S WITH CARON AND DOT ABOVE\0" "LATIN SMALL LETTER S WITH CEDILLA\0" "LATIN SMALL LETTER S WITH CIRCUMFLEX\0" "LATIN SMALL LETTER S WITH COMMA BELOW\0" "LATIN SMALL LETTER S WITH DOT ABOVE\0" "LATIN SMALL LETTER S WITH DOT BELOW\0" "LATIN SMALL LETTER S WITH DOT BELOW AND DOT ABOVE\0" "LATIN SMALL LETTER S WITH HOOK\0" "LATIN SMALL LETTER S WITH MIDDLE TILDE\0" "LATIN SMALL LETTER S WITH OBLIQUE STROKE\0" "LATIN SMALL LETTER S WITH PALATAL HOOK\0" "LATIN SMALL LETTER S WITH SWASH TAIL\0" "LATIN SMALL LETTER SALTILLO\0" "LATIN SMALL LETTER SCHWA\0" "LATIN SMALL LETTER SCHWA WITH HOOK\0" "LATIN SMALL LETTER SCHWA WITH RETROFLEX HOOK\0" "LATIN SMALL LETTER SCRIPT G\0" "LATIN SMALL LETTER SHARP S\0" "LATIN SMALL LETTER SIDEWAYS DIAERESIZED U\0" "LATIN SMALL LETTER SIDEWAYS O\0" "LATIN SMALL LETTER SIDEWAYS O WITH STROKE\0" "LATIN SMALL LETTER SIDEWAYS OPEN O\0" "LATIN SMALL LETTER SIDEWAYS TURNED M\0" "LATIN SMALL LETTER SIDEWAYS U\0" "LATIN SMALL LETTER SQUAT REVERSED ESH\0" "LATIN SMALL LETTER T\0" "LATIN SMALL LETTER T WITH CARON\0" "LATIN SMALL LETTER T WITH CEDILLA\0" "LATIN SMALL LETTER T WITH CIRCUMFLEX BELOW\0" "LATIN SMALL LETTER T WITH COMMA BELOW\0" "LATIN SMALL LETTER T WITH CURL\0" "LATIN SMALL LETTER T WITH DIAERESIS\0" "LATIN SMALL LETTER T WITH DIAGONAL STROKE\0" "LATIN SMALL LETTER T WITH DOT ABOVE\0" "LATIN SMALL LETTER T WITH DOT BELOW\0" "LATIN SMALL LETTER T WITH HOOK\0" "LATIN SMALL LETTER T WITH LINE BELOW\0" "LATIN SMALL LETTER T WITH MIDDLE TILDE\0" "LATIN SMALL LETTER T WITH PALATAL HOOK\0" "LATIN SMALL LETTER T WITH RETROFLEX HOOK\0" "LATIN SMALL LETTER T WITH STROKE\0" "LATIN SMALL LETTER TAILLESS PHI\0" "LATIN SMALL LETTER TC DIGRAPH WITH CURL\0" "LATIN SMALL LETTER TESH DIGRAPH\0" "LATIN SMALL LETTER TH WITH STRIKETHROUGH\0" "LATIN SMALL LETTER THORN\0" "LATIN SMALL LETTER THORN WITH STROKE\0" "LATIN SMALL LETTER THORN WITH STROKE THROUGH DESCENDER\0" "LATIN SMALL LETTER TONE FIVE\0" "LATIN SMALL LETTER TONE SIX\0" "LATIN SMALL LETTER TONE TWO\0" "LATIN SMALL LETTER TOP HALF O\0" "LATIN SMALL LETTER TRESILLO\0" "LATIN SMALL LETTER TS DIGRAPH\0" "LATIN SMALL LETTER TUM\0" "LATIN SMALL LETTER TURNED A\0" "LATIN SMALL LETTER TURNED AE\0" "LATIN SMALL LETTER TURNED ALPHA\0" "LATIN SMALL LETTER TURNED DELTA\0" "LATIN SMALL LETTER TURNED E\0" "LATIN SMALL LETTER TURNED G\0" "LATIN SMALL LETTER TURNED H\0" "LATIN SMALL LETTER TURNED H WITH FISHHOOK\0" "LATIN SMALL LETTER TURNED H WITH FISHHOOK AND TAIL\0" "LATIN SMALL LETTER TURNED I\0" "LATIN SMALL LETTER TURNED INSULAR G\0" "LATIN SMALL LETTER TURNED K\0" "LATIN SMALL LETTER TURNED L\0" "LATIN SMALL LETTER TURNED M\0" "LATIN SMALL LETTER TURNED M WITH LONG LEG\0" "LATIN SMALL LETTER TURNED OE\0" "LATIN SMALL LETTER TURNED OPEN E\0" "LATIN SMALL LETTER TURNED R\0" "LATIN SMALL LETTER TURNED R WITH HOOK\0" "LATIN SMALL LETTER TURNED R WITH LONG LEG\0" "LATIN SMALL LETTER TURNED R WITH TAIL\0" "LATIN SMALL LETTER TURNED T\0" "LATIN SMALL LETTER TURNED V\0" "LATIN SMALL LETTER TURNED W\0" "LATIN SMALL LETTER TURNED Y\0" "LATIN SMALL LETTER TZ\0" "LATIN SMALL LETTER U\0" "LATIN SMALL LETTER U BAR\0" "LATIN SMALL LETTER U WITH ACUTE\0" "LATIN SMALL LETTER U WITH BREVE\0" "LATIN SMALL LETTER U WITH CARON\0" "LATIN SMALL LETTER U WITH CIRCUMFLEX\0" "LATIN SMALL LETTER U WITH CIRCUMFLEX BELOW\0" "LATIN SMALL LETTER U WITH DIAERESIS\0" "LATIN SMALL LETTER U WITH DIAERESIS AND ACUTE\0" "LATIN SMALL LETTER U WITH DIAERESIS AND CARON\0" "LATIN SMALL LETTER U WITH DIAERESIS AND GRAVE\0" "LATIN SMALL LETTER U WITH DIAERESIS AND MACRON\0" "LATIN SMALL LETTER U WITH DIAERESIS BELOW\0" "LATIN SMALL LETTER U WITH DOT BELOW\0" "LATIN SMALL LETTER U WITH DOUBLE ACUTE\0" "LATIN SMALL LETTER U WITH DOUBLE GRAVE\0" "LATIN SMALL LETTER U WITH GRAVE\0" "LATIN SMALL LETTER U WITH HOOK ABOVE\0" "LATIN SMALL LETTER U WITH HORN\0" "LATIN SMALL LETTER U WITH HORN AND ACUTE\0" "LATIN SMALL LETTER U WITH HORN AND DOT BELOW\0" "LATIN SMALL LETTER U WITH HORN AND GRAVE\0" "LATIN SMALL LETTER U WITH HORN AND HOOK ABOVE\0" "LATIN SMALL LETTER U WITH HORN AND TILDE\0" "LATIN SMALL LETTER U WITH INVERTED BREVE\0" "LATIN SMALL LETTER U WITH MACRON\0" "LATIN SMALL LETTER U WITH MACRON AND DIAERESIS\0" "LATIN SMALL LETTER U WITH OGONEK\0" "LATIN SMALL LETTER U WITH RETROFLEX HOOK\0" "LATIN SMALL LETTER U WITH RING ABOVE\0" "LATIN SMALL LETTER U WITH TILDE\0" "LATIN SMALL LETTER U WITH TILDE AND ACUTE\0" "LATIN SMALL LETTER U WITH TILDE BELOW\0" "LATIN SMALL LETTER UE\0" "LATIN SMALL LETTER UM\0" "LATIN SMALL LETTER UPSILON\0" "LATIN SMALL LETTER UPSILON WITH STROKE\0" "LATIN SMALL LETTER V\0" "LATIN SMALL LETTER V WITH CURL\0" "LATIN SMALL LETTER V WITH DIAGONAL STROKE\0" "LATIN SMALL LETTER V WITH DOT BELOW\0" "LATIN SMALL LETTER V WITH HOOK\0" "LATIN SMALL LETTER V WITH PALATAL HOOK\0" "LATIN SMALL LETTER V WITH RIGHT HOOK\0" "LATIN SMALL LETTER V WITH TILDE\0" "LATIN SMALL LETTER VEND\0" "LATIN SMALL LETTER VISIGOTHIC Z\0" "LATIN SMALL LETTER VY\0" "LATIN SMALL LETTER W\0" "LATIN SMALL LETTER W WITH ACUTE\0" "LATIN SMALL LETTER W WITH CIRCUMFLEX\0" "LATIN SMALL LETTER W WITH DIAERESIS\0" "LATIN SMALL LETTER W WITH DOT ABOVE\0" "LATIN SMALL LETTER W WITH DOT BELOW\0" "LATIN SMALL LETTER W WITH GRAVE\0" "LATIN SMALL LETTER W WITH HOOK\0" "LATIN SMALL LETTER W WITH RING ABOVE\0" "LATIN SMALL LETTER X\0" "LATIN SMALL LETTER X WITH DIAERESIS\0" "LATIN SMALL LETTER X WITH DOT ABOVE\0" "LATIN SMALL LETTER X WITH PALATAL HOOK\0" "LATIN SMALL LETTER Y\0" "LATIN SMALL LETTER Y WITH ACUTE\0" "LATIN SMALL LETTER Y WITH CIRCUMFLEX\0" "LATIN SMALL LETTER Y WITH DIAERESIS\0" "LATIN SMALL LETTER Y WITH DOT ABOVE\0" "LATIN SMALL LETTER Y WITH DOT BELOW\0" "LATIN SMALL LETTER Y WITH GRAVE\0" "LATIN SMALL LETTER Y WITH HOOK\0" "LATIN SMALL LETTER Y WITH HOOK ABOVE\0" "LATIN SMALL LETTER Y WITH LOOP\0" "LATIN SMALL LETTER Y WITH MACRON\0" "LATIN SMALL LETTER Y WITH RING ABOVE\0" "LATIN SMALL LETTER Y WITH STROKE\0" "LATIN SMALL LETTER Y WITH TILDE\0" "LATIN SMALL LETTER YOGH\0" "LATIN SMALL LETTER Z\0" "LATIN SMALL LETTER Z WITH ACUTE\0" "LATIN SMALL LETTER Z WITH CARON\0" "LATIN SMALL LETTER Z WITH CIRCUMFLEX\0" "LATIN SMALL LETTER Z WITH CURL\0" "LATIN SMALL LETTER Z WITH DESCENDER\0" "LATIN SMALL LETTER Z WITH DOT ABOVE\0" "LATIN SMALL LETTER Z WITH DOT BELOW\0" "LATIN SMALL LETTER Z WITH HOOK\0" "LATIN SMALL LETTER Z WITH LINE BELOW\0" "LATIN SMALL LETTER Z WITH MIDDLE TILDE\0" "LATIN SMALL LETTER Z WITH PALATAL HOOK\0" "LATIN SMALL LETTER Z WITH RETROFLEX HOOK\0" "LATIN SMALL LETTER Z WITH STROKE\0" "LATIN SMALL LETTER Z WITH SWASH TAIL\0" "LATIN SMALL LIGATURE FF\0" "LATIN SMALL LIGATURE FFI\0" "LATIN SMALL LIGATURE FFL\0" "LATIN SMALL LIGATURE FI\0" "LATIN SMALL LIGATURE FL\0" "LATIN SMALL LIGATURE IJ\0" "LATIN SMALL LIGATURE LONG S T\0" "LATIN SMALL LIGATURE OE\0" "LATIN SMALL LIGATURE ST\0" "LATIN SUBSCRIPT SMALL LETTER A\0" "LATIN SUBSCRIPT SMALL LETTER E\0" "LATIN SUBSCRIPT SMALL LETTER H\0" "LATIN SUBSCRIPT SMALL LETTER I\0" "LATIN SUBSCRIPT SMALL LETTER J\0" "LATIN SUBSCRIPT SMALL LETTER K\0" "LATIN SUBSCRIPT SMALL LETTER L\0" "LATIN SUBSCRIPT SMALL LETTER M\0" "LATIN SUBSCRIPT SMALL LETTER N\0" "LATIN SUBSCRIPT SMALL LETTER O\0" "LATIN SUBSCRIPT SMALL LETTER P\0" "LATIN SUBSCRIPT SMALL LETTER R\0" "LATIN SUBSCRIPT SMALL LETTER S\0" "LATIN SUBSCRIPT SMALL LETTER SCHWA\0" "LATIN SUBSCRIPT SMALL LETTER T\0" "LATIN SUBSCRIPT SMALL LETTER U\0" "LATIN SUBSCRIPT SMALL LETTER V\0" "LATIN SUBSCRIPT SMALL LETTER X\0" "LEAF FLUTTERING IN WIND\0" "LEDGER\0" "LEFT AND RIGHT DOUBLE TURNSTILE\0" "LEFT AND RIGHT TACK\0" "LEFT ANGLE BRACKET\0" "LEFT ANGLE BRACKET WITH DOT\0" "LEFT ARC LESS-THAN BRACKET\0" "LEFT ARROW WITH CIRCLED PLUS\0" "LEFT ARROW WITH SMALL CIRCLE\0" "LEFT BARB DOWN RIGHT BARB DOWN HARPOON\0" "LEFT BARB DOWN RIGHT BARB UP HARPOON\0" "LEFT BARB UP RIGHT BARB DOWN HARPOON\0" "LEFT BARB UP RIGHT BARB UP HARPOON\0" "LEFT BLACK LENTICULAR BRACKET\0" "LEFT BLACK TORTOISE SHELL BRACKET\0" "LEFT CEILING\0" "LEFT CLOSED ENTRY\0" "LEFT CORNER BRACKET\0" "LEFT CURLY BRACKET\0" "LEFT CURLY BRACKET LOWER HOOK\0" "LEFT CURLY BRACKET MIDDLE PIECE\0" "LEFT CURLY BRACKET UPPER HOOK\0" "LEFT DOTTED SUBSTITUTION BRACKET\0" "LEFT DOUBLE ANGLE BRACKET\0" "LEFT DOUBLE PARENTHESIS\0" "LEFT DOUBLE QUOTATION MARK\0" "LEFT DOUBLE WIGGLY FENCE\0" "LEFT FISH TAIL\0" "LEFT FIVE EIGHTHS BLOCK\0" "LEFT FLOOR\0" "LEFT HALF BLACK CIRCLE\0" "LEFT HALF BLOCK\0" "LEFT LOW PARAPHRASE BRACKET\0" "LEFT LUGGAGE\0" "LEFT MULTIMAP\0" "LEFT NORMAL FACTOR SEMIDIRECT PRODUCT\0" "LEFT ONE EIGHTH BLOCK\0" "LEFT ONE QUARTER BLOCK\0" "LEFT OUTER JOIN\0" "LEFT PARENTHESIS\0" "LEFT PARENTHESIS EXTENSION\0" "LEFT PARENTHESIS LOWER HOOK\0" "LEFT PARENTHESIS UPPER HOOK\0" "LEFT RAISED OMISSION BRACKET\0" "LEFT RIGHT ARROW\0" "LEFT RIGHT ARROW THROUGH SMALL CIRCLE\0" "LEFT RIGHT ARROW WITH DOUBLE VERTICAL STROKE\0" "LEFT RIGHT ARROW WITH STROKE\0" "LEFT RIGHT ARROW WITH VERTICAL STROKE\0" "LEFT RIGHT BLACK ARROW\0" "LEFT RIGHT DOUBLE ARROW\0" "LEFT RIGHT DOUBLE ARROW WITH STROKE\0" "LEFT RIGHT DOUBLE ARROW WITH VERTICAL STROKE\0" "LEFT RIGHT OPEN-HEADED ARROW\0" "LEFT RIGHT WAVE ARROW\0" "LEFT RIGHT WHITE ARROW\0" "LEFT S-SHAPED BAG DELIMITER\0" "LEFT SEMIDIRECT PRODUCT\0" "LEFT SEVEN EIGHTHS BLOCK\0" "LEFT SIDEWAYS U BRACKET\0" "LEFT SINGLE QUOTATION MARK\0" "LEFT SQUARE BRACKET\0" "LEFT SQUARE BRACKET EXTENSION\0" "LEFT SQUARE BRACKET LOWER CORNER\0" "LEFT SQUARE BRACKET UPPER CORNER\0" "LEFT SQUARE BRACKET WITH QUILL\0" "LEFT SQUARE BRACKET WITH TICK IN BOTTOM CORNER\0" "LEFT SQUARE BRACKET WITH TICK IN TOP CORNER\0" "LEFT SQUARE BRACKET WITH UNDERBAR\0" "LEFT SUBSTITUTION BRACKET\0" "LEFT TACK\0" "LEFT THREE EIGHTHS BLOCK\0" "LEFT THREE QUARTERS BLOCK\0" "LEFT TORTOISE SHELL BRACKET\0" "LEFT TRANSPOSITION BRACKET\0" "LEFT TRIANGLE BESIDE VERTICAL BAR\0" "LEFT VERTICAL BAR WITH QUILL\0" "LEFT VERTICAL BOX LINE\0" "LEFT WHITE CORNER BRACKET\0" "LEFT WHITE CURLY BRACKET\0" "LEFT WHITE LENTICULAR BRACKET\0" "LEFT WHITE PARENTHESIS\0" "LEFT WHITE SQUARE BRACKET\0" "LEFT WHITE TORTOISE SHELL BRACKET\0" "LEFT WIGGLY FENCE\0" "LEFT-FACING SVASTI SIGN\0" "LEFT-FACING SVASTI SIGN WITH DOTS\0" "LEFT-HANDED INTERLACED PENTAGRAM\0" "LEFT-POINTING ANGLE BRACKET\0" "LEFT-POINTING CURVED ANGLE BRACKET\0" "LEFT-POINTING DOUBLE ANGLE QUOTATION MARK\0" "LEFT-POINTING MAGNIFYING GLASS\0" "LEFT-SHADED WHITE RIGHTWARDS ARROW\0" "LEFT-SIDE ARC ANTICLOCKWISE ARROW\0" "LEFT-TO-RIGHT EMBEDDING\0" "LEFT-TO-RIGHT MARK\0" "LEFT-TO-RIGHT OVERRIDE\0" "LEFTWARDS ARROW\0" "LEFTWARDS ARROW ABOVE ALMOST EQUAL TO\0" "LEFTWARDS ARROW ABOVE REVERSE ALMOST EQUAL TO\0" "LEFTWARDS ARROW ABOVE REVERSE TILDE OPERATOR\0" "LEFTWARDS ARROW ABOVE SHORT RIGHTWARDS ARROW\0" "LEFTWARDS ARROW ABOVE TILDE OPERATOR\0" "LEFTWARDS ARROW FROM BAR\0" "LEFTWARDS ARROW FROM BAR TO BLACK DIAMOND\0" "LEFTWARDS ARROW OVER RIGHTWARDS ARROW\0" "LEFTWARDS ARROW THROUGH LESS-THAN\0" "LEFTWARDS ARROW THROUGH SUBSET\0" "LEFTWARDS ARROW THROUGH X\0" "LEFTWARDS ARROW TO BAR\0" "LEFTWARDS ARROW TO BAR OVER RIGHTWARDS ARROW TO BAR\0" "LEFTWARDS ARROW TO BLACK DIAMOND\0" "LEFTWARDS ARROW WITH DOTTED STEM\0" "LEFTWARDS ARROW WITH DOUBLE VERTICAL STROKE\0" "LEFTWARDS ARROW WITH HOOK\0" "LEFTWARDS ARROW WITH LOOP\0" "LEFTWARDS ARROW WITH PLUS BELOW\0" "LEFTWARDS ARROW WITH STROKE\0" "LEFTWARDS ARROW WITH TAIL\0" "LEFTWARDS ARROW WITH TAIL WITH DOUBLE VERTICAL STROKE\0" "LEFTWARDS ARROW WITH TAIL WITH VERTICAL STROKE\0" "LEFTWARDS ARROW WITH TIP DOWNWARDS\0" "LEFTWARDS ARROW WITH TIP UPWARDS\0" "LEFTWARDS ARROW WITH VERTICAL STROKE\0" "LEFTWARDS ARROW-TAIL\0" "LEFTWARDS BLACK ARROW\0" "LEFTWARDS DASHED ARROW\0" "LEFTWARDS DOUBLE ARROW\0" "LEFTWARDS DOUBLE ARROW FROM BAR\0" "LEFTWARDS DOUBLE ARROW WITH STROKE\0" "LEFTWARDS DOUBLE ARROW WITH VERTICAL STROKE\0" "LEFTWARDS DOUBLE ARROW-TAIL\0" "LEFTWARDS DOUBLE DASH ARROW\0" "LEFTWARDS HARPOON OVER RIGHTWARDS HARPOON\0" "LEFTWARDS HARPOON WITH BARB DOWN ABOVE RIGHTWARDS HARPOON WITH BARB DOWN\0" "LEFTWARDS HARPOON WITH BARB DOWN BELOW LONG DASH\0" "LEFTWARDS HARPOON WITH BARB DOWN FROM BAR\0" "LEFTWARDS HARPOON WITH BARB DOWN TO BAR\0" "LEFTWARDS HARPOON WITH BARB DOWNWARDS\0" "LEFTWARDS HARPOON WITH BARB UP ABOVE LEFTWARDS HARPOON WITH BARB DOWN\0" "LEFTWARDS HARPOON WITH BARB UP ABOVE LONG DASH\0" "LEFTWARDS HARPOON WITH BARB UP ABOVE RIGHTWARDS HARPOON WITH BARB UP\0" "LEFTWARDS HARPOON WITH BARB UP FROM BAR\0" "LEFTWARDS HARPOON WITH BARB UP TO BAR\0" "LEFTWARDS HARPOON WITH BARB UPWARDS\0" "LEFTWARDS OPEN-HEADED ARROW\0" "LEFTWARDS PAIRED ARROWS\0" "LEFTWARDS QUADRUPLE ARROW\0" "LEFTWARDS SQUIGGLE ARROW\0" "LEFTWARDS TRIPLE ARROW\0" "LEFTWARDS TRIPLE DASH ARROW\0" "LEFTWARDS TWO HEADED ARROW\0" "LEFTWARDS TWO-HEADED ARROW FROM BAR\0" "LEFTWARDS TWO-HEADED ARROW WITH DOUBLE VERTICAL STROKE\0" "LEFTWARDS TWO-HEADED ARROW WITH TAIL\0" "LEFTWARDS TWO-HEADED ARROW WITH TAIL WITH DOUBLE VERTICAL STROKE\0" "LEFTWARDS TWO-HEADED ARROW WITH TAIL WITH VERTICAL STROKE\0" "LEFTWARDS TWO-HEADED ARROW WITH VERTICAL STROKE\0" "LEFTWARDS TWO-HEADED TRIPLE DASH ARROW\0" "LEFTWARDS WAVE ARROW\0" "LEFTWARDS WHITE ARROW\0" "LEMON\0" "LEO\0" "LEOPARD\0" "LEPCHA CONSONANT SIGN K\0" "LEPCHA CONSONANT SIGN KANG\0" "LEPCHA CONSONANT SIGN L\0" "LEPCHA CONSONANT SIGN M\0" "LEPCHA CONSONANT SIGN N\0" "LEPCHA CONSONANT SIGN NYIN-DO\0" "LEPCHA CONSONANT SIGN P\0" "LEPCHA CONSONANT SIGN R\0" "LEPCHA CONSONANT SIGN T\0" "LEPCHA DIGIT EIGHT\0" "LEPCHA DIGIT FIVE\0" "LEPCHA DIGIT FOUR\0" "LEPCHA DIGIT NINE\0" "LEPCHA DIGIT ONE\0" "LEPCHA DIGIT SEVEN\0" "LEPCHA DIGIT SIX\0" "LEPCHA DIGIT THREE\0" "LEPCHA DIGIT TWO\0" "LEPCHA DIGIT ZERO\0" "LEPCHA LETTER A\0" "LEPCHA LETTER BA\0" "LEPCHA LETTER BLA\0" "LEPCHA LETTER CA\0" "LEPCHA LETTER CHA\0" "LEPCHA LETTER DA\0" "LEPCHA LETTER DDA\0" "LEPCHA LETTER DZA\0" "LEPCHA LETTER FA\0" "LEPCHA LETTER FLA\0" "LEPCHA LETTER GA\0" "LEPCHA LETTER GLA\0" "LEPCHA LETTER HA\0" "LEPCHA LETTER HLA\0" "LEPCHA LETTER JA\0" "LEPCHA LETTER KA\0" "LEPCHA LETTER KHA\0" "LEPCHA LETTER KLA\0" "LEPCHA LETTER LA\0" "LEPCHA LETTER MA\0" "LEPCHA LETTER MLA\0" "LEPCHA LETTER NA\0" "LEPCHA LETTER NGA\0" "LEPCHA LETTER NYA\0" "LEPCHA LETTER PA\0" "LEPCHA LETTER PHA\0" "LEPCHA LETTER PLA\0" "LEPCHA LETTER RA\0" "LEPCHA LETTER SA\0" "LEPCHA LETTER SHA\0" "LEPCHA LETTER TA\0" "LEPCHA LETTER THA\0" "LEPCHA LETTER TSA\0" "LEPCHA LETTER TSHA\0" "LEPCHA LETTER TTA\0" "LEPCHA LETTER TTHA\0" "LEPCHA LETTER VA\0" "LEPCHA LETTER WA\0" "LEPCHA LETTER YA\0" "LEPCHA PUNCTUATION CER-WA\0" "LEPCHA PUNCTUATION NYET THYOOM TA-ROL\0" "LEPCHA PUNCTUATION TA-ROL\0" "LEPCHA PUNCTUATION TSHOOK\0" "LEPCHA PUNCTUATION TSHOOK CER-WA\0" "LEPCHA SIGN NUKTA\0" "LEPCHA SIGN RAN\0" "LEPCHA SUBJOINED LETTER RA\0" "LEPCHA SUBJOINED LETTER YA\0" "LEPCHA VOWEL SIGN AA\0" "LEPCHA VOWEL SIGN E\0" "LEPCHA VOWEL SIGN I\0" "LEPCHA VOWEL SIGN O\0" "LEPCHA VOWEL SIGN OO\0" "LEPCHA VOWEL SIGN U\0" "LEPCHA VOWEL SIGN UU\0" "LESS-THAN ABOVE DOUBLE-LINE EQUAL ABOVE GREATER-THAN\0" "LESS-THAN ABOVE GREATER-THAN ABOVE DOUBLE-LINE EQUAL\0" "LESS-THAN ABOVE LEFTWARDS ARROW\0" "LESS-THAN ABOVE SIMILAR ABOVE GREATER-THAN\0" "LESS-THAN ABOVE SIMILAR OR EQUAL\0" "LESS-THAN ABOVE SLANTED EQUAL ABOVE GREATER-THAN ABOVE SLANTED EQUAL\0" "LESS-THAN AND NOT APPROXIMATE\0" "LESS-THAN AND SINGLE-LINE NOT EQUAL TO\0" "LESS-THAN BUT NOT EQUAL TO\0" "LESS-THAN BUT NOT EQUIVALENT TO\0" "LESS-THAN CLOSED BY CURVE\0" "LESS-THAN CLOSED BY CURVE ABOVE SLANTED EQUAL\0" "LESS-THAN EQUAL TO OR GREATER-THAN\0" "LESS-THAN OR APPROXIMATE\0" "LESS-THAN OR EQUAL TO\0" "LESS-THAN OR EQUIVALENT TO\0" "LESS-THAN OR GREATER-THAN\0" "LESS-THAN OR SLANTED EQUAL TO\0" "LESS-THAN OR SLANTED EQUAL TO WITH DOT ABOVE\0" "LESS-THAN OR SLANTED EQUAL TO WITH DOT ABOVE RIGHT\0" "LESS-THAN OR SLANTED EQUAL TO WITH DOT INSIDE\0" "LESS-THAN OVER EQUAL TO\0" "LESS-THAN SIGN\0" "LESS-THAN WITH CIRCLE INSIDE\0" "LESS-THAN WITH DOT\0" "LESS-THAN WITH QUESTION MARK ABOVE\0" "LIBRA\0" "LIGHT LEFT TORTOISE SHELL BRACKET ORNAMENT\0" "LIGHT RAIL\0" "LIGHT RIGHT TORTOISE SHELL BRACKET ORNAMENT\0" "LIGHT SHADE\0" "LIGHT VERTICAL BAR\0" "LIGHTNING\0" "LIMBU DIGIT EIGHT\0" "LIMBU DIGIT FIVE\0" "LIMBU DIGIT FOUR\0" "LIMBU DIGIT NINE\0" "LIMBU DIGIT ONE\0" "LIMBU DIGIT SEVEN\0" "LIMBU DIGIT SIX\0" "LIMBU DIGIT THREE\0" "LIMBU DIGIT TWO\0" "LIMBU DIGIT ZERO\0" "LIMBU EXCLAMATION MARK\0" "LIMBU LETTER BA\0" "LIMBU LETTER BHA\0" "LIMBU LETTER CA\0" "LIMBU LETTER CHA\0" "LIMBU LETTER DA\0" "LIMBU LETTER DHA\0" "LIMBU LETTER GA\0" "LIMBU LETTER GHA\0" "LIMBU LETTER HA\0" "LIMBU LETTER JA\0" "LIMBU LETTER JHA\0" "LIMBU LETTER KA\0" "LIMBU LETTER KHA\0" "LIMBU LETTER LA\0" "LIMBU LETTER MA\0" "LIMBU LETTER NA\0" "LIMBU LETTER NGA\0" "LIMBU LETTER PA\0" "LIMBU LETTER PHA\0" "LIMBU LETTER RA\0" "LIMBU LETTER SA\0" "LIMBU LETTER SHA\0" "LIMBU LETTER SSA\0" "LIMBU LETTER TA\0" "LIMBU LETTER THA\0" "LIMBU LETTER WA\0" "LIMBU LETTER YA\0" "LIMBU LETTER YAN\0" "LIMBU QUESTION MARK\0" "LIMBU SIGN KEMPHRENG\0" "LIMBU SIGN LOO\0" "LIMBU SIGN MUKPHRENG\0" "LIMBU SIGN SA-I\0" "LIMBU SMALL LETTER ANUSVARA\0" "LIMBU SMALL LETTER KA\0" "LIMBU SMALL LETTER LA\0" "LIMBU SMALL LETTER MA\0" "LIMBU SMALL LETTER NA\0" "LIMBU SMALL LETTER NGA\0" "LIMBU SMALL LETTER PA\0" "LIMBU SMALL LETTER RA\0" "LIMBU SMALL LETTER TA\0" "LIMBU SUBJOINED LETTER RA\0" "LIMBU SUBJOINED LETTER WA\0" "LIMBU SUBJOINED LETTER YA\0" "LIMBU VOWEL SIGN A\0" "LIMBU VOWEL SIGN AI\0" "LIMBU VOWEL SIGN AU\0" "LIMBU VOWEL SIGN E\0" "LIMBU VOWEL SIGN EE\0" "LIMBU VOWEL SIGN I\0" "LIMBU VOWEL SIGN O\0" "LIMBU VOWEL SIGN OO\0" "LIMBU VOWEL SIGN U\0" "LIMBU VOWEL-CARRIER LETTER\0" "LIMITED LIABILITY SIGN\0" "LINE INTEGRATION NOT INCLUDING THE POLE\0" "LINE INTEGRATION WITH RECTANGULAR PATH AROUND POLE\0" "LINE INTEGRATION WITH SEMICIRCULAR PATH AROUND POLE\0" "LINE SEPARATOR\0" "LINEAR B IDEOGRAM B100 MAN\0" "LINEAR B IDEOGRAM B102 WOMAN\0" "LINEAR B IDEOGRAM B104 DEER\0" "LINEAR B IDEOGRAM B105 EQUID\0" "LINEAR B IDEOGRAM B105F MARE\0" "LINEAR B IDEOGRAM B105M STALLION\0" "LINEAR B IDEOGRAM B106F EWE\0" "LINEAR B IDEOGRAM B106M RAM\0" "LINEAR B IDEOGRAM B107F SHE-GOAT\0" "LINEAR B IDEOGRAM B107M HE-GOAT\0" "LINEAR B IDEOGRAM B108F SOW\0" "LINEAR B IDEOGRAM B108M BOAR\0" "LINEAR B IDEOGRAM B109F COW\0" "LINEAR B IDEOGRAM B109M BULL\0" "LINEAR B IDEOGRAM B120 WHEAT\0" "LINEAR B IDEOGRAM B121 BARLEY\0" "LINEAR B IDEOGRAM B122 OLIVE\0" "LINEAR B IDEOGRAM B123 SPICE\0" "LINEAR B IDEOGRAM B125 CYPERUS\0" "LINEAR B IDEOGRAM B130 OIL\0" "LINEAR B IDEOGRAM B131 WINE\0" "LINEAR B IDEOGRAM B132\0" "LINEAR B IDEOGRAM B140 BRONZE\0" "LINEAR B IDEOGRAM B141 GOLD\0" "LINEAR B IDEOGRAM B142\0" "LINEAR B IDEOGRAM B145 WOOL\0" "LINEAR B IDEOGRAM B146\0" "LINEAR B IDEOGRAM B150\0" "LINEAR B IDEOGRAM B151 HORN\0" "LINEAR B IDEOGRAM B152\0" "LINEAR B IDEOGRAM B153\0" "LINEAR B IDEOGRAM B154\0" "LINEAR B IDEOGRAM B157\0" "LINEAR B IDEOGRAM B158\0" "LINEAR B IDEOGRAM B159 CLOTH\0" "LINEAR B IDEOGRAM B160\0" "LINEAR B IDEOGRAM B161\0" "LINEAR B IDEOGRAM B162 GARMENT\0" "LINEAR B IDEOGRAM B163 ARMOUR\0" "LINEAR B IDEOGRAM B164\0" "LINEAR B IDEOGRAM B165\0" "LINEAR B IDEOGRAM B166\0" "LINEAR B IDEOGRAM B167\0" "LINEAR B IDEOGRAM B168\0" "LINEAR B IDEOGRAM B169\0" "LINEAR B IDEOGRAM B170\0" "LINEAR B IDEOGRAM B171\0" "LINEAR B IDEOGRAM B172\0" "LINEAR B IDEOGRAM B173 MONTH\0" "LINEAR B IDEOGRAM B174\0" "LINEAR B IDEOGRAM B176 TREE\0" "LINEAR B IDEOGRAM B177\0" "LINEAR B IDEOGRAM B178\0" "LINEAR B IDEOGRAM B179\0" "LINEAR B IDEOGRAM B180\0" "LINEAR B IDEOGRAM B181\0" "LINEAR B IDEOGRAM B182\0" "LINEAR B IDEOGRAM B183\0" "LINEAR B IDEOGRAM B184\0" "LINEAR B IDEOGRAM B185\0" "LINEAR B IDEOGRAM B189\0" "LINEAR B IDEOGRAM B190\0" "LINEAR B IDEOGRAM B191 HELMET\0" "LINEAR B IDEOGRAM B220 FOOTSTOOL\0" "LINEAR B IDEOGRAM B225 BATHTUB\0" "LINEAR B IDEOGRAM B230 SPEAR\0" "LINEAR B IDEOGRAM B231 ARROW\0" "LINEAR B IDEOGRAM B232\0" "LINEAR B IDEOGRAM B233 SWORD\0" "LINEAR B IDEOGRAM B234\0" "LINEAR B IDEOGRAM B236\0" "LINEAR B IDEOGRAM B240 WHEELED CHARIOT\0" "LINEAR B IDEOGRAM B241 CHARIOT\0" "LINEAR B IDEOGRAM B242 CHARIOT FRAME\0" "LINEAR B IDEOGRAM B243 WHEEL\0" "LINEAR B IDEOGRAM B245\0" "LINEAR B IDEOGRAM B246\0" "LINEAR B IDEOGRAM B248\0" "LINEAR B IDEOGRAM B249\0" "LINEAR B IDEOGRAM B251\0" "LINEAR B IDEOGRAM B252\0" "LINEAR B IDEOGRAM B253\0" "LINEAR B IDEOGRAM B254 DART\0" "LINEAR B IDEOGRAM B255\0" "LINEAR B IDEOGRAM B256\0" "LINEAR B IDEOGRAM B257\0" "LINEAR B IDEOGRAM B258\0" "LINEAR B IDEOGRAM B259\0" "LINEAR B IDEOGRAM VESSEL B155\0" "LINEAR B IDEOGRAM VESSEL B200\0" "LINEAR B IDEOGRAM VESSEL B201\0" "LINEAR B IDEOGRAM VESSEL B202\0" "LINEAR B IDEOGRAM VESSEL B203\0" "LINEAR B IDEOGRAM VESSEL B204\0" "LINEAR B IDEOGRAM VESSEL B205\0" "LINEAR B IDEOGRAM VESSEL B206\0" "LINEAR B IDEOGRAM VESSEL B207\0" "LINEAR B IDEOGRAM VESSEL B208\0" "LINEAR B IDEOGRAM VESSEL B209\0" "LINEAR B IDEOGRAM VESSEL B210\0" "LINEAR B IDEOGRAM VESSEL B211\0" "LINEAR B IDEOGRAM VESSEL B212\0" "LINEAR B IDEOGRAM VESSEL B213\0" "LINEAR B IDEOGRAM VESSEL B214\0" "LINEAR B IDEOGRAM VESSEL B215\0" "LINEAR B IDEOGRAM VESSEL B216\0" "LINEAR B IDEOGRAM VESSEL B217\0" "LINEAR B IDEOGRAM VESSEL B218\0" "LINEAR B IDEOGRAM VESSEL B219\0" "LINEAR B IDEOGRAM VESSEL B221\0" "LINEAR B IDEOGRAM VESSEL B222\0" "LINEAR B IDEOGRAM VESSEL B226\0" "LINEAR B IDEOGRAM VESSEL B227\0" "LINEAR B IDEOGRAM VESSEL B228\0" "LINEAR B IDEOGRAM VESSEL B229\0" "LINEAR B IDEOGRAM VESSEL B250\0" "LINEAR B IDEOGRAM VESSEL B305\0" "LINEAR B MONOGRAM B127 KAPO\0" "LINEAR B MONOGRAM B128 KANAKO\0" "LINEAR B MONOGRAM B133 AREPA\0" "LINEAR B MONOGRAM B135 MERI\0" "LINEAR B MONOGRAM B156 TURO2\0" "LINEAR B MONOGRAM B247 DIPTE\0" "LINEAR B SYLLABLE B001 DA\0" "LINEAR B SYLLABLE B002 RO\0" "LINEAR B SYLLABLE B003 PA\0" "LINEAR B SYLLABLE B004 TE\0" "LINEAR B SYLLABLE B005 TO\0" "LINEAR B SYLLABLE B006 NA\0" "LINEAR B SYLLABLE B007 DI\0" "LINEAR B SYLLABLE B008 A\0" "LINEAR B SYLLABLE B009 SE\0" "LINEAR B SYLLABLE B010 U\0" "LINEAR B SYLLABLE B011 PO\0" "LINEAR B SYLLABLE B012 SO\0" "LINEAR B SYLLABLE B013 ME\0" "LINEAR B SYLLABLE B014 DO\0" "LINEAR B SYLLABLE B015 MO\0" "LINEAR B SYLLABLE B016 QA\0" "LINEAR B SYLLABLE B017 ZA\0" "LINEAR B SYLLABLE B020 ZO\0" "LINEAR B SYLLABLE B021 QI\0" "LINEAR B SYLLABLE B023 MU\0" "LINEAR B SYLLABLE B024 NE\0" "LINEAR B SYLLABLE B025 A2\0" "LINEAR B SYLLABLE B026 RU\0" "LINEAR B SYLLABLE B027 RE\0" "LINEAR B SYLLABLE B028 I\0" "LINEAR B SYLLABLE B029 PU2\0" "LINEAR B SYLLABLE B030 NI\0" "LINEAR B SYLLABLE B031 SA\0" "LINEAR B SYLLABLE B032 QO\0" "LINEAR B SYLLABLE B033 RA3\0" "LINEAR B SYLLABLE B036 JO\0" "LINEAR B SYLLABLE B037 TI\0" "LINEAR B SYLLABLE B038 E\0" "LINEAR B SYLLABLE B039 PI\0" "LINEAR B SYLLABLE B040 WI\0" "LINEAR B SYLLABLE B041 SI\0" "LINEAR B SYLLABLE B042 WO\0" "LINEAR B SYLLABLE B043 A3\0" "LINEAR B SYLLABLE B044 KE\0" "LINEAR B SYLLABLE B045 DE\0" "LINEAR B SYLLABLE B046 JE\0" "LINEAR B SYLLABLE B048 NWA\0" "LINEAR B SYLLABLE B050 PU\0" "LINEAR B SYLLABLE B051 DU\0" "LINEAR B SYLLABLE B052 NO\0" "LINEAR B SYLLABLE B053 RI\0" "LINEAR B SYLLABLE B054 WA\0" "LINEAR B SYLLABLE B055 NU\0" "LINEAR B SYLLABLE B057 JA\0" "LINEAR B SYLLABLE B058 SU\0" "LINEAR B SYLLABLE B059 TA\0" "LINEAR B SYLLABLE B060 RA\0" "LINEAR B SYLLABLE B061 O\0" "LINEAR B SYLLABLE B062 PTE\0" "LINEAR B SYLLABLE B065 JU\0" "LINEAR B SYLLABLE B066 TA2\0" "LINEAR B SYLLABLE B067 KI\0" "LINEAR B SYLLABLE B068 RO2\0" "LINEAR B SYLLABLE B069 TU\0" "LINEAR B SYLLABLE B070 KO\0" "LINEAR B SYLLABLE B071 DWE\0" "LINEAR B SYLLABLE B072 PE\0" "LINEAR B SYLLABLE B073 MI\0" "LINEAR B SYLLABLE B074 ZE\0" "LINEAR B SYLLABLE B075 WE\0" "LINEAR B SYLLABLE B076 RA2\0" "LINEAR B SYLLABLE B077 KA\0" "LINEAR B SYLLABLE B078 QE\0" "LINEAR B SYLLABLE B080 MA\0" "LINEAR B SYLLABLE B081 KU\0" "LINEAR B SYLLABLE B085 AU\0" "LINEAR B SYLLABLE B087 TWE\0" "LINEAR B SYLLABLE B090 DWO\0" "LINEAR B SYLLABLE B091 TWO\0" "LINEAR B SYMBOL B018\0" "LINEAR B SYMBOL B019\0" "LINEAR B SYMBOL B022\0" "LINEAR B SYMBOL B034\0" "LINEAR B SYMBOL B047\0" "LINEAR B SYMBOL B049\0" "LINEAR B SYMBOL B056\0" "LINEAR B SYMBOL B063\0" "LINEAR B SYMBOL B064\0" "LINEAR B SYMBOL B079\0" "LINEAR B SYMBOL B082\0" "LINEAR B SYMBOL B083\0" "LINEAR B SYMBOL B086\0" "LINEAR B SYMBOL B089\0" "LINK SYMBOL\0" "LIPSTICK\0" "LIRA SIGN\0" "LISU LETTER A\0" "LISU LETTER AE\0" "LISU LETTER BA\0" "LISU LETTER CA\0" "LISU LETTER CHA\0" "LISU LETTER DA\0" "LISU LETTER DZA\0" "LISU LETTER E\0" "LISU LETTER EU\0" "LISU LETTER FA\0" "LISU LETTER GA\0" "LISU LETTER GHA\0" "LISU LETTER HA\0" "LISU LETTER HHA\0" "LISU LETTER I\0" "LISU LETTER JA\0" "LISU LETTER KA\0" "LISU LETTER KHA\0" "LISU LETTER LA\0" "LISU LETTER MA\0" "LISU LETTER NA\0" "LISU LETTER NGA\0" "LISU LETTER O\0" "LISU LETTER OE\0" "LISU LETTER PA\0" "LISU LETTER PHA\0" "LISU LETTER SA\0" "LISU LETTER SHA\0" "LISU LETTER TA\0" "LISU LETTER THA\0" "LISU LETTER TONE MYA BO\0" "LISU LETTER TONE MYA CYA\0" "LISU LETTER TONE MYA JEU\0" "LISU LETTER TONE MYA NA\0" "LISU LETTER TONE MYA TI\0" "LISU LETTER TONE NA PO\0" "LISU LETTER TSA\0" "LISU LETTER TSHA\0" "LISU LETTER U\0" "LISU LETTER UE\0" "LISU LETTER UH\0" "LISU LETTER WA\0" "LISU LETTER XA\0" "LISU LETTER YA\0" "LISU LETTER ZA\0" "LISU LETTER ZHA\0" "LISU PUNCTUATION COMMA\0" "LISU PUNCTUATION FULL STOP\0" "LIVRE TOURNOIS SIGN\0" "LOCK\0" "LOCK WITH INK PEN\0" "LOGICAL AND\0" "LOGICAL AND WITH DOT ABOVE\0" "LOGICAL AND WITH DOUBLE OVERBAR\0" "LOGICAL AND WITH DOUBLE UNDERBAR\0" "LOGICAL AND WITH HORIZONTAL DASH\0" "LOGICAL AND WITH MIDDLE STEM\0" "LOGICAL AND WITH UNDERBAR\0" "LOGICAL OR\0" "LOGICAL OR OVERLAPPING LOGICAL AND\0" "LOGICAL OR WITH DOT ABOVE\0" "LOGICAL OR WITH DOUBLE OVERBAR\0" "LOGICAL OR WITH DOUBLE UNDERBAR\0" "LOGICAL OR WITH HORIZONTAL DASH\0" "LOGICAL OR WITH MIDDLE STEM\0" "LOLLIPOP\0" "LONG DASH FROM LEFT MEMBER OF DOUBLE VERTICAL\0" "LONG DIVISION\0" "LONG LEFT RIGHT ARROW\0" "LONG LEFT RIGHT DOUBLE ARROW\0" "LONG LEFT TACK\0" "LONG LEFTWARDS ARROW\0" "LONG LEFTWARDS ARROW FROM BAR\0" "LONG LEFTWARDS DOUBLE ARROW\0" "LONG LEFTWARDS DOUBLE ARROW FROM BAR\0" "LONG LEFTWARDS SQUIGGLE ARROW\0" "LONG RIGHT TACK\0" "LONG RIGHTWARDS ARROW\0" "LONG RIGHTWARDS ARROW FROM BAR\0" "LONG RIGHTWARDS DOUBLE ARROW\0" "LONG RIGHTWARDS DOUBLE ARROW FROM BAR\0" "LONG RIGHTWARDS SQUIGGLE ARROW\0" "LOUDLY CRYING FACE\0" "LOVE HOTEL\0" "LOVE LETTER\0" "LOW ASTERISK\0" "LOW BRIGHTNESS SYMBOL\0" "LOW DOUBLE PRIME QUOTATION MARK\0" "LOW LINE\0" "LOWER BLADE SCISSORS\0" "LOWER FIVE EIGHTHS BLOCK\0" "LOWER HALF BLOCK\0" "LOWER HALF CIRCLE\0" "LOWER HALF INVERSE WHITE CIRCLE\0" "LOWER LEFT QUADRANT CIRCULAR ARC\0" "LOWER LEFT SEMICIRCULAR ANTICLOCKWISE ARROW\0" "LOWER LEFT TRIANGLE\0" "LOWER ONE EIGHTH BLOCK\0" "LOWER ONE QUARTER BLOCK\0" "LOWER RIGHT CORNER WITH DOT\0" "LOWER RIGHT DROP-SHADOWED WHITE SQUARE\0" "LOWER RIGHT PENCIL\0" "LOWER RIGHT QUADRANT CIRCULAR ARC\0" "LOWER RIGHT SEMICIRCULAR CLOCKWISE ARROW\0" "LOWER RIGHT SHADOWED WHITE SQUARE\0" "LOWER RIGHT TRIANGLE\0" "LOWER SEVEN EIGHTHS BLOCK\0" "LOWER THREE EIGHTHS BLOCK\0" "LOWER THREE QUARTERS BLOCK\0" "LOZENGE\0" "LOZENGE DIVIDED BY HORIZONTAL RULE\0" "LYCIAN LETTER A\0" "LYCIAN LETTER AN\0" "LYCIAN LETTER B\0" "LYCIAN LETTER BH\0" "LYCIAN LETTER D\0" "LYCIAN LETTER E\0" "LYCIAN LETTER EN\0" "LYCIAN LETTER G\0" "LYCIAN LETTER H\0" "LYCIAN LETTER I\0" "LYCIAN LETTER J\0" "LYCIAN LETTER K\0" "LYCIAN LETTER KK\0" "LYCIAN LETTER L\0" "LYCIAN LETTER M\0" "LYCIAN LETTER MM\0" "LYCIAN LETTER N\0" "LYCIAN LETTER NN\0" "LYCIAN LETTER P\0" "LYCIAN LETTER Q\0" "LYCIAN LETTER R\0" "LYCIAN LETTER S\0" "LYCIAN LETTER T\0" "LYCIAN LETTER TH\0" "LYCIAN LETTER TT\0" "LYCIAN LETTER U\0" "LYCIAN LETTER W\0" "LYCIAN LETTER X\0" "LYCIAN LETTER Z\0" "LYDIAN LETTER A\0" "LYDIAN LETTER AN\0" "LYDIAN LETTER B\0" "LYDIAN LETTER C\0" "LYDIAN LETTER D\0" "LYDIAN LETTER E\0" "LYDIAN LETTER EN\0" "LYDIAN LETTER F\0" "LYDIAN LETTER G\0" "LYDIAN LETTER I\0" "LYDIAN LETTER K\0" "LYDIAN LETTER L\0" "LYDIAN LETTER LY\0" "LYDIAN LETTER M\0" "LYDIAN LETTER N\0" "LYDIAN LETTER NN\0" "LYDIAN LETTER O\0" "LYDIAN LETTER Q\0" "LYDIAN LETTER R\0" "LYDIAN LETTER S\0" "LYDIAN LETTER SS\0" "LYDIAN LETTER T\0" "LYDIAN LETTER TT\0" "LYDIAN LETTER U\0" "LYDIAN LETTER V\0" "LYDIAN LETTER Y\0" "LYDIAN TRIANGULAR MARK\0" "MACRON\0" "MAHJONG TILE AUTUMN\0" "MAHJONG TILE BACK\0" "MAHJONG TILE BAMBOO\0" "MAHJONG TILE CHRYSANTHEMUM\0" "MAHJONG TILE EAST WIND\0" "MAHJONG TILE EIGHT OF BAMBOOS\0" "MAHJONG TILE EIGHT OF CHARACTERS\0" "MAHJONG TILE EIGHT OF CIRCLES\0" "MAHJONG TILE FIVE OF BAMBOOS\0" "MAHJONG TILE FIVE OF CHARACTERS\0" "MAHJONG TILE FIVE OF CIRCLES\0" "MAHJONG TILE FOUR OF BAMBOOS\0" "MAHJONG TILE FOUR OF CHARACTERS\0" "MAHJONG TILE FOUR OF CIRCLES\0" "MAHJONG TILE GREEN DRAGON\0" "MAHJONG TILE JOKER\0" "MAHJONG TILE NINE OF BAMBOOS\0" "MAHJONG TILE NINE OF CHARACTERS\0" "MAHJONG TILE NINE OF CIRCLES\0" "MAHJONG TILE NORTH WIND\0" "MAHJONG TILE ONE OF BAMBOOS\0" "MAHJONG TILE ONE OF CHARACTERS\0" "MAHJONG TILE ONE OF CIRCLES\0" "MAHJONG TILE ORCHID\0" "MAHJONG TILE PLUM\0" "MAHJONG TILE RED DRAGON\0" "MAHJONG TILE SEVEN OF BAMBOOS\0" "MAHJONG TILE SEVEN OF CHARACTERS\0" "MAHJONG TILE SEVEN OF CIRCLES\0" "MAHJONG TILE SIX OF BAMBOOS\0" "MAHJONG TILE SIX OF CHARACTERS\0" "MAHJONG TILE SIX OF CIRCLES\0" "MAHJONG TILE SOUTH WIND\0" "MAHJONG TILE SPRING\0" "MAHJONG TILE SUMMER\0" "MAHJONG TILE THREE OF BAMBOOS\0" "MAHJONG TILE THREE OF CHARACTERS\0" "MAHJONG TILE THREE OF CIRCLES\0" "MAHJONG TILE TWO OF BAMBOOS\0" "MAHJONG TILE TWO OF CHARACTERS\0" "MAHJONG TILE TWO OF CIRCLES\0" "MAHJONG TILE WEST WIND\0" "MAHJONG TILE WHITE DRAGON\0" "MAHJONG TILE WINTER\0" "MALAYALAM AU LENGTH MARK\0" "MALAYALAM DATE MARK\0" "MALAYALAM DIGIT EIGHT\0" "MALAYALAM DIGIT FIVE\0" "MALAYALAM DIGIT FOUR\0" "MALAYALAM DIGIT NINE\0" "MALAYALAM DIGIT ONE\0" "MALAYALAM DIGIT SEVEN\0" "MALAYALAM DIGIT SIX\0" "MALAYALAM DIGIT THREE\0" "MALAYALAM DIGIT TWO\0" "MALAYALAM DIGIT ZERO\0" "MALAYALAM FRACTION ONE HALF\0" "MALAYALAM FRACTION ONE QUARTER\0" "MALAYALAM FRACTION THREE QUARTERS\0" "MALAYALAM LETTER A\0" "MALAYALAM LETTER AA\0" "MALAYALAM LETTER AI\0" "MALAYALAM LETTER AU\0" "MALAYALAM LETTER BA\0" "MALAYALAM LETTER BHA\0" "MALAYALAM LETTER CA\0" "MALAYALAM LETTER CHA\0" "MALAYALAM LETTER CHILLU K\0" "MALAYALAM LETTER CHILLU L\0" "MALAYALAM LETTER CHILLU LL\0" "MALAYALAM LETTER CHILLU N\0" "MALAYALAM LETTER CHILLU NN\0" "MALAYALAM LETTER CHILLU RR\0" "MALAYALAM LETTER DA\0" "MALAYALAM LETTER DDA\0" "MALAYALAM LETTER DDHA\0" "MALAYALAM LETTER DHA\0" "MALAYALAM LETTER DOT REPH\0" "MALAYALAM LETTER E\0" "MALAYALAM LETTER EE\0" "MALAYALAM LETTER GA\0" "MALAYALAM LETTER GHA\0" "MALAYALAM LETTER HA\0" "MALAYALAM LETTER I\0" "MALAYALAM LETTER II\0" "MALAYALAM LETTER JA\0" "MALAYALAM LETTER JHA\0" "MALAYALAM LETTER KA\0" "MALAYALAM LETTER KHA\0" "MALAYALAM LETTER LA\0" "MALAYALAM LETTER LLA\0" "MALAYALAM LETTER LLLA\0" "MALAYALAM LETTER MA\0" "MALAYALAM LETTER NA\0" "MALAYALAM LETTER NGA\0" "MALAYALAM LETTER NNA\0" "MALAYALAM LETTER NNNA\0" "MALAYALAM LETTER NYA\0" "MALAYALAM LETTER O\0" "MALAYALAM LETTER OO\0" "MALAYALAM LETTER PA\0" "MALAYALAM LETTER PHA\0" "MALAYALAM LETTER RA\0" "MALAYALAM LETTER RRA\0" "MALAYALAM LETTER SA\0" "MALAYALAM LETTER SHA\0" "MALAYALAM LETTER SSA\0" "MALAYALAM LETTER TA\0" "MALAYALAM LETTER THA\0" "MALAYALAM LETTER TTA\0" "MALAYALAM LETTER TTHA\0" "MALAYALAM LETTER TTTA\0" "MALAYALAM LETTER U\0" "MALAYALAM LETTER UU\0" "MALAYALAM LETTER VA\0" "MALAYALAM LETTER VOCALIC L\0" "MALAYALAM LETTER VOCALIC LL\0" "MALAYALAM LETTER VOCALIC R\0" "MALAYALAM LETTER VOCALIC RR\0" "MALAYALAM LETTER YA\0" "MALAYALAM NUMBER ONE HUNDRED\0" "MALAYALAM NUMBER ONE THOUSAND\0" "MALAYALAM NUMBER TEN\0" "MALAYALAM SIGN ANUSVARA\0" "MALAYALAM SIGN AVAGRAHA\0" "MALAYALAM SIGN VIRAMA\0" "MALAYALAM SIGN VISARGA\0" "MALAYALAM VOWEL SIGN AA\0" "MALAYALAM VOWEL SIGN AI\0" "MALAYALAM VOWEL SIGN AU\0" "MALAYALAM VOWEL SIGN E\0" "MALAYALAM VOWEL SIGN EE\0" "MALAYALAM VOWEL SIGN I\0" "MALAYALAM VOWEL SIGN II\0" "MALAYALAM VOWEL SIGN O\0" "MALAYALAM VOWEL SIGN OO\0" "MALAYALAM VOWEL SIGN U\0" "MALAYALAM VOWEL SIGN UU\0" "MALAYALAM VOWEL SIGN VOCALIC L\0" "MALAYALAM VOWEL SIGN VOCALIC LL\0" "MALAYALAM VOWEL SIGN VOCALIC R\0" "MALAYALAM VOWEL SIGN VOCALIC RR\0" "MALE AND FEMALE SIGN\0" "MALE SIGN\0" "MALE WITH STROKE AND MALE AND FEMALE SIGN\0" "MALE WITH STROKE SIGN\0" "MALTESE CROSS\0" "MAN\0" "MAN AND WOMAN HOLDING HANDS\0" "MAN WITH GUA PI MAO\0" "MAN WITH TURBAN\0" "MANDAIC AFFRICATION MARK\0" "MANDAIC GEMINATION MARK\0" "MANDAIC LETTER AB\0" "MANDAIC LETTER AD\0" "MANDAIC LETTER AG\0" "MANDAIC LETTER AH\0" "MANDAIC LETTER AIN\0" "MANDAIC LETTER AK\0" "MANDAIC LETTER AKSA\0" "MANDAIC LETTER AL\0" "MANDAIC LETTER AM\0" "MANDAIC LETTER AN\0" "MANDAIC LETTER AP\0" "MANDAIC LETTER AQ\0" "MANDAIC LETTER AR\0" "MANDAIC LETTER AS\0" "MANDAIC LETTER ASH\0" "MANDAIC LETTER ASZ\0" "MANDAIC LETTER AT\0" "MANDAIC LETTER ATT\0" "MANDAIC LETTER AZ\0" "MANDAIC LETTER DUSHENNA\0" "MANDAIC LETTER HALQA\0" "MANDAIC LETTER IN\0" "MANDAIC LETTER IT\0" "MANDAIC LETTER KAD\0" "MANDAIC LETTER USHENNA\0" "MANDAIC PUNCTUATION\0" "MANDAIC VOCALIZATION MARK\0" "MANS SHOE\0" "MAP SYMBOL FOR LIGHTHOUSE\0" "MAPLE LEAF\0" "MARRIAGE SYMBOL\0" "MASCULINE ORDINAL INDICATOR\0" "MASU MARK\0" "MATHEMATICAL BOLD CAPITAL A\0" "MATHEMATICAL BOLD CAPITAL ALPHA\0" "MATHEMATICAL BOLD CAPITAL B\0" "MATHEMATICAL BOLD CAPITAL BETA\0" "MATHEMATICAL BOLD CAPITAL C\0" "MATHEMATICAL BOLD CAPITAL CHI\0" "MATHEMATICAL BOLD CAPITAL D\0" "MATHEMATICAL BOLD CAPITAL DELTA\0" "MATHEMATICAL BOLD CAPITAL DIGAMMA\0" "MATHEMATICAL BOLD CAPITAL E\0" "MATHEMATICAL BOLD CAPITAL EPSILON\0" "MATHEMATICAL BOLD CAPITAL ETA\0" "MATHEMATICAL BOLD CAPITAL F\0" "MATHEMATICAL BOLD CAPITAL G\0" "MATHEMATICAL BOLD CAPITAL GAMMA\0" "MATHEMATICAL BOLD CAPITAL H\0" "MATHEMATICAL BOLD CAPITAL I\0" "MATHEMATICAL BOLD CAPITAL IOTA\0" "MATHEMATICAL BOLD CAPITAL J\0" "MATHEMATICAL BOLD CAPITAL K\0" "MATHEMATICAL BOLD CAPITAL KAPPA\0" "MATHEMATICAL BOLD CAPITAL L\0" "MATHEMATICAL BOLD CAPITAL LAMDA\0" "MATHEMATICAL BOLD CAPITAL M\0" "MATHEMATICAL BOLD CAPITAL MU\0" "MATHEMATICAL BOLD CAPITAL N\0" "MATHEMATICAL BOLD CAPITAL NU\0" "MATHEMATICAL BOLD CAPITAL O\0" "MATHEMATICAL BOLD CAPITAL OMEGA\0" "MATHEMATICAL BOLD CAPITAL OMICRON\0" "MATHEMATICAL BOLD CAPITAL P\0" "MATHEMATICAL BOLD CAPITAL PHI\0" "MATHEMATICAL BOLD CAPITAL PI\0" "MATHEMATICAL BOLD CAPITAL PSI\0" "MATHEMATICAL BOLD CAPITAL Q\0" "MATHEMATICAL BOLD CAPITAL R\0" "MATHEMATICAL BOLD CAPITAL RHO\0" "MATHEMATICAL BOLD CAPITAL S\0" "MATHEMATICAL BOLD CAPITAL SIGMA\0" "MATHEMATICAL BOLD CAPITAL T\0" "MATHEMATICAL BOLD CAPITAL TAU\0" "MATHEMATICAL BOLD CAPITAL THETA\0" "MATHEMATICAL BOLD CAPITAL THETA SYMBOL\0" "MATHEMATICAL BOLD CAPITAL U\0" "MATHEMATICAL BOLD CAPITAL UPSILON\0" "MATHEMATICAL BOLD CAPITAL V\0" "MATHEMATICAL BOLD CAPITAL W\0" "MATHEMATICAL BOLD CAPITAL X\0" "MATHEMATICAL BOLD CAPITAL XI\0" "MATHEMATICAL BOLD CAPITAL Y\0" "MATHEMATICAL BOLD CAPITAL Z\0" "MATHEMATICAL BOLD CAPITAL ZETA\0" "MATHEMATICAL BOLD DIGIT EIGHT\0" "MATHEMATICAL BOLD DIGIT FIVE\0" "MATHEMATICAL BOLD DIGIT FOUR\0" "MATHEMATICAL BOLD DIGIT NINE\0" "MATHEMATICAL BOLD DIGIT ONE\0" "MATHEMATICAL BOLD DIGIT SEVEN\0" "MATHEMATICAL BOLD DIGIT SIX\0" "MATHEMATICAL BOLD DIGIT THREE\0" "MATHEMATICAL BOLD DIGIT TWO\0" "MATHEMATICAL BOLD DIGIT ZERO\0" "MATHEMATICAL BOLD EPSILON SYMBOL\0" "MATHEMATICAL BOLD FRAKTUR CAPITAL A\0" "MATHEMATICAL BOLD FRAKTUR CAPITAL B\0" "MATHEMATICAL BOLD FRAKTUR CAPITAL C\0" "MATHEMATICAL BOLD FRAKTUR CAPITAL D\0" "MATHEMATICAL BOLD FRAKTUR CAPITAL E\0" "MATHEMATICAL BOLD FRAKTUR CAPITAL F\0" "MATHEMATICAL BOLD FRAKTUR CAPITAL G\0" "MATHEMATICAL BOLD FRAKTUR CAPITAL H\0" "MATHEMATICAL BOLD FRAKTUR CAPITAL I\0" "MATHEMATICAL BOLD FRAKTUR CAPITAL J\0" "MATHEMATICAL BOLD FRAKTUR CAPITAL K\0" "MATHEMATICAL BOLD FRAKTUR CAPITAL L\0" "MATHEMATICAL BOLD FRAKTUR CAPITAL M\0" "MATHEMATICAL BOLD FRAKTUR CAPITAL N\0" "MATHEMATICAL BOLD FRAKTUR CAPITAL O\0" "MATHEMATICAL BOLD FRAKTUR CAPITAL P\0" "MATHEMATICAL BOLD FRAKTUR CAPITAL Q\0" "MATHEMATICAL BOLD FRAKTUR CAPITAL R\0" "MATHEMATICAL BOLD FRAKTUR CAPITAL S\0" "MATHEMATICAL BOLD FRAKTUR CAPITAL T\0" "MATHEMATICAL BOLD FRAKTUR CAPITAL U\0" "MATHEMATICAL BOLD FRAKTUR CAPITAL V\0" "MATHEMATICAL BOLD FRAKTUR CAPITAL W\0" "MATHEMATICAL BOLD FRAKTUR CAPITAL X\0" "MATHEMATICAL BOLD FRAKTUR CAPITAL Y\0" "MATHEMATICAL BOLD FRAKTUR CAPITAL Z\0" "MATHEMATICAL BOLD FRAKTUR SMALL A\0" "MATHEMATICAL BOLD FRAKTUR SMALL B\0" "MATHEMATICAL BOLD FRAKTUR SMALL C\0" "MATHEMATICAL BOLD FRAKTUR SMALL D\0" "MATHEMATICAL BOLD FRAKTUR SMALL E\0" "MATHEMATICAL BOLD FRAKTUR SMALL F\0" "MATHEMATICAL BOLD FRAKTUR SMALL G\0" "MATHEMATICAL BOLD FRAKTUR SMALL H\0" "MATHEMATICAL BOLD FRAKTUR SMALL I\0" "MATHEMATICAL BOLD FRAKTUR SMALL J\0" "MATHEMATICAL BOLD FRAKTUR SMALL K\0" "MATHEMATICAL BOLD FRAKTUR SMALL L\0" "MATHEMATICAL BOLD FRAKTUR SMALL M\0" "MATHEMATICAL BOLD FRAKTUR SMALL N\0" "MATHEMATICAL BOLD FRAKTUR SMALL O\0" "MATHEMATICAL BOLD FRAKTUR SMALL P\0" "MATHEMATICAL BOLD FRAKTUR SMALL Q\0" "MATHEMATICAL BOLD FRAKTUR SMALL R\0" "MATHEMATICAL BOLD FRAKTUR SMALL S\0" "MATHEMATICAL BOLD FRAKTUR SMALL T\0" "MATHEMATICAL BOLD FRAKTUR SMALL U\0" "MATHEMATICAL BOLD FRAKTUR SMALL V\0" "MATHEMATICAL BOLD FRAKTUR SMALL W\0" "MATHEMATICAL BOLD FRAKTUR SMALL X\0" "MATHEMATICAL BOLD FRAKTUR SMALL Y\0" "MATHEMATICAL BOLD FRAKTUR SMALL Z\0" "MATHEMATICAL BOLD ITALIC CAPITAL A\0" "MATHEMATICAL BOLD ITALIC CAPITAL ALPHA\0" "MATHEMATICAL BOLD ITALIC CAPITAL B\0" "MATHEMATICAL BOLD ITALIC CAPITAL BETA\0" "MATHEMATICAL BOLD ITALIC CAPITAL C\0" "MATHEMATICAL BOLD ITALIC CAPITAL CHI\0" "MATHEMATICAL BOLD ITALIC CAPITAL D\0" "MATHEMATICAL BOLD ITALIC CAPITAL DELTA\0" "MATHEMATICAL BOLD ITALIC CAPITAL E\0" "MATHEMATICAL BOLD ITALIC CAPITAL EPSILON\0" "MATHEMATICAL BOLD ITALIC CAPITAL ETA\0" "MATHEMATICAL BOLD ITALIC CAPITAL F\0" "MATHEMATICAL BOLD ITALIC CAPITAL G\0" "MATHEMATICAL BOLD ITALIC CAPITAL GAMMA\0" "MATHEMATICAL BOLD ITALIC CAPITAL H\0" "MATHEMATICAL BOLD ITALIC CAPITAL I\0" "MATHEMATICAL BOLD ITALIC CAPITAL IOTA\0" "MATHEMATICAL BOLD ITALIC CAPITAL J\0" "MATHEMATICAL BOLD ITALIC CAPITAL K\0" "MATHEMATICAL BOLD ITALIC CAPITAL KAPPA\0" "MATHEMATICAL BOLD ITALIC CAPITAL L\0" "MATHEMATICAL BOLD ITALIC CAPITAL LAMDA\0" "MATHEMATICAL BOLD ITALIC CAPITAL M\0" "MATHEMATICAL BOLD ITALIC CAPITAL MU\0" "MATHEMATICAL BOLD ITALIC CAPITAL N\0" "MATHEMATICAL BOLD ITALIC CAPITAL NU\0" "MATHEMATICAL BOLD ITALIC CAPITAL O\0" "MATHEMATICAL BOLD ITALIC CAPITAL OMEGA\0" "MATHEMATICAL BOLD ITALIC CAPITAL OMICRON\0" "MATHEMATICAL BOLD ITALIC CAPITAL P\0" "MATHEMATICAL BOLD ITALIC CAPITAL PHI\0" "MATHEMATICAL BOLD ITALIC CAPITAL PI\0" "MATHEMATICAL BOLD ITALIC CAPITAL PSI\0" "MATHEMATICAL BOLD ITALIC CAPITAL Q\0" "MATHEMATICAL BOLD ITALIC CAPITAL R\0" "MATHEMATICAL BOLD ITALIC CAPITAL RHO\0" "MATHEMATICAL BOLD ITALIC CAPITAL S\0" "MATHEMATICAL BOLD ITALIC CAPITAL SIGMA\0" "MATHEMATICAL BOLD ITALIC CAPITAL T\0" "MATHEMATICAL BOLD ITALIC CAPITAL TAU\0" "MATHEMATICAL BOLD ITALIC CAPITAL THETA\0" "MATHEMATICAL BOLD ITALIC CAPITAL THETA SYMBOL\0" "MATHEMATICAL BOLD ITALIC CAPITAL U\0" "MATHEMATICAL BOLD ITALIC CAPITAL UPSILON\0" "MATHEMATICAL BOLD ITALIC CAPITAL V\0" "MATHEMATICAL BOLD ITALIC CAPITAL W\0" "MATHEMATICAL BOLD ITALIC CAPITAL X\0" "MATHEMATICAL BOLD ITALIC CAPITAL XI\0" "MATHEMATICAL BOLD ITALIC CAPITAL Y\0" "MATHEMATICAL BOLD ITALIC CAPITAL Z\0" "MATHEMATICAL BOLD ITALIC CAPITAL ZETA\0" "MATHEMATICAL BOLD ITALIC EPSILON SYMBOL\0" "MATHEMATICAL BOLD ITALIC KAPPA SYMBOL\0" "MATHEMATICAL BOLD ITALIC NABLA\0" "MATHEMATICAL BOLD ITALIC PARTIAL DIFFERENTIAL\0" "MATHEMATICAL BOLD ITALIC PHI SYMBOL\0" "MATHEMATICAL BOLD ITALIC PI SYMBOL\0" "MATHEMATICAL BOLD ITALIC RHO SYMBOL\0" "MATHEMATICAL BOLD ITALIC SMALL A\0" "MATHEMATICAL BOLD ITALIC SMALL ALPHA\0" "MATHEMATICAL BOLD ITALIC SMALL B\0" "MATHEMATICAL BOLD ITALIC SMALL BETA\0" "MATHEMATICAL BOLD ITALIC SMALL C\0" "MATHEMATICAL BOLD ITALIC SMALL CHI\0" "MATHEMATICAL BOLD ITALIC SMALL D\0" "MATHEMATICAL BOLD ITALIC SMALL DELTA\0" "MATHEMATICAL BOLD ITALIC SMALL E\0" "MATHEMATICAL BOLD ITALIC SMALL EPSILON\0" "MATHEMATICAL BOLD ITALIC SMALL ETA\0" "MATHEMATICAL BOLD ITALIC SMALL F\0" "MATHEMATICAL BOLD ITALIC SMALL FINAL SIGMA\0" "MATHEMATICAL BOLD ITALIC SMALL G\0" "MATHEMATICAL BOLD ITALIC SMALL GAMMA\0" "MATHEMATICAL BOLD ITALIC SMALL H\0" "MATHEMATICAL BOLD ITALIC SMALL I\0" "MATHEMATICAL BOLD ITALIC SMALL IOTA\0" "MATHEMATICAL BOLD ITALIC SMALL J\0" "MATHEMATICAL BOLD ITALIC SMALL K\0" "MATHEMATICAL BOLD ITALIC SMALL KAPPA\0" "MATHEMATICAL BOLD ITALIC SMALL L\0" "MATHEMATICAL BOLD ITALIC SMALL LAMDA\0" "MATHEMATICAL BOLD ITALIC SMALL M\0" "MATHEMATICAL BOLD ITALIC SMALL MU\0" "MATHEMATICAL BOLD ITALIC SMALL N\0" "MATHEMATICAL BOLD ITALIC SMALL NU\0" "MATHEMATICAL BOLD ITALIC SMALL O\0" "MATHEMATICAL BOLD ITALIC SMALL OMEGA\0" "MATHEMATICAL BOLD ITALIC SMALL OMICRON\0" "MATHEMATICAL BOLD ITALIC SMALL P\0" "MATHEMATICAL BOLD ITALIC SMALL PHI\0" "MATHEMATICAL BOLD ITALIC SMALL PI\0" "MATHEMATICAL BOLD ITALIC SMALL PSI\0" "MATHEMATICAL BOLD ITALIC SMALL Q\0" "MATHEMATICAL BOLD ITALIC SMALL R\0" "MATHEMATICAL BOLD ITALIC SMALL RHO\0" "MATHEMATICAL BOLD ITALIC SMALL S\0" "MATHEMATICAL BOLD ITALIC SMALL SIGMA\0" "MATHEMATICAL BOLD ITALIC SMALL T\0" "MATHEMATICAL BOLD ITALIC SMALL TAU\0" "MATHEMATICAL BOLD ITALIC SMALL THETA\0" "MATHEMATICAL BOLD ITALIC SMALL U\0" "MATHEMATICAL BOLD ITALIC SMALL UPSILON\0" "MATHEMATICAL BOLD ITALIC SMALL V\0" "MATHEMATICAL BOLD ITALIC SMALL W\0" "MATHEMATICAL BOLD ITALIC SMALL X\0" "MATHEMATICAL BOLD ITALIC SMALL XI\0" "MATHEMATICAL BOLD ITALIC SMALL Y\0" "MATHEMATICAL BOLD ITALIC SMALL Z\0" "MATHEMATICAL BOLD ITALIC SMALL ZETA\0" "MATHEMATICAL BOLD ITALIC THETA SYMBOL\0" "MATHEMATICAL BOLD KAPPA SYMBOL\0" "MATHEMATICAL BOLD NABLA\0" "MATHEMATICAL BOLD PARTIAL DIFFERENTIAL\0" "MATHEMATICAL BOLD PHI SYMBOL\0" "MATHEMATICAL BOLD PI SYMBOL\0" "MATHEMATICAL BOLD RHO SYMBOL\0" "MATHEMATICAL BOLD SCRIPT CAPITAL A\0" "MATHEMATICAL BOLD SCRIPT CAPITAL B\0" "MATHEMATICAL BOLD SCRIPT CAPITAL C\0" "MATHEMATICAL BOLD SCRIPT CAPITAL D\0" "MATHEMATICAL BOLD SCRIPT CAPITAL E\0" "MATHEMATICAL BOLD SCRIPT CAPITAL F\0" "MATHEMATICAL BOLD SCRIPT CAPITAL G\0" "MATHEMATICAL BOLD SCRIPT CAPITAL H\0" "MATHEMATICAL BOLD SCRIPT CAPITAL I\0" "MATHEMATICAL BOLD SCRIPT CAPITAL J\0" "MATHEMATICAL BOLD SCRIPT CAPITAL K\0" "MATHEMATICAL BOLD SCRIPT CAPITAL L\0" "MATHEMATICAL BOLD SCRIPT CAPITAL M\0" "MATHEMATICAL BOLD SCRIPT CAPITAL N\0" "MATHEMATICAL BOLD SCRIPT CAPITAL O\0" "MATHEMATICAL BOLD SCRIPT CAPITAL P\0" "MATHEMATICAL BOLD SCRIPT CAPITAL Q\0" "MATHEMATICAL BOLD SCRIPT CAPITAL R\0" "MATHEMATICAL BOLD SCRIPT CAPITAL S\0" "MATHEMATICAL BOLD SCRIPT CAPITAL T\0" "MATHEMATICAL BOLD SCRIPT CAPITAL U\0" "MATHEMATICAL BOLD SCRIPT CAPITAL V\0" "MATHEMATICAL BOLD SCRIPT CAPITAL W\0" "MATHEMATICAL BOLD SCRIPT CAPITAL X\0" "MATHEMATICAL BOLD SCRIPT CAPITAL Y\0" "MATHEMATICAL BOLD SCRIPT CAPITAL Z\0" "MATHEMATICAL BOLD SCRIPT SMALL A\0" "MATHEMATICAL BOLD SCRIPT SMALL B\0" "MATHEMATICAL BOLD SCRIPT SMALL C\0" "MATHEMATICAL BOLD SCRIPT SMALL D\0" "MATHEMATICAL BOLD SCRIPT SMALL E\0" "MATHEMATICAL BOLD SCRIPT SMALL F\0" "MATHEMATICAL BOLD SCRIPT SMALL G\0" "MATHEMATICAL BOLD SCRIPT SMALL H\0" "MATHEMATICAL BOLD SCRIPT SMALL I\0" "MATHEMATICAL BOLD SCRIPT SMALL J\0" "MATHEMATICAL BOLD SCRIPT SMALL K\0" "MATHEMATICAL BOLD SCRIPT SMALL L\0" "MATHEMATICAL BOLD SCRIPT SMALL M\0" "MATHEMATICAL BOLD SCRIPT SMALL N\0" "MATHEMATICAL BOLD SCRIPT SMALL O\0" "MATHEMATICAL BOLD SCRIPT SMALL P\0" "MATHEMATICAL BOLD SCRIPT SMALL Q\0" "MATHEMATICAL BOLD SCRIPT SMALL R\0" "MATHEMATICAL BOLD SCRIPT SMALL S\0" "MATHEMATICAL BOLD SCRIPT SMALL T\0" "MATHEMATICAL BOLD SCRIPT SMALL U\0" "MATHEMATICAL BOLD SCRIPT SMALL V\0" "MATHEMATICAL BOLD SCRIPT SMALL W\0" "MATHEMATICAL BOLD SCRIPT SMALL X\0" "MATHEMATICAL BOLD SCRIPT SMALL Y\0" "MATHEMATICAL BOLD SCRIPT SMALL Z\0" "MATHEMATICAL BOLD SMALL A\0" "MATHEMATICAL BOLD SMALL ALPHA\0" "MATHEMATICAL BOLD SMALL B\0" "MATHEMATICAL BOLD SMALL BETA\0" "MATHEMATICAL BOLD SMALL C\0" "MATHEMATICAL BOLD SMALL CHI\0" "MATHEMATICAL BOLD SMALL D\0" "MATHEMATICAL BOLD SMALL DELTA\0" "MATHEMATICAL BOLD SMALL DIGAMMA\0" "MATHEMATICAL BOLD SMALL E\0" "MATHEMATICAL BOLD SMALL EPSILON\0" "MATHEMATICAL BOLD SMALL ETA\0" "MATHEMATICAL BOLD SMALL F\0" "MATHEMATICAL BOLD SMALL FINAL SIGMA\0" "MATHEMATICAL BOLD SMALL G\0" "MATHEMATICAL BOLD SMALL GAMMA\0" "MATHEMATICAL BOLD SMALL H\0" "MATHEMATICAL BOLD SMALL I\0" "MATHEMATICAL BOLD SMALL IOTA\0" "MATHEMATICAL BOLD SMALL J\0" "MATHEMATICAL BOLD SMALL K\0" "MATHEMATICAL BOLD SMALL KAPPA\0" "MATHEMATICAL BOLD SMALL L\0" "MATHEMATICAL BOLD SMALL LAMDA\0" "MATHEMATICAL BOLD SMALL M\0" "MATHEMATICAL BOLD SMALL MU\0" "MATHEMATICAL BOLD SMALL N\0" "MATHEMATICAL BOLD SMALL NU\0" "MATHEMATICAL BOLD SMALL O\0" "MATHEMATICAL BOLD SMALL OMEGA\0" "MATHEMATICAL BOLD SMALL OMICRON\0" "MATHEMATICAL BOLD SMALL P\0" "MATHEMATICAL BOLD SMALL PHI\0" "MATHEMATICAL BOLD SMALL PI\0" "MATHEMATICAL BOLD SMALL PSI\0" "MATHEMATICAL BOLD SMALL Q\0" "MATHEMATICAL BOLD SMALL R\0" "MATHEMATICAL BOLD SMALL RHO\0" "MATHEMATICAL BOLD SMALL S\0" "MATHEMATICAL BOLD SMALL SIGMA\0" "MATHEMATICAL BOLD SMALL T\0" "MATHEMATICAL BOLD SMALL TAU\0" "MATHEMATICAL BOLD SMALL THETA\0" "MATHEMATICAL BOLD SMALL U\0" "MATHEMATICAL BOLD SMALL UPSILON\0" "MATHEMATICAL BOLD SMALL V\0" "MATHEMATICAL BOLD SMALL W\0" "MATHEMATICAL BOLD SMALL X\0" "MATHEMATICAL BOLD SMALL XI\0" "MATHEMATICAL BOLD SMALL Y\0" "MATHEMATICAL BOLD SMALL Z\0" "MATHEMATICAL BOLD SMALL ZETA\0" "MATHEMATICAL BOLD THETA SYMBOL\0" "MATHEMATICAL DOUBLE-STRUCK CAPITAL A\0" "MATHEMATICAL DOUBLE-STRUCK CAPITAL B\0" "MATHEMATICAL DOUBLE-STRUCK CAPITAL D\0" "MATHEMATICAL DOUBLE-STRUCK CAPITAL E\0" "MATHEMATICAL DOUBLE-STRUCK CAPITAL F\0" "MATHEMATICAL DOUBLE-STRUCK CAPITAL G\0" "MATHEMATICAL DOUBLE-STRUCK CAPITAL I\0" "MATHEMATICAL DOUBLE-STRUCK CAPITAL J\0" "MATHEMATICAL DOUBLE-STRUCK CAPITAL K\0" "MATHEMATICAL DOUBLE-STRUCK CAPITAL L\0" "MATHEMATICAL DOUBLE-STRUCK CAPITAL M\0" "MATHEMATICAL DOUBLE-STRUCK CAPITAL O\0" "MATHEMATICAL DOUBLE-STRUCK CAPITAL S\0" "MATHEMATICAL DOUBLE-STRUCK CAPITAL T\0" "MATHEMATICAL DOUBLE-STRUCK CAPITAL U\0" "MATHEMATICAL DOUBLE-STRUCK CAPITAL V\0" "MATHEMATICAL DOUBLE-STRUCK CAPITAL W\0" "MATHEMATICAL DOUBLE-STRUCK CAPITAL X\0" "MATHEMATICAL DOUBLE-STRUCK CAPITAL Y\0" "MATHEMATICAL DOUBLE-STRUCK DIGIT EIGHT\0" "MATHEMATICAL DOUBLE-STRUCK DIGIT FIVE\0" "MATHEMATICAL DOUBLE-STRUCK DIGIT FOUR\0" "MATHEMATICAL DOUBLE-STRUCK DIGIT NINE\0" "MATHEMATICAL DOUBLE-STRUCK DIGIT ONE\0" "MATHEMATICAL DOUBLE-STRUCK DIGIT SEVEN\0" "MATHEMATICAL DOUBLE-STRUCK DIGIT SIX\0" "MATHEMATICAL DOUBLE-STRUCK DIGIT THREE\0" "MATHEMATICAL DOUBLE-STRUCK DIGIT TWO\0" "MATHEMATICAL DOUBLE-STRUCK DIGIT ZERO\0" "MATHEMATICAL DOUBLE-STRUCK SMALL A\0" "MATHEMATICAL DOUBLE-STRUCK SMALL B\0" "MATHEMATICAL DOUBLE-STRUCK SMALL C\0" "MATHEMATICAL DOUBLE-STRUCK SMALL D\0" "MATHEMATICAL DOUBLE-STRUCK SMALL E\0" "MATHEMATICAL DOUBLE-STRUCK SMALL F\0" "MATHEMATICAL DOUBLE-STRUCK SMALL G\0" "MATHEMATICAL DOUBLE-STRUCK SMALL H\0" "MATHEMATICAL DOUBLE-STRUCK SMALL I\0" "MATHEMATICAL DOUBLE-STRUCK SMALL J\0" "MATHEMATICAL DOUBLE-STRUCK SMALL K\0" "MATHEMATICAL DOUBLE-STRUCK SMALL L\0" "MATHEMATICAL DOUBLE-STRUCK SMALL M\0" "MATHEMATICAL DOUBLE-STRUCK SMALL N\0" "MATHEMATICAL DOUBLE-STRUCK SMALL O\0" "MATHEMATICAL DOUBLE-STRUCK SMALL P\0" "MATHEMATICAL DOUBLE-STRUCK SMALL Q\0" "MATHEMATICAL DOUBLE-STRUCK SMALL R\0" "MATHEMATICAL DOUBLE-STRUCK SMALL S\0" "MATHEMATICAL DOUBLE-STRUCK SMALL T\0" "MATHEMATICAL DOUBLE-STRUCK SMALL U\0" "MATHEMATICAL DOUBLE-STRUCK SMALL V\0" "MATHEMATICAL DOUBLE-STRUCK SMALL W\0" "MATHEMATICAL DOUBLE-STRUCK SMALL X\0" "MATHEMATICAL DOUBLE-STRUCK SMALL Y\0" "MATHEMATICAL DOUBLE-STRUCK SMALL Z\0" "MATHEMATICAL FRAKTUR CAPITAL A\0" "MATHEMATICAL FRAKTUR CAPITAL B\0" "MATHEMATICAL FRAKTUR CAPITAL D\0" "MATHEMATICAL FRAKTUR CAPITAL E\0" "MATHEMATICAL FRAKTUR CAPITAL F\0" "MATHEMATICAL FRAKTUR CAPITAL G\0" "MATHEMATICAL FRAKTUR CAPITAL J\0" "MATHEMATICAL FRAKTUR CAPITAL K\0" "MATHEMATICAL FRAKTUR CAPITAL L\0" "MATHEMATICAL FRAKTUR CAPITAL M\0" "MATHEMATICAL FRAKTUR CAPITAL N\0" "MATHEMATICAL FRAKTUR CAPITAL O\0" "MATHEMATICAL FRAKTUR CAPITAL P\0" "MATHEMATICAL FRAKTUR CAPITAL Q\0" "MATHEMATICAL FRAKTUR CAPITAL S\0" "MATHEMATICAL FRAKTUR CAPITAL T\0" "MATHEMATICAL FRAKTUR CAPITAL U\0" "MATHEMATICAL FRAKTUR CAPITAL V\0" "MATHEMATICAL FRAKTUR CAPITAL W\0" "MATHEMATICAL FRAKTUR CAPITAL X\0" "MATHEMATICAL FRAKTUR CAPITAL Y\0" "MATHEMATICAL FRAKTUR SMALL A\0" "MATHEMATICAL FRAKTUR SMALL B\0" "MATHEMATICAL FRAKTUR SMALL C\0" "MATHEMATICAL FRAKTUR SMALL D\0" "MATHEMATICAL FRAKTUR SMALL E\0" "MATHEMATICAL FRAKTUR SMALL F\0" "MATHEMATICAL FRAKTUR SMALL G\0" "MATHEMATICAL FRAKTUR SMALL H\0" "MATHEMATICAL FRAKTUR SMALL I\0" "MATHEMATICAL FRAKTUR SMALL J\0" "MATHEMATICAL FRAKTUR SMALL K\0" "MATHEMATICAL FRAKTUR SMALL L\0" "MATHEMATICAL FRAKTUR SMALL M\0" "MATHEMATICAL FRAKTUR SMALL N\0" "MATHEMATICAL FRAKTUR SMALL O\0" "MATHEMATICAL FRAKTUR SMALL P\0" "MATHEMATICAL FRAKTUR SMALL Q\0" "MATHEMATICAL FRAKTUR SMALL R\0" "MATHEMATICAL FRAKTUR SMALL S\0" "MATHEMATICAL FRAKTUR SMALL T\0" "MATHEMATICAL FRAKTUR SMALL U\0" "MATHEMATICAL FRAKTUR SMALL V\0" "MATHEMATICAL FRAKTUR SMALL W\0" "MATHEMATICAL FRAKTUR SMALL X\0" "MATHEMATICAL FRAKTUR SMALL Y\0" "MATHEMATICAL FRAKTUR SMALL Z\0" "MATHEMATICAL ITALIC CAPITAL A\0" "MATHEMATICAL ITALIC CAPITAL ALPHA\0" "MATHEMATICAL ITALIC CAPITAL B\0" "MATHEMATICAL ITALIC CAPITAL BETA\0" "MATHEMATICAL ITALIC CAPITAL C\0" "MATHEMATICAL ITALIC CAPITAL CHI\0" "MATHEMATICAL ITALIC CAPITAL D\0" "MATHEMATICAL ITALIC CAPITAL DELTA\0" "MATHEMATICAL ITALIC CAPITAL E\0" "MATHEMATICAL ITALIC CAPITAL EPSILON\0" "MATHEMATICAL ITALIC CAPITAL ETA\0" "MATHEMATICAL ITALIC CAPITAL F\0" "MATHEMATICAL ITALIC CAPITAL G\0" "MATHEMATICAL ITALIC CAPITAL GAMMA\0" "MATHEMATICAL ITALIC CAPITAL H\0" "MATHEMATICAL ITALIC CAPITAL I\0" "MATHEMATICAL ITALIC CAPITAL IOTA\0" "MATHEMATICAL ITALIC CAPITAL J\0" "MATHEMATICAL ITALIC CAPITAL K\0" "MATHEMATICAL ITALIC CAPITAL KAPPA\0" "MATHEMATICAL ITALIC CAPITAL L\0" "MATHEMATICAL ITALIC CAPITAL LAMDA\0" "MATHEMATICAL ITALIC CAPITAL M\0" "MATHEMATICAL ITALIC CAPITAL MU\0" "MATHEMATICAL ITALIC CAPITAL N\0" "MATHEMATICAL ITALIC CAPITAL NU\0" "MATHEMATICAL ITALIC CAPITAL O\0" "MATHEMATICAL ITALIC CAPITAL OMEGA\0" "MATHEMATICAL ITALIC CAPITAL OMICRON\0" "MATHEMATICAL ITALIC CAPITAL P\0" "MATHEMATICAL ITALIC CAPITAL PHI\0" "MATHEMATICAL ITALIC CAPITAL PI\0" "MATHEMATICAL ITALIC CAPITAL PSI\0" "MATHEMATICAL ITALIC CAPITAL Q\0" "MATHEMATICAL ITALIC CAPITAL R\0" "MATHEMATICAL ITALIC CAPITAL RHO\0" "MATHEMATICAL ITALIC CAPITAL S\0" "MATHEMATICAL ITALIC CAPITAL SIGMA\0" "MATHEMATICAL ITALIC CAPITAL T\0" "MATHEMATICAL ITALIC CAPITAL TAU\0" "MATHEMATICAL ITALIC CAPITAL THETA\0" "MATHEMATICAL ITALIC CAPITAL THETA SYMBOL\0" "MATHEMATICAL ITALIC CAPITAL U\0" "MATHEMATICAL ITALIC CAPITAL UPSILON\0" "MATHEMATICAL ITALIC CAPITAL V\0" "MATHEMATICAL ITALIC CAPITAL W\0" "MATHEMATICAL ITALIC CAPITAL X\0" "MATHEMATICAL ITALIC CAPITAL XI\0" "MATHEMATICAL ITALIC CAPITAL Y\0" "MATHEMATICAL ITALIC CAPITAL Z\0" "MATHEMATICAL ITALIC CAPITAL ZETA\0" "MATHEMATICAL ITALIC EPSILON SYMBOL\0" "MATHEMATICAL ITALIC KAPPA SYMBOL\0" "MATHEMATICAL ITALIC NABLA\0" "MATHEMATICAL ITALIC PARTIAL DIFFERENTIAL\0" "MATHEMATICAL ITALIC PHI SYMBOL\0" "MATHEMATICAL ITALIC PI SYMBOL\0" "MATHEMATICAL ITALIC RHO SYMBOL\0" "MATHEMATICAL ITALIC SMALL A\0" "MATHEMATICAL ITALIC SMALL ALPHA\0" "MATHEMATICAL ITALIC SMALL B\0" "MATHEMATICAL ITALIC SMALL BETA\0" "MATHEMATICAL ITALIC SMALL C\0" "MATHEMATICAL ITALIC SMALL CHI\0" "MATHEMATICAL ITALIC SMALL D\0" "MATHEMATICAL ITALIC SMALL DELTA\0" "MATHEMATICAL ITALIC SMALL DOTLESS I\0" "MATHEMATICAL ITALIC SMALL DOTLESS J\0" "MATHEMATICAL ITALIC SMALL E\0" "MATHEMATICAL ITALIC SMALL EPSILON\0" "MATHEMATICAL ITALIC SMALL ETA\0" "MATHEMATICAL ITALIC SMALL F\0" "MATHEMATICAL ITALIC SMALL FINAL SIGMA\0" "MATHEMATICAL ITALIC SMALL G\0" "MATHEMATICAL ITALIC SMALL GAMMA\0" "MATHEMATICAL ITALIC SMALL I\0" "MATHEMATICAL ITALIC SMALL IOTA\0" "MATHEMATICAL ITALIC SMALL J\0" "MATHEMATICAL ITALIC SMALL K\0" "MATHEMATICAL ITALIC SMALL KAPPA\0" "MATHEMATICAL ITALIC SMALL L\0" "MATHEMATICAL ITALIC SMALL LAMDA\0" "MATHEMATICAL ITALIC SMALL M\0" "MATHEMATICAL ITALIC SMALL MU\0" "MATHEMATICAL ITALIC SMALL N\0" "MATHEMATICAL ITALIC SMALL NU\0" "MATHEMATICAL ITALIC SMALL O\0" "MATHEMATICAL ITALIC SMALL OMEGA\0" "MATHEMATICAL ITALIC SMALL OMICRON\0" "MATHEMATICAL ITALIC SMALL P\0" "MATHEMATICAL ITALIC SMALL PHI\0" "MATHEMATICAL ITALIC SMALL PI\0" "MATHEMATICAL ITALIC SMALL PSI\0" "MATHEMATICAL ITALIC SMALL Q\0" "MATHEMATICAL ITALIC SMALL R\0" "MATHEMATICAL ITALIC SMALL RHO\0" "MATHEMATICAL ITALIC SMALL S\0" "MATHEMATICAL ITALIC SMALL SIGMA\0" "MATHEMATICAL ITALIC SMALL T\0" "MATHEMATICAL ITALIC SMALL TAU\0" "MATHEMATICAL ITALIC SMALL THETA\0" "MATHEMATICAL ITALIC SMALL U\0" "MATHEMATICAL ITALIC SMALL UPSILON\0" "MATHEMATICAL ITALIC SMALL V\0" "MATHEMATICAL ITALIC SMALL W\0" "MATHEMATICAL ITALIC SMALL X\0" "MATHEMATICAL ITALIC SMALL XI\0" "MATHEMATICAL ITALIC SMALL Y\0" "MATHEMATICAL ITALIC SMALL Z\0" "MATHEMATICAL ITALIC SMALL ZETA\0" "MATHEMATICAL ITALIC THETA SYMBOL\0" "MATHEMATICAL LEFT ANGLE BRACKET\0" "MATHEMATICAL LEFT DOUBLE ANGLE BRACKET\0" "MATHEMATICAL LEFT FLATTENED PARENTHESIS\0" "MATHEMATICAL LEFT WHITE SQUARE BRACKET\0" "MATHEMATICAL LEFT WHITE TORTOISE SHELL BRACKET\0" "MATHEMATICAL MONOSPACE CAPITAL A\0" "MATHEMATICAL MONOSPACE CAPITAL B\0" "MATHEMATICAL MONOSPACE CAPITAL C\0" "MATHEMATICAL MONOSPACE CAPITAL D\0" "MATHEMATICAL MONOSPACE CAPITAL E\0" "MATHEMATICAL MONOSPACE CAPITAL F\0" "MATHEMATICAL MONOSPACE CAPITAL G\0" "MATHEMATICAL MONOSPACE CAPITAL H\0" "MATHEMATICAL MONOSPACE CAPITAL I\0" "MATHEMATICAL MONOSPACE CAPITAL J\0" "MATHEMATICAL MONOSPACE CAPITAL K\0" "MATHEMATICAL MONOSPACE CAPITAL L\0" "MATHEMATICAL MONOSPACE CAPITAL M\0" "MATHEMATICAL MONOSPACE CAPITAL N\0" "MATHEMATICAL MONOSPACE CAPITAL O\0" "MATHEMATICAL MONOSPACE CAPITAL P\0" "MATHEMATICAL MONOSPACE CAPITAL Q\0" "MATHEMATICAL MONOSPACE CAPITAL R\0" "MATHEMATICAL MONOSPACE CAPITAL S\0" "MATHEMATICAL MONOSPACE CAPITAL T\0" "MATHEMATICAL MONOSPACE CAPITAL U\0" "MATHEMATICAL MONOSPACE CAPITAL V\0" "MATHEMATICAL MONOSPACE CAPITAL W\0" "MATHEMATICAL MONOSPACE CAPITAL X\0" "MATHEMATICAL MONOSPACE CAPITAL Y\0" "MATHEMATICAL MONOSPACE CAPITAL Z\0" "MATHEMATICAL MONOSPACE DIGIT EIGHT\0" "MATHEMATICAL MONOSPACE DIGIT FIVE\0" "MATHEMATICAL MONOSPACE DIGIT FOUR\0" "MATHEMATICAL MONOSPACE DIGIT NINE\0" "MATHEMATICAL MONOSPACE DIGIT ONE\0" "MATHEMATICAL MONOSPACE DIGIT SEVEN\0" "MATHEMATICAL MONOSPACE DIGIT SIX\0" "MATHEMATICAL MONOSPACE DIGIT THREE\0" "MATHEMATICAL MONOSPACE DIGIT TWO\0" "MATHEMATICAL MONOSPACE DIGIT ZERO\0" "MATHEMATICAL MONOSPACE SMALL A\0" "MATHEMATICAL MONOSPACE SMALL B\0" "MATHEMATICAL MONOSPACE SMALL C\0" "MATHEMATICAL MONOSPACE SMALL D\0" "MATHEMATICAL MONOSPACE SMALL E\0" "MATHEMATICAL MONOSPACE SMALL F\0" "MATHEMATICAL MONOSPACE SMALL G\0" "MATHEMATICAL MONOSPACE SMALL H\0" "MATHEMATICAL MONOSPACE SMALL I\0" "MATHEMATICAL MONOSPACE SMALL J\0" "MATHEMATICAL MONOSPACE SMALL K\0" "MATHEMATICAL MONOSPACE SMALL L\0" "MATHEMATICAL MONOSPACE SMALL M\0" "MATHEMATICAL MONOSPACE SMALL N\0" "MATHEMATICAL MONOSPACE SMALL O\0" "MATHEMATICAL MONOSPACE SMALL P\0" "MATHEMATICAL MONOSPACE SMALL Q\0" "MATHEMATICAL MONOSPACE SMALL R\0" "MATHEMATICAL MONOSPACE SMALL S\0" "MATHEMATICAL MONOSPACE SMALL T\0" "MATHEMATICAL MONOSPACE SMALL U\0" "MATHEMATICAL MONOSPACE SMALL V\0" "MATHEMATICAL MONOSPACE SMALL W\0" "MATHEMATICAL MONOSPACE SMALL X\0" "MATHEMATICAL MONOSPACE SMALL Y\0" "MATHEMATICAL MONOSPACE SMALL Z\0" "MATHEMATICAL RIGHT ANGLE BRACKET\0" "MATHEMATICAL RIGHT DOUBLE ANGLE BRACKET\0" "MATHEMATICAL RIGHT FLATTENED PARENTHESIS\0" "MATHEMATICAL RIGHT WHITE SQUARE BRACKET\0" "MATHEMATICAL RIGHT WHITE TORTOISE SHELL BRACKET\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL A\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL ALPHA\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL B\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL BETA\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL C\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL CHI\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL D\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL DELTA\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL E\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL EPSILON\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL ETA\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL F\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL G\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL GAMMA\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL H\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL I\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL IOTA\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL J\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL K\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL KAPPA\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL L\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL LAMDA\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL M\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL MU\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL N\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL NU\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL O\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL OMEGA\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL OMICRON\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL P\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL PHI\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL PI\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL PSI\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL Q\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL R\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL RHO\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL S\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL SIGMA\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL T\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL TAU\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL THETA\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL THETA SYMBOL\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL U\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL UPSILON\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL V\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL W\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL X\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL XI\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL Y\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL Z\0" "MATHEMATICAL SANS-SERIF BOLD CAPITAL ZETA\0" "MATHEMATICAL SANS-SERIF BOLD DIGIT EIGHT\0" "MATHEMATICAL SANS-SERIF BOLD DIGIT FIVE\0" "MATHEMATICAL SANS-SERIF BOLD DIGIT FOUR\0" "MATHEMATICAL SANS-SERIF BOLD DIGIT NINE\0" "MATHEMATICAL SANS-SERIF BOLD DIGIT ONE\0" "MATHEMATICAL SANS-SERIF BOLD DIGIT SEVEN\0" "MATHEMATICAL SANS-SERIF BOLD DIGIT SIX\0" "MATHEMATICAL SANS-SERIF BOLD DIGIT THREE\0" "MATHEMATICAL SANS-SERIF BOLD DIGIT TWO\0" "MATHEMATICAL SANS-SERIF BOLD DIGIT ZERO\0" "MATHEMATICAL SANS-SERIF BOLD EPSILON SYMBOL\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL A\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL ALPHA\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL B\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL BETA\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL C\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL CHI\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL D\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL DELTA\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL E\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL EPSILON\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL ETA\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL F\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL G\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL GAMMA\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL H\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL I\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL IOTA\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL J\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL K\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL KAPPA\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL L\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL LAMDA\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL M\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL MU\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL N\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL NU\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL O\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL OMEGA\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL OMICRON\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL P\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL PHI\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL PI\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL PSI\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL Q\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL R\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL RHO\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL S\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL SIGMA\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL T\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL TAU\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL THETA\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL THETA SYMBOL\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL U\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL UPSILON\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL V\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL W\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL X\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL XI\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL Y\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL Z\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL ZETA\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC EPSILON SYMBOL\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC KAPPA SYMBOL\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC NABLA\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC PARTIAL DIFFERENTIAL\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC PHI SYMBOL\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC PI SYMBOL\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC RHO SYMBOL\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL A\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL ALPHA\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL B\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL BETA\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL C\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL CHI\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL D\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL DELTA\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL E\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL EPSILON\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL ETA\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL F\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL FINAL SIGMA\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL G\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL GAMMA\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL H\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL I\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL IOTA\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL J\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL K\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL KAPPA\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL L\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL LAMDA\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL M\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL MU\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL N\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL NU\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL O\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL OMEGA\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL OMICRON\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL P\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL PHI\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL PI\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL PSI\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL Q\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL R\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL RHO\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL S\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL SIGMA\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL T\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL TAU\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL THETA\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL U\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL UPSILON\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL V\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL W\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL X\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL XI\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL Y\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL Z\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL ZETA\0" "MATHEMATICAL SANS-SERIF BOLD ITALIC THETA SYMBOL\0" "MATHEMATICAL SANS-SERIF BOLD KAPPA SYMBOL\0" "MATHEMATICAL SANS-SERIF BOLD NABLA\0" "MATHEMATICAL SANS-SERIF BOLD PARTIAL DIFFERENTIAL\0" "MATHEMATICAL SANS-SERIF BOLD PHI SYMBOL\0" "MATHEMATICAL SANS-SERIF BOLD PI SYMBOL\0" "MATHEMATICAL SANS-SERIF BOLD RHO SYMBOL\0" "MATHEMATICAL SANS-SERIF BOLD SMALL A\0" "MATHEMATICAL SANS-SERIF BOLD SMALL ALPHA\0" "MATHEMATICAL SANS-SERIF BOLD SMALL B\0" "MATHEMATICAL SANS-SERIF BOLD SMALL BETA\0" "MATHEMATICAL SANS-SERIF BOLD SMALL C\0" "MATHEMATICAL SANS-SERIF BOLD SMALL CHI\0" "MATHEMATICAL SANS-SERIF BOLD SMALL D\0" "MATHEMATICAL SANS-SERIF BOLD SMALL DELTA\0" "MATHEMATICAL SANS-SERIF BOLD SMALL E\0" "MATHEMATICAL SANS-SERIF BOLD SMALL EPSILON\0" "MATHEMATICAL SANS-SERIF BOLD SMALL ETA\0" "MATHEMATICAL SANS-SERIF BOLD SMALL F\0" "MATHEMATICAL SANS-SERIF BOLD SMALL FINAL SIGMA\0" "MATHEMATICAL SANS-SERIF BOLD SMALL G\0" "MATHEMATICAL SANS-SERIF BOLD SMALL GAMMA\0" "MATHEMATICAL SANS-SERIF BOLD SMALL H\0" "MATHEMATICAL SANS-SERIF BOLD SMALL I\0" "MATHEMATICAL SANS-SERIF BOLD SMALL IOTA\0" "MATHEMATICAL SANS-SERIF BOLD SMALL J\0" "MATHEMATICAL SANS-SERIF BOLD SMALL K\0" "MATHEMATICAL SANS-SERIF BOLD SMALL KAPPA\0" "MATHEMATICAL SANS-SERIF BOLD SMALL L\0" "MATHEMATICAL SANS-SERIF BOLD SMALL LAMDA\0" "MATHEMATICAL SANS-SERIF BOLD SMALL M\0" "MATHEMATICAL SANS-SERIF BOLD SMALL MU\0" "MATHEMATICAL SANS-SERIF BOLD SMALL N\0" "MATHEMATICAL SANS-SERIF BOLD SMALL NU\0" "MATHEMATICAL SANS-SERIF BOLD SMALL O\0" "MATHEMATICAL SANS-SERIF BOLD SMALL OMEGA\0" "MATHEMATICAL SANS-SERIF BOLD SMALL OMICRON\0" "MATHEMATICAL SANS-SERIF BOLD SMALL P\0" "MATHEMATICAL SANS-SERIF BOLD SMALL PHI\0" "MATHEMATICAL SANS-SERIF BOLD SMALL PI\0" "MATHEMATICAL SANS-SERIF BOLD SMALL PSI\0" "MATHEMATICAL SANS-SERIF BOLD SMALL Q\0" "MATHEMATICAL SANS-SERIF BOLD SMALL R\0" "MATHEMATICAL SANS-SERIF BOLD SMALL RHO\0" "MATHEMATICAL SANS-SERIF BOLD SMALL S\0" "MATHEMATICAL SANS-SERIF BOLD SMALL SIGMA\0" "MATHEMATICAL SANS-SERIF BOLD SMALL T\0" "MATHEMATICAL SANS-SERIF BOLD SMALL TAU\0" "MATHEMATICAL SANS-SERIF BOLD SMALL THETA\0" "MATHEMATICAL SANS-SERIF BOLD SMALL U\0" "MATHEMATICAL SANS-SERIF BOLD SMALL UPSILON\0" "MATHEMATICAL SANS-SERIF BOLD SMALL V\0" "MATHEMATICAL SANS-SERIF BOLD SMALL W\0" "MATHEMATICAL SANS-SERIF BOLD SMALL X\0" "MATHEMATICAL SANS-SERIF BOLD SMALL XI\0" "MATHEMATICAL SANS-SERIF BOLD SMALL Y\0" "MATHEMATICAL SANS-SERIF BOLD SMALL Z\0" "MATHEMATICAL SANS-SERIF BOLD SMALL ZETA\0" "MATHEMATICAL SANS-SERIF BOLD THETA SYMBOL\0" "MATHEMATICAL SANS-SERIF CAPITAL A\0" "MATHEMATICAL SANS-SERIF CAPITAL B\0" "MATHEMATICAL SANS-SERIF CAPITAL C\0" "MATHEMATICAL SANS-SERIF CAPITAL D\0" "MATHEMATICAL SANS-SERIF CAPITAL E\0" "MATHEMATICAL SANS-SERIF CAPITAL F\0" "MATHEMATICAL SANS-SERIF CAPITAL G\0" "MATHEMATICAL SANS-SERIF CAPITAL H\0" "MATHEMATICAL SANS-SERIF CAPITAL I\0" "MATHEMATICAL SANS-SERIF CAPITAL J\0" "MATHEMATICAL SANS-SERIF CAPITAL K\0" "MATHEMATICAL SANS-SERIF CAPITAL L\0" "MATHEMATICAL SANS-SERIF CAPITAL M\0" "MATHEMATICAL SANS-SERIF CAPITAL N\0" "MATHEMATICAL SANS-SERIF CAPITAL O\0" "MATHEMATICAL SANS-SERIF CAPITAL P\0" "MATHEMATICAL SANS-SERIF CAPITAL Q\0" "MATHEMATICAL SANS-SERIF CAPITAL R\0" "MATHEMATICAL SANS-SERIF CAPITAL S\0" "MATHEMATICAL SANS-SERIF CAPITAL T\0" "MATHEMATICAL SANS-SERIF CAPITAL U\0" "MATHEMATICAL SANS-SERIF CAPITAL V\0" "MATHEMATICAL SANS-SERIF CAPITAL W\0" "MATHEMATICAL SANS-SERIF CAPITAL X\0" "MATHEMATICAL SANS-SERIF CAPITAL Y\0" "MATHEMATICAL SANS-SERIF CAPITAL Z\0" "MATHEMATICAL SANS-SERIF DIGIT EIGHT\0" "MATHEMATICAL SANS-SERIF DIGIT FIVE\0" "MATHEMATICAL SANS-SERIF DIGIT FOUR\0" "MATHEMATICAL SANS-SERIF DIGIT NINE\0" "MATHEMATICAL SANS-SERIF DIGIT ONE\0" "MATHEMATICAL SANS-SERIF DIGIT SEVEN\0" "MATHEMATICAL SANS-SERIF DIGIT SIX\0" "MATHEMATICAL SANS-SERIF DIGIT THREE\0" "MATHEMATICAL SANS-SERIF DIGIT TWO\0" "MATHEMATICAL SANS-SERIF DIGIT ZERO\0" "MATHEMATICAL SANS-SERIF ITALIC CAPITAL A\0" "MATHEMATICAL SANS-SERIF ITALIC CAPITAL B\0" "MATHEMATICAL SANS-SERIF ITALIC CAPITAL C\0" "MATHEMATICAL SANS-SERIF ITALIC CAPITAL D\0" "MATHEMATICAL SANS-SERIF ITALIC CAPITAL E\0" "MATHEMATICAL SANS-SERIF ITALIC CAPITAL F\0" "MATHEMATICAL SANS-SERIF ITALIC CAPITAL G\0" "MATHEMATICAL SANS-SERIF ITALIC CAPITAL H\0" "MATHEMATICAL SANS-SERIF ITALIC CAPITAL I\0" "MATHEMATICAL SANS-SERIF ITALIC CAPITAL J\0" "MATHEMATICAL SANS-SERIF ITALIC CAPITAL K\0" "MATHEMATICAL SANS-SERIF ITALIC CAPITAL L\0" "MATHEMATICAL SANS-SERIF ITALIC CAPITAL M\0" "MATHEMATICAL SANS-SERIF ITALIC CAPITAL N\0" "MATHEMATICAL SANS-SERIF ITALIC CAPITAL O\0" "MATHEMATICAL SANS-SERIF ITALIC CAPITAL P\0" "MATHEMATICAL SANS-SERIF ITALIC CAPITAL Q\0" "MATHEMATICAL SANS-SERIF ITALIC CAPITAL R\0" "MATHEMATICAL SANS-SERIF ITALIC CAPITAL S\0" "MATHEMATICAL SANS-SERIF ITALIC CAPITAL T\0" "MATHEMATICAL SANS-SERIF ITALIC CAPITAL U\0" "MATHEMATICAL SANS-SERIF ITALIC CAPITAL V\0" "MATHEMATICAL SANS-SERIF ITALIC CAPITAL W\0" "MATHEMATICAL SANS-SERIF ITALIC CAPITAL X\0" "MATHEMATICAL SANS-SERIF ITALIC CAPITAL Y\0" "MATHEMATICAL SANS-SERIF ITALIC CAPITAL Z\0" "MATHEMATICAL SANS-SERIF ITALIC SMALL A\0" "MATHEMATICAL SANS-SERIF ITALIC SMALL B\0" "MATHEMATICAL SANS-SERIF ITALIC SMALL C\0" "MATHEMATICAL SANS-SERIF ITALIC SMALL D\0" "MATHEMATICAL SANS-SERIF ITALIC SMALL E\0" "MATHEMATICAL SANS-SERIF ITALIC SMALL F\0" "MATHEMATICAL SANS-SERIF ITALIC SMALL G\0" "MATHEMATICAL SANS-SERIF ITALIC SMALL H\0" "MATHEMATICAL SANS-SERIF ITALIC SMALL I\0" "MATHEMATICAL SANS-SERIF ITALIC SMALL J\0" "MATHEMATICAL SANS-SERIF ITALIC SMALL K\0" "MATHEMATICAL SANS-SERIF ITALIC SMALL L\0" "MATHEMATICAL SANS-SERIF ITALIC SMALL M\0" "MATHEMATICAL SANS-SERIF ITALIC SMALL N\0" "MATHEMATICAL SANS-SERIF ITALIC SMALL O\0" "MATHEMATICAL SANS-SERIF ITALIC SMALL P\0" "MATHEMATICAL SANS-SERIF ITALIC SMALL Q\0" "MATHEMATICAL SANS-SERIF ITALIC SMALL R\0" "MATHEMATICAL SANS-SERIF ITALIC SMALL S\0" "MATHEMATICAL SANS-SERIF ITALIC SMALL T\0" "MATHEMATICAL SANS-SERIF ITALIC SMALL U\0" "MATHEMATICAL SANS-SERIF ITALIC SMALL V\0" "MATHEMATICAL SANS-SERIF ITALIC SMALL W\0" "MATHEMATICAL SANS-SERIF ITALIC SMALL X\0" "MATHEMATICAL SANS-SERIF ITALIC SMALL Y\0" "MATHEMATICAL SANS-SERIF ITALIC SMALL Z\0" "MATHEMATICAL SANS-SERIF SMALL A\0" "MATHEMATICAL SANS-SERIF SMALL B\0" "MATHEMATICAL SANS-SERIF SMALL C\0" "MATHEMATICAL SANS-SERIF SMALL D\0" "MATHEMATICAL SANS-SERIF SMALL E\0" "MATHEMATICAL SANS-SERIF SMALL F\0" "MATHEMATICAL SANS-SERIF SMALL G\0" "MATHEMATICAL SANS-SERIF SMALL H\0" "MATHEMATICAL SANS-SERIF SMALL I\0" "MATHEMATICAL SANS-SERIF SMALL J\0" "MATHEMATICAL SANS-SERIF SMALL K\0" "MATHEMATICAL SANS-SERIF SMALL L\0" "MATHEMATICAL SANS-SERIF SMALL M\0" "MATHEMATICAL SANS-SERIF SMALL N\0" "MATHEMATICAL SANS-SERIF SMALL O\0" "MATHEMATICAL SANS-SERIF SMALL P\0" "MATHEMATICAL SANS-SERIF SMALL Q\0" "MATHEMATICAL SANS-SERIF SMALL R\0" "MATHEMATICAL SANS-SERIF SMALL S\0" "MATHEMATICAL SANS-SERIF SMALL T\0" "MATHEMATICAL SANS-SERIF SMALL U\0" "MATHEMATICAL SANS-SERIF SMALL V\0" "MATHEMATICAL SANS-SERIF SMALL W\0" "MATHEMATICAL SANS-SERIF SMALL X\0" "MATHEMATICAL SANS-SERIF SMALL Y\0" "MATHEMATICAL SANS-SERIF SMALL Z\0" "MATHEMATICAL SCRIPT CAPITAL A\0" "MATHEMATICAL SCRIPT CAPITAL C\0" "MATHEMATICAL SCRIPT CAPITAL D\0" "MATHEMATICAL SCRIPT CAPITAL G\0" "MATHEMATICAL SCRIPT CAPITAL J\0" "MATHEMATICAL SCRIPT CAPITAL K\0" "MATHEMATICAL SCRIPT CAPITAL N\0" "MATHEMATICAL SCRIPT CAPITAL O\0" "MATHEMATICAL SCRIPT CAPITAL P\0" "MATHEMATICAL SCRIPT CAPITAL Q\0" "MATHEMATICAL SCRIPT CAPITAL S\0" "MATHEMATICAL SCRIPT CAPITAL T\0" "MATHEMATICAL SCRIPT CAPITAL U\0" "MATHEMATICAL SCRIPT CAPITAL V\0" "MATHEMATICAL SCRIPT CAPITAL W\0" "MATHEMATICAL SCRIPT CAPITAL X\0" "MATHEMATICAL SCRIPT CAPITAL Y\0" "MATHEMATICAL SCRIPT CAPITAL Z\0" "MATHEMATICAL SCRIPT SMALL A\0" "MATHEMATICAL SCRIPT SMALL B\0" "MATHEMATICAL SCRIPT SMALL C\0" "MATHEMATICAL SCRIPT SMALL D\0" "MATHEMATICAL SCRIPT SMALL F\0" "MATHEMATICAL SCRIPT SMALL H\0" "MATHEMATICAL SCRIPT SMALL I\0" "MATHEMATICAL SCRIPT SMALL J\0" "MATHEMATICAL SCRIPT SMALL K\0" "MATHEMATICAL SCRIPT SMALL L\0" "MATHEMATICAL SCRIPT SMALL M\0" "MATHEMATICAL SCRIPT SMALL N\0" "MATHEMATICAL SCRIPT SMALL P\0" "MATHEMATICAL SCRIPT SMALL Q\0" "MATHEMATICAL SCRIPT SMALL R\0" "MATHEMATICAL SCRIPT SMALL S\0" "MATHEMATICAL SCRIPT SMALL T\0" "MATHEMATICAL SCRIPT SMALL U\0" "MATHEMATICAL SCRIPT SMALL V\0" "MATHEMATICAL SCRIPT SMALL W\0" "MATHEMATICAL SCRIPT SMALL X\0" "MATHEMATICAL SCRIPT SMALL Y\0" "MATHEMATICAL SCRIPT SMALL Z\0" "MEASURED ANGLE\0" "MEASURED ANGLE OPENING LEFT\0" "MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING DOWN AND LEFT\0" "MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING DOWN AND RIGHT\0" "MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING LEFT AND DOWN\0" "MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING LEFT AND UP\0" "MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING RIGHT AND DOWN\0" "MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING RIGHT AND UP\0" "MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING UP AND LEFT\0" "MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING UP AND RIGHT\0" "MEASURED BY\0" "MEASURED RIGHT ANGLE WITH DOT\0" "MEAT ON BONE\0" "MEDIUM BLACK CIRCLE\0" "MEDIUM FLATTENED LEFT PARENTHESIS ORNAMENT\0" "MEDIUM FLATTENED RIGHT PARENTHESIS ORNAMENT\0" "MEDIUM LEFT CURLY BRACKET ORNAMENT\0" "MEDIUM LEFT PARENTHESIS ORNAMENT\0" "MEDIUM LEFT-POINTING ANGLE BRACKET ORNAMENT\0" "MEDIUM MATHEMATICAL SPACE\0" "MEDIUM RIGHT CURLY BRACKET ORNAMENT\0" "MEDIUM RIGHT PARENTHESIS ORNAMENT\0" "MEDIUM RIGHT-POINTING ANGLE BRACKET ORNAMENT\0" "MEDIUM SHADE\0" "MEDIUM SMALL WHITE CIRCLE\0" "MEDIUM VERTICAL BAR\0" "MEDIUM WHITE CIRCLE\0" "MEETEI MAYEK APUN IYEK\0" "MEETEI MAYEK CHEIKHEI\0" "MEETEI MAYEK DIGIT EIGHT\0" "MEETEI MAYEK DIGIT FIVE\0" "MEETEI MAYEK DIGIT FOUR\0" "MEETEI MAYEK DIGIT NINE\0" "MEETEI MAYEK DIGIT ONE\0" "MEETEI MAYEK DIGIT SEVEN\0" "MEETEI MAYEK DIGIT SIX\0" "MEETEI MAYEK DIGIT THREE\0" "MEETEI MAYEK DIGIT TWO\0" "MEETEI MAYEK DIGIT ZERO\0" "MEETEI MAYEK LETTER ATIYA\0" "MEETEI MAYEK LETTER BA\0" "MEETEI MAYEK LETTER BHAM\0" "MEETEI MAYEK LETTER CHIL\0" "MEETEI MAYEK LETTER DHOU\0" "MEETEI MAYEK LETTER DIL\0" "MEETEI MAYEK LETTER GHOU\0" "MEETEI MAYEK LETTER GOK\0" "MEETEI MAYEK LETTER HUK\0" "MEETEI MAYEK LETTER I\0" "MEETEI MAYEK LETTER I LONSUM\0" "MEETEI MAYEK LETTER JHAM\0" "MEETEI MAYEK LETTER JIL\0" "MEETEI MAYEK LETTER KHOU\0" "MEETEI MAYEK LETTER KOK\0" "MEETEI MAYEK LETTER KOK LONSUM\0" "MEETEI MAYEK LETTER LAI\0" "MEETEI MAYEK LETTER LAI LONSUM\0" "MEETEI MAYEK LETTER MIT\0" "MEETEI MAYEK LETTER MIT LONSUM\0" "MEETEI MAYEK LETTER NA\0" "MEETEI MAYEK LETTER NA LONSUM\0" "MEETEI MAYEK LETTER NGOU\0" "MEETEI MAYEK LETTER NGOU LONSUM\0" "MEETEI MAYEK LETTER PA\0" "MEETEI MAYEK LETTER PA LONSUM\0" "MEETEI MAYEK LETTER PHAM\0" "MEETEI MAYEK LETTER RAI\0" "MEETEI MAYEK LETTER SAM\0" "MEETEI MAYEK LETTER THOU\0" "MEETEI MAYEK LETTER TIL\0" "MEETEI MAYEK LETTER TIL LONSUM\0" "MEETEI MAYEK LETTER UN\0" "MEETEI MAYEK LETTER WAI\0" "MEETEI MAYEK LETTER YANG\0" "MEETEI MAYEK LUM IYEK\0" "MEETEI MAYEK VOWEL SIGN ANAP\0" "MEETEI MAYEK VOWEL SIGN CHEINAP\0" "MEETEI MAYEK VOWEL SIGN INAP\0" "MEETEI MAYEK VOWEL SIGN NUNG\0" "MEETEI MAYEK VOWEL SIGN ONAP\0" "MEETEI MAYEK VOWEL SIGN SOUNAP\0" "MEETEI MAYEK VOWEL SIGN UNAP\0" "MEETEI MAYEK VOWEL SIGN YENAP\0" "MELON\0" "MEMO\0" "MENS SYMBOL\0" "MERCURY\0" "METRICAL BREVE\0" "METRICAL LONG OVER SHORT\0" "METRICAL LONG OVER TWO SHORTS\0" "METRICAL PENTASEME\0" "METRICAL SHORT OVER LONG\0" "METRICAL TETRASEME\0" "METRICAL TRISEME\0" "METRICAL TWO SHORTS JOINED\0" "METRICAL TWO SHORTS OVER LONG\0" "METRO\0" "MICRO SIGN\0" "MICROPHONE\0" "MICROSCOPE\0" "MIDDLE DOT\0" "MIDLINE HORIZONTAL ELLIPSIS\0" "MILKY WAY\0" "MILL SIGN\0" "MINIBUS\0" "MINIDISC\0" "MINUS SIGN\0" "MINUS SIGN IN TRIANGLE\0" "MINUS SIGN WITH COMMA ABOVE\0" "MINUS SIGN WITH DOT BELOW\0" "MINUS SIGN WITH FALLING DOTS\0" "MINUS SIGN WITH RISING DOTS\0" "MINUS TILDE\0" "MINUS-OR-PLUS SIGN\0" "MINY\0" "MOBILE PHONE\0" "MOBILE PHONE OFF\0" "MOBILE PHONE WITH RIGHTWARDS ARROW AT LEFT\0" "MODELS\0" "MODIFIER LETTER ACUTE ACCENT\0" "MODIFIER LETTER APOSTROPHE\0" "MODIFIER LETTER BEGIN HIGH TONE\0" "MODIFIER LETTER BEGIN LOW TONE\0" "MODIFIER LETTER CAPITAL A\0" "MODIFIER LETTER CAPITAL AE\0" "MODIFIER LETTER CAPITAL B\0" "MODIFIER LETTER CAPITAL BARRED B\0" "MODIFIER LETTER CAPITAL D\0" "MODIFIER LETTER CAPITAL E\0" "MODIFIER LETTER CAPITAL G\0" "MODIFIER LETTER CAPITAL H\0" "MODIFIER LETTER CAPITAL I\0" "MODIFIER LETTER CAPITAL J\0" "MODIFIER LETTER CAPITAL K\0" "MODIFIER LETTER CAPITAL L\0" "MODIFIER LETTER CAPITAL M\0" "MODIFIER LETTER CAPITAL N\0" "MODIFIER LETTER CAPITAL O\0" "MODIFIER LETTER CAPITAL OU\0" "MODIFIER LETTER CAPITAL P\0" "MODIFIER LETTER CAPITAL R\0" "MODIFIER LETTER CAPITAL REVERSED E\0" "MODIFIER LETTER CAPITAL REVERSED N\0" "MODIFIER LETTER CAPITAL T\0" "MODIFIER LETTER CAPITAL U\0" "MODIFIER LETTER CAPITAL V\0" "MODIFIER LETTER CAPITAL W\0" "MODIFIER LETTER CENTRED LEFT HALF RING\0" "MODIFIER LETTER CENTRED RIGHT HALF RING\0" "MODIFIER LETTER CHINESE TONE YANG PING\0" "MODIFIER LETTER CHINESE TONE YANG QU\0" "MODIFIER LETTER CHINESE TONE YANG RU\0" "MODIFIER LETTER CHINESE TONE YANG SHANG\0" "MODIFIER LETTER CHINESE TONE YIN PING\0" "MODIFIER LETTER CHINESE TONE YIN QU\0" "MODIFIER LETTER CHINESE TONE YIN RU\0" "MODIFIER LETTER CHINESE TONE YIN SHANG\0" "MODIFIER LETTER CIRCUMFLEX ACCENT\0" "MODIFIER LETTER COLON\0" "MODIFIER LETTER CROSS ACCENT\0" "MODIFIER LETTER CYRILLIC EN\0" "MODIFIER LETTER DOT HORIZONTAL BAR\0" "MODIFIER LETTER DOT SLASH\0" "MODIFIER LETTER DOT VERTICAL BAR\0" "MODIFIER LETTER DOUBLE APOSTROPHE\0" "MODIFIER LETTER DOUBLE PRIME\0" "MODIFIER LETTER DOWN ARROWHEAD\0" "MODIFIER LETTER DOWN TACK\0" "MODIFIER LETTER END HIGH TONE\0" "MODIFIER LETTER END LOW TONE\0" "MODIFIER LETTER EXTRA-HIGH DOTTED LEFT-STEM TONE BAR\0" "MODIFIER LETTER EXTRA-HIGH DOTTED TONE BAR\0" "MODIFIER LETTER EXTRA-HIGH LEFT-STEM TONE BAR\0" "MODIFIER LETTER EXTRA-HIGH TONE BAR\0" "MODIFIER LETTER EXTRA-LOW DOTTED LEFT-STEM TONE BAR\0" "MODIFIER LETTER EXTRA-LOW DOTTED TONE BAR\0" "MODIFIER LETTER EXTRA-LOW LEFT-STEM TONE BAR\0" "MODIFIER LETTER EXTRA-LOW TONE BAR\0" "MODIFIER LETTER GEORGIAN NAR\0" "MODIFIER LETTER GLOTTAL STOP\0" "MODIFIER LETTER GRAVE ACCENT\0" "MODIFIER LETTER HALF TRIANGULAR COLON\0" "MODIFIER LETTER HIGH DOTTED LEFT-STEM TONE BAR\0" "MODIFIER LETTER HIGH DOTTED TONE BAR\0" "MODIFIER LETTER HIGH LEFT-STEM TONE BAR\0" "MODIFIER LETTER HIGH TONE BAR\0" "MODIFIER LETTER LEFT ARROWHEAD\0" "MODIFIER LETTER LEFT HALF RING\0" "MODIFIER LETTER LOW ACUTE ACCENT\0" "MODIFIER LETTER LOW CIRCUMFLEX ACCENT\0" "MODIFIER LETTER LOW DOTTED LEFT-STEM TONE BAR\0" "MODIFIER LETTER LOW DOTTED TONE BAR\0" "MODIFIER LETTER LOW DOWN ARROWHEAD\0" "MODIFIER LETTER LOW GRAVE ACCENT\0" "MODIFIER LETTER LOW INVERTED EXCLAMATION MARK\0" "MODIFIER LETTER LOW LEFT ARROW\0" "MODIFIER LETTER LOW LEFT ARROWHEAD\0" "MODIFIER LETTER LOW LEFT-STEM TONE BAR\0" "MODIFIER LETTER LOW MACRON\0" "MODIFIER LETTER LOW RIGHT ARROWHEAD\0" "MODIFIER LETTER LOW RING\0" "MODIFIER LETTER LOW TILDE\0" "MODIFIER LETTER LOW TONE BAR\0" "MODIFIER LETTER LOW UP ARROWHEAD\0" "MODIFIER LETTER LOW VERTICAL LINE\0" "MODIFIER LETTER LOWER RIGHT CORNER ANGLE\0" "MODIFIER LETTER MACRON\0" "MODIFIER LETTER MID DOTTED LEFT-STEM TONE BAR\0" "MODIFIER LETTER MID DOTTED TONE BAR\0" "MODIFIER LETTER MID LEFT-STEM TONE BAR\0" "MODIFIER LETTER MID TONE BAR\0" "MODIFIER LETTER MIDDLE DOUBLE ACUTE ACCENT\0" "MODIFIER LETTER MIDDLE DOUBLE GRAVE ACCENT\0" "MODIFIER LETTER MIDDLE GRAVE ACCENT\0" "MODIFIER LETTER MINUS SIGN\0" "MODIFIER LETTER OPEN SHELF\0" "MODIFIER LETTER PLUS SIGN\0" "MODIFIER LETTER PRIME\0" "MODIFIER LETTER RAISED COLON\0" "MODIFIER LETTER RAISED DOWN ARROW\0" "MODIFIER LETTER RAISED EXCLAMATION MARK\0" "MODIFIER LETTER RAISED INVERTED EXCLAMATION MARK\0" "MODIFIER LETTER RAISED UP ARROW\0" "MODIFIER LETTER REVERSED COMMA\0" "MODIFIER LETTER REVERSED GLOTTAL STOP\0" "MODIFIER LETTER RHOTIC HOOK\0" "MODIFIER LETTER RIGHT ARROWHEAD\0" "MODIFIER LETTER RIGHT HALF RING\0" "MODIFIER LETTER SHELF\0" "MODIFIER LETTER SHORT EQUALS SIGN\0" "MODIFIER LETTER SMALL A\0" "MODIFIER LETTER SMALL AIN\0" "MODIFIER LETTER SMALL ALPHA\0" "MODIFIER LETTER SMALL B\0" "MODIFIER LETTER SMALL BARRED O\0" "MODIFIER LETTER SMALL BETA\0" "MODIFIER LETTER SMALL BOTTOM HALF O\0" "MODIFIER LETTER SMALL C\0" "MODIFIER LETTER SMALL C WITH CURL\0" "MODIFIER LETTER SMALL CAPITAL I\0" "MODIFIER LETTER SMALL CAPITAL I WITH STROKE\0" "MODIFIER LETTER SMALL CAPITAL INVERTED R\0" "MODIFIER LETTER SMALL CAPITAL L\0" "MODIFIER LETTER SMALL CAPITAL N\0" "MODIFIER LETTER SMALL CAPITAL U\0" "MODIFIER LETTER SMALL CHI\0" "MODIFIER LETTER SMALL D\0" "MODIFIER LETTER SMALL DELTA\0" "MODIFIER LETTER SMALL DOTLESS J WITH STROKE\0" "MODIFIER LETTER SMALL E\0" "MODIFIER LETTER SMALL ENG\0" "MODIFIER LETTER SMALL ESH\0" "MODIFIER LETTER SMALL ETH\0" "MODIFIER LETTER SMALL EZH\0" "MODIFIER LETTER SMALL F\0" "MODIFIER LETTER SMALL G\0" "MODIFIER LETTER SMALL GAMMA\0" "MODIFIER LETTER SMALL GREEK GAMMA\0" "MODIFIER LETTER SMALL GREEK PHI\0" "MODIFIER LETTER SMALL H\0" "MODIFIER LETTER SMALL H WITH HOOK\0" "MODIFIER LETTER SMALL I WITH STROKE\0" "MODIFIER LETTER SMALL IOTA\0" "MODIFIER LETTER SMALL J\0" "MODIFIER LETTER SMALL J WITH CROSSED-TAIL\0" "MODIFIER LETTER SMALL K\0" "MODIFIER LETTER SMALL L\0" "MODIFIER LETTER SMALL L WITH PALATAL HOOK\0" "MODIFIER LETTER SMALL L WITH RETROFLEX HOOK\0" "MODIFIER LETTER SMALL M\0" "MODIFIER LETTER SMALL M WITH HOOK\0" "MODIFIER LETTER SMALL N WITH LEFT HOOK\0" "MODIFIER LETTER SMALL N WITH RETROFLEX HOOK\0" "MODIFIER LETTER SMALL O\0" "MODIFIER LETTER SMALL OPEN E\0" "MODIFIER LETTER SMALL OPEN O\0" "MODIFIER LETTER SMALL P\0" "MODIFIER LETTER SMALL PHI\0" "MODIFIER LETTER SMALL R\0" "MODIFIER LETTER SMALL REVERSED GLOTTAL STOP\0" "MODIFIER LETTER SMALL REVERSED OPEN E\0" "MODIFIER LETTER SMALL S\0" "MODIFIER LETTER SMALL S WITH HOOK\0" "MODIFIER LETTER SMALL SCHWA\0" "MODIFIER LETTER SMALL SCRIPT G\0" "MODIFIER LETTER SMALL SIDEWAYS U\0" "MODIFIER LETTER SMALL T\0" "MODIFIER LETTER SMALL T WITH PALATAL HOOK\0" "MODIFIER LETTER SMALL THETA\0" "MODIFIER LETTER SMALL TOP HALF O\0" "MODIFIER LETTER SMALL TURNED A\0" "MODIFIER LETTER SMALL TURNED AE\0" "MODIFIER LETTER SMALL TURNED ALPHA\0" "MODIFIER LETTER SMALL TURNED H\0" "MODIFIER LETTER SMALL TURNED I\0" "MODIFIER LETTER SMALL TURNED M\0" "MODIFIER LETTER SMALL TURNED M WITH LONG LEG\0" "MODIFIER LETTER SMALL TURNED OPEN E\0" "MODIFIER LETTER SMALL TURNED R\0" "MODIFIER LETTER SMALL TURNED R WITH HOOK\0" "MODIFIER LETTER SMALL TURNED V\0" "MODIFIER LETTER SMALL U\0" "MODIFIER LETTER SMALL U BAR\0" "MODIFIER LETTER SMALL UPSILON\0" "MODIFIER LETTER SMALL V\0" "MODIFIER LETTER SMALL V WITH HOOK\0" "MODIFIER LETTER SMALL W\0" "MODIFIER LETTER SMALL X\0" "MODIFIER LETTER SMALL Y\0" "MODIFIER LETTER SMALL Z\0" "MODIFIER LETTER SMALL Z WITH CURL\0" "MODIFIER LETTER SMALL Z WITH RETROFLEX HOOK\0" "MODIFIER LETTER STRESS AND HIGH TONE\0" "MODIFIER LETTER STRESS AND LOW TONE\0" "MODIFIER LETTER TRIANGULAR COLON\0" "MODIFIER LETTER TURNED COMMA\0" "MODIFIER LETTER UNASPIRATED\0" "MODIFIER LETTER UP ARROWHEAD\0" "MODIFIER LETTER UP TACK\0" "MODIFIER LETTER US\0" "MODIFIER LETTER VERTICAL LINE\0" "MODIFIER LETTER VOICING\0" "MODIFIER LETTER YANG DEPARTING TONE MARK\0" "MODIFIER LETTER YIN DEPARTING TONE MARK\0" "MODULO TWO SUM\0" "MONEY BAG\0" "MONEY WITH WINGS\0" "MONGOLIAN BIRGA\0" "MONGOLIAN COLON\0" "MONGOLIAN COMMA\0" "MONGOLIAN DIGIT EIGHT\0" "MONGOLIAN DIGIT FIVE\0" "MONGOLIAN DIGIT FOUR\0" "MONGOLIAN DIGIT NINE\0" "MONGOLIAN DIGIT ONE\0" "MONGOLIAN DIGIT SEVEN\0" "MONGOLIAN DIGIT SIX\0" "MONGOLIAN DIGIT THREE\0" "MONGOLIAN DIGIT TWO\0" "MONGOLIAN DIGIT ZERO\0" "MONGOLIAN ELLIPSIS\0" "MONGOLIAN FOUR DOTS\0" "MONGOLIAN FREE VARIATION SELECTOR ONE\0" "MONGOLIAN FREE VARIATION SELECTOR THREE\0" "MONGOLIAN FREE VARIATION SELECTOR TWO\0" "MONGOLIAN FULL STOP\0" "MONGOLIAN LETTER A\0" "MONGOLIAN LETTER ALI GALI A\0" "MONGOLIAN LETTER ALI GALI AH\0" "MONGOLIAN LETTER ALI GALI ANUSVARA ONE\0" "MONGOLIAN LETTER ALI GALI BALUDA\0" "MONGOLIAN LETTER ALI GALI CA\0" "MONGOLIAN LETTER ALI GALI DA\0" "MONGOLIAN LETTER ALI GALI DAGALGA\0" "MONGOLIAN LETTER ALI GALI DAMARU\0" "MONGOLIAN LETTER ALI GALI DDA\0" "MONGOLIAN LETTER ALI GALI HALF U\0" "MONGOLIAN LETTER ALI GALI HALF YA\0" "MONGOLIAN LETTER ALI GALI I\0" "MONGOLIAN LETTER ALI GALI INVERTED UBADAMA\0" "MONGOLIAN LETTER ALI GALI KA\0" "MONGOLIAN LETTER ALI GALI NGA\0" "MONGOLIAN LETTER ALI GALI NNA\0" "MONGOLIAN LETTER ALI GALI PA\0" "MONGOLIAN LETTER ALI GALI PHA\0" "MONGOLIAN LETTER ALI GALI SSA\0" "MONGOLIAN LETTER ALI GALI TA\0" "MONGOLIAN LETTER ALI GALI THREE BALUDA\0" "MONGOLIAN LETTER ALI GALI TTA\0" "MONGOLIAN LETTER ALI GALI TTHA\0" "MONGOLIAN LETTER ALI GALI UBADAMA\0" "MONGOLIAN LETTER ALI GALI VISARGA ONE\0" "MONGOLIAN LETTER ALI GALI ZA\0" "MONGOLIAN LETTER ALI GALI ZHA\0" "MONGOLIAN LETTER ANG\0" "MONGOLIAN LETTER BA\0" "MONGOLIAN LETTER CHA\0" "MONGOLIAN LETTER CHI\0" "MONGOLIAN LETTER DA\0" "MONGOLIAN LETTER E\0" "MONGOLIAN LETTER EE\0" "MONGOLIAN LETTER FA\0" "MONGOLIAN LETTER GA\0" "MONGOLIAN LETTER HAA\0" "MONGOLIAN LETTER I\0" "MONGOLIAN LETTER JA\0" "MONGOLIAN LETTER KA\0" "MONGOLIAN LETTER KHA\0" "MONGOLIAN LETTER LA\0" "MONGOLIAN LETTER LHA\0" "MONGOLIAN LETTER MA\0" "MONGOLIAN LETTER MANCHU ALI GALI BHA\0" "MONGOLIAN LETTER MANCHU ALI GALI CA\0" "MONGOLIAN LETTER MANCHU ALI GALI CYA\0" "MONGOLIAN LETTER MANCHU ALI GALI DDHA\0" "MONGOLIAN LETTER MANCHU ALI GALI DHA\0" "MONGOLIAN LETTER MANCHU ALI GALI GHA\0" "MONGOLIAN LETTER MANCHU ALI GALI JHA\0" "MONGOLIAN LETTER MANCHU ALI GALI LHA\0" "MONGOLIAN LETTER MANCHU ALI GALI NGA\0" "MONGOLIAN LETTER MANCHU ALI GALI SSA\0" "MONGOLIAN LETTER MANCHU ALI GALI TA\0" "MONGOLIAN LETTER MANCHU ALI GALI TTA\0" "MONGOLIAN LETTER MANCHU ALI GALI ZA\0" "MONGOLIAN LETTER MANCHU ALI GALI ZHA\0" "MONGOLIAN LETTER MANCHU FA\0" "MONGOLIAN LETTER MANCHU I\0" "MONGOLIAN LETTER MANCHU KA\0" "MONGOLIAN LETTER MANCHU RA\0" "MONGOLIAN LETTER MANCHU ZHA\0" "MONGOLIAN LETTER NA\0" "MONGOLIAN LETTER O\0" "MONGOLIAN LETTER OE\0" "MONGOLIAN LETTER PA\0" "MONGOLIAN LETTER QA\0" "MONGOLIAN LETTER RA\0" "MONGOLIAN LETTER SA\0" "MONGOLIAN LETTER SHA\0" "MONGOLIAN LETTER SIBE ANG\0" "MONGOLIAN LETTER SIBE CHA\0" "MONGOLIAN LETTER SIBE DA\0" "MONGOLIAN LETTER SIBE E\0" "MONGOLIAN LETTER SIBE FA\0" "MONGOLIAN LETTER SIBE GA\0" "MONGOLIAN LETTER SIBE GAA\0" "MONGOLIAN LETTER SIBE HA\0" "MONGOLIAN LETTER SIBE HAA\0" "MONGOLIAN LETTER SIBE I\0" "MONGOLIAN LETTER SIBE IY\0" "MONGOLIAN LETTER SIBE JA\0" "MONGOLIAN LETTER SIBE KA\0" "MONGOLIAN LETTER SIBE PA\0" "MONGOLIAN LETTER SIBE RAA\0" "MONGOLIAN LETTER SIBE SHA\0" "MONGOLIAN LETTER SIBE TA\0" "MONGOLIAN LETTER SIBE TSA\0" "MONGOLIAN LETTER SIBE U\0" "MONGOLIAN LETTER SIBE UE\0" "MONGOLIAN LETTER SIBE ZA\0" "MONGOLIAN LETTER SIBE ZHA\0" "MONGOLIAN LETTER TA\0" "MONGOLIAN LETTER TODO ALI GALI TA\0" "MONGOLIAN LETTER TODO ALI GALI ZHA\0" "MONGOLIAN LETTER TODO ANG\0" "MONGOLIAN LETTER TODO BA\0" "MONGOLIAN LETTER TODO CHA\0" "MONGOLIAN LETTER TODO DA\0" "MONGOLIAN LETTER TODO DZA\0" "MONGOLIAN LETTER TODO E\0" "MONGOLIAN LETTER TODO GA\0" "MONGOLIAN LETTER TODO GAA\0" "MONGOLIAN LETTER TODO HAA\0" "MONGOLIAN LETTER TODO I\0" "MONGOLIAN LETTER TODO JA\0" "MONGOLIAN LETTER TODO JIA\0" "MONGOLIAN LETTER TODO KA\0" "MONGOLIAN LETTER TODO LONG VOWEL SIGN\0" "MONGOLIAN LETTER TODO MA\0" "MONGOLIAN LETTER TODO NIA\0" "MONGOLIAN LETTER TODO O\0" "MONGOLIAN LETTER TODO OE\0" "MONGOLIAN LETTER TODO PA\0" "MONGOLIAN LETTER TODO QA\0" "MONGOLIAN LETTER TODO TA\0" "MONGOLIAN LETTER TODO TSA\0" "MONGOLIAN LETTER TODO U\0" "MONGOLIAN LETTER TODO UE\0" "MONGOLIAN LETTER TODO WA\0" "MONGOLIAN LETTER TODO YA\0" "MONGOLIAN LETTER TSA\0" "MONGOLIAN LETTER U\0" "MONGOLIAN LETTER UE\0" "MONGOLIAN LETTER WA\0" "MONGOLIAN LETTER YA\0" "MONGOLIAN LETTER ZA\0" "MONGOLIAN LETTER ZHI\0" "MONGOLIAN LETTER ZRA\0" "MONGOLIAN MANCHU COMMA\0" "MONGOLIAN MANCHU FULL STOP\0" "MONGOLIAN NIRUGU\0" "MONGOLIAN SIBE SYLLABLE BOUNDARY MARKER\0" "MONGOLIAN TODO SOFT HYPHEN\0" "MONGOLIAN VOWEL SEPARATOR\0" "MONKEY\0" "MONKEY FACE\0" "MONOGRAM FOR EARTH\0" "MONOGRAM FOR YANG\0" "MONOGRAM FOR YIN\0" "MONORAIL\0" "MONOSTABLE SYMBOL\0" "MOON VIEWING CEREMONY\0" "MOUNT FUJI\0" "MOUNTAIN\0" "MOUNTAIN BICYCLIST\0" "MOUNTAIN CABLEWAY\0" "MOUNTAIN RAILWAY\0" "MOUSE\0" "MOUSE FACE\0" "MOUTH\0" "MOVIE CAMERA\0" "MOYAI\0" "MUCH GREATER-THAN\0" "MUCH LESS-THAN\0" "MULTIMAP\0" "MULTIPLE MUSICAL NOTES\0" "MULTIPLICATION SIGN\0" "MULTIPLICATION SIGN IN DOUBLE CIRCLE\0" "MULTIPLICATION SIGN IN LEFT HALF CIRCLE\0" "MULTIPLICATION SIGN IN RIGHT HALF CIRCLE\0" "MULTIPLICATION SIGN IN TRIANGLE\0" "MULTIPLICATION SIGN WITH DOT ABOVE\0" "MULTIPLICATION SIGN WITH UNDERBAR\0" "MULTIPLICATION X\0" "MULTISET\0" "MULTISET MULTIPLICATION\0" "MULTISET UNION\0" "MUSHROOM\0" "MUSIC FLAT SIGN\0" "MUSIC NATURAL SIGN\0" "MUSIC SHARP SIGN\0" "MUSICAL KEYBOARD\0" "MUSICAL NOTE\0" "MUSICAL SCORE\0" "MUSICAL SYMBOL ARPEGGIATO DOWN\0" "MUSICAL SYMBOL ARPEGGIATO UP\0" "MUSICAL SYMBOL BEGIN BEAM\0" "MUSICAL SYMBOL BEGIN PHRASE\0" "MUSICAL SYMBOL BEGIN SLUR\0" "MUSICAL SYMBOL BEGIN TIE\0" "MUSICAL SYMBOL BRACE\0" "MUSICAL SYMBOL BRACKET\0" "MUSICAL SYMBOL BREATH MARK\0" "MUSICAL SYMBOL BREVE\0" "MUSICAL SYMBOL BREVIS\0" "MUSICAL SYMBOL BREVIS REST\0" "MUSICAL SYMBOL C CLEF\0" "MUSICAL SYMBOL CAESURA\0" "MUSICAL SYMBOL CIRCLE X NOTEHEAD\0" "MUSICAL SYMBOL CLIMACUS\0" "MUSICAL SYMBOL CLIVIS\0" "MUSICAL SYMBOL CLUSTER NOTEHEAD BLACK\0" "MUSICAL SYMBOL CLUSTER NOTEHEAD WHITE\0" "MUSICAL SYMBOL CODA\0" "MUSICAL SYMBOL COMBINING ACCENT\0" "MUSICAL SYMBOL COMBINING ACCENT-STACCATO\0" "MUSICAL SYMBOL COMBINING AUGMENTATION DOT\0" "MUSICAL SYMBOL COMBINING BEND\0" "MUSICAL SYMBOL COMBINING DOIT\0" "MUSICAL SYMBOL COMBINING DOUBLE TONGUE\0" "MUSICAL SYMBOL COMBINING DOWN BOW\0" "MUSICAL SYMBOL COMBINING FLAG-1\0" "MUSICAL SYMBOL COMBINING FLAG-2\0" "MUSICAL SYMBOL COMBINING FLAG-3\0" "MUSICAL SYMBOL COMBINING FLAG-4\0" "MUSICAL SYMBOL COMBINING FLAG-5\0" "MUSICAL SYMBOL COMBINING FLIP\0" "MUSICAL SYMBOL COMBINING HARMONIC\0" "MUSICAL SYMBOL COMBINING LOURE\0" "MUSICAL SYMBOL COMBINING MARCATO\0" "MUSICAL SYMBOL COMBINING MARCATO-STACCATO\0" "MUSICAL SYMBOL COMBINING RIP\0" "MUSICAL SYMBOL COMBINING SMEAR\0" "MUSICAL SYMBOL COMBINING SNAP PIZZICATO\0" "MUSICAL SYMBOL COMBINING SPRECHGESANG STEM\0" "MUSICAL SYMBOL COMBINING STACCATISSIMO\0" "MUSICAL SYMBOL COMBINING STACCATO\0" "MUSICAL SYMBOL COMBINING STEM\0" "MUSICAL SYMBOL COMBINING TENUTO\0" "MUSICAL SYMBOL COMBINING TREMOLO-1\0" "MUSICAL SYMBOL COMBINING TREMOLO-2\0" "MUSICAL SYMBOL COMBINING TREMOLO-3\0" "MUSICAL SYMBOL COMBINING TRIPLE TONGUE\0" "MUSICAL SYMBOL COMBINING UP BOW\0" "MUSICAL SYMBOL COMMON TIME\0" "MUSICAL SYMBOL CRESCENDO\0" "MUSICAL SYMBOL CROIX\0" "MUSICAL SYMBOL CUT TIME\0" "MUSICAL SYMBOL DA CAPO\0" "MUSICAL SYMBOL DAL SEGNO\0" "MUSICAL SYMBOL DAMP\0" "MUSICAL SYMBOL DAMP ALL\0" "MUSICAL SYMBOL DASHED BARLINE\0" "MUSICAL SYMBOL DECRESCENDO\0" "MUSICAL SYMBOL DEGREE SLASH\0" "MUSICAL SYMBOL DOUBLE BARLINE\0" "MUSICAL SYMBOL DOUBLE FLAT\0" "MUSICAL SYMBOL DOUBLE SHARP\0" "MUSICAL SYMBOL DRUM CLEF-1\0" "MUSICAL SYMBOL DRUM CLEF-2\0" "MUSICAL SYMBOL EIGHTH NOTE\0" "MUSICAL SYMBOL EIGHTH REST\0" "MUSICAL SYMBOL END BEAM\0" "MUSICAL SYMBOL END OF STIMME\0" "MUSICAL SYMBOL END PHRASE\0" "MUSICAL SYMBOL END SLUR\0" "MUSICAL SYMBOL END TIE\0" "MUSICAL SYMBOL F CLEF\0" "MUSICAL SYMBOL F CLEF OTTAVA ALTA\0" "MUSICAL SYMBOL F CLEF OTTAVA BASSA\0" "MUSICAL SYMBOL FERMATA\0" "MUSICAL SYMBOL FERMATA BELOW\0" "MUSICAL SYMBOL FINAL BARLINE\0" "MUSICAL SYMBOL FINGERED TREMOLO-1\0" "MUSICAL SYMBOL FINGERED TREMOLO-2\0" "MUSICAL SYMBOL FINGERED TREMOLO-3\0" "MUSICAL SYMBOL FIVE-LINE STAFF\0" "MUSICAL SYMBOL FLAT DOWN\0" "MUSICAL SYMBOL FLAT UP\0" "MUSICAL SYMBOL FORTE\0" "MUSICAL SYMBOL FOUR-LINE STAFF\0" "MUSICAL SYMBOL FOUR-STRING FRETBOARD\0" "MUSICAL SYMBOL FUSA BLACK\0" "MUSICAL SYMBOL FUSA WHITE\0" "MUSICAL SYMBOL G CLEF\0" "MUSICAL SYMBOL G CLEF OTTAVA ALTA\0" "MUSICAL SYMBOL G CLEF OTTAVA BASSA\0" "MUSICAL SYMBOL GLISSANDO DOWN\0" "MUSICAL SYMBOL GLISSANDO UP\0" "MUSICAL SYMBOL GRACE NOTE NO SLASH\0" "MUSICAL SYMBOL GRACE NOTE SLASH\0" "MUSICAL SYMBOL GREGORIAN C CLEF\0" "MUSICAL SYMBOL GREGORIAN F CLEF\0" "MUSICAL SYMBOL HALF NOTE\0" "MUSICAL SYMBOL HALF PEDAL MARK\0" "MUSICAL SYMBOL HALF REST\0" "MUSICAL SYMBOL HAUPTSTIMME\0" "MUSICAL SYMBOL INVERTED TURN\0" "MUSICAL SYMBOL LEFT REPEAT SIGN\0" "MUSICAL SYMBOL LONGA\0" "MUSICAL SYMBOL LONGA IMPERFECTA REST\0" "MUSICAL SYMBOL LONGA PERFECTA REST\0" "MUSICAL SYMBOL MAXIMA\0" "MUSICAL SYMBOL MEZZO\0" "MUSICAL SYMBOL MINIMA\0" "MUSICAL SYMBOL MINIMA BLACK\0" "MUSICAL SYMBOL MINIMA REST\0" "MUSICAL SYMBOL MOON NOTEHEAD BLACK\0" "MUSICAL SYMBOL MOON NOTEHEAD WHITE\0" "MUSICAL SYMBOL MULTI REST\0" "MUSICAL SYMBOL MULTIPLE MEASURE REST\0" "MUSICAL SYMBOL NATURAL DOWN\0" "MUSICAL SYMBOL NATURAL UP\0" "MUSICAL SYMBOL NEBENSTIMME\0" "MUSICAL SYMBOL NOTEHEAD BLACK\0" "MUSICAL SYMBOL NULL NOTEHEAD\0" "MUSICAL SYMBOL ONE HUNDRED TWENTY-EIGHTH NOTE\0" "MUSICAL SYMBOL ONE HUNDRED TWENTY-EIGHTH REST\0" "MUSICAL SYMBOL ONE-LINE STAFF\0" "MUSICAL SYMBOL ORNAMENT STROKE-1\0" "MUSICAL SYMBOL ORNAMENT STROKE-10\0" "MUSICAL SYMBOL ORNAMENT STROKE-11\0" "MUSICAL SYMBOL ORNAMENT STROKE-2\0" "MUSICAL SYMBOL ORNAMENT STROKE-3\0" "MUSICAL SYMBOL ORNAMENT STROKE-4\0" "MUSICAL SYMBOL ORNAMENT STROKE-5\0" "MUSICAL SYMBOL ORNAMENT STROKE-6\0" "MUSICAL SYMBOL ORNAMENT STROKE-7\0" "MUSICAL SYMBOL ORNAMENT STROKE-8\0" "MUSICAL SYMBOL ORNAMENT STROKE-9\0" "MUSICAL SYMBOL OTTAVA ALTA\0" "MUSICAL SYMBOL OTTAVA BASSA\0" "MUSICAL SYMBOL PARENTHESIS NOTEHEAD\0" "MUSICAL SYMBOL PEDAL MARK\0" "MUSICAL SYMBOL PEDAL UP MARK\0" "MUSICAL SYMBOL PES SUBPUNCTIS\0" "MUSICAL SYMBOL PIANO\0" "MUSICAL SYMBOL PLUS NOTEHEAD\0" "MUSICAL SYMBOL PODATUS\0" "MUSICAL SYMBOL PORRECTUS\0" "MUSICAL SYMBOL PORRECTUS FLEXUS\0" "MUSICAL SYMBOL QUARTER NOTE\0" "MUSICAL SYMBOL QUARTER REST\0" "MUSICAL SYMBOL QUARTER TONE FLAT\0" "MUSICAL SYMBOL QUARTER TONE SHARP\0" "MUSICAL SYMBOL QUINDICESIMA ALTA\0" "MUSICAL SYMBOL QUINDICESIMA BASSA\0" "MUSICAL SYMBOL REPEAT DOTS\0" "MUSICAL SYMBOL REPEATED FIGURE-1\0" "MUSICAL SYMBOL REPEATED FIGURE-2\0" "MUSICAL SYMBOL REPEATED FIGURE-3\0" "MUSICAL SYMBOL REVERSE FINAL BARLINE\0" "MUSICAL SYMBOL RIGHT REPEAT SIGN\0" "MUSICAL SYMBOL RINFORZANDO\0" "MUSICAL SYMBOL SCANDICUS\0" "MUSICAL SYMBOL SCANDICUS FLEXUS\0" "MUSICAL SYMBOL SEGNO\0" "MUSICAL SYMBOL SEMIBREVIS BLACK\0" "MUSICAL SYMBOL SEMIBREVIS REST\0" "MUSICAL SYMBOL SEMIBREVIS WHITE\0" "MUSICAL SYMBOL SEMIMINIMA BLACK\0" "MUSICAL SYMBOL SEMIMINIMA REST\0" "MUSICAL SYMBOL SEMIMINIMA WHITE\0" "MUSICAL SYMBOL SHARP DOWN\0" "MUSICAL SYMBOL SHARP UP\0" "MUSICAL SYMBOL SHORT BARLINE\0" "MUSICAL SYMBOL SINGLE BARLINE\0" "MUSICAL SYMBOL SIX-LINE STAFF\0" "MUSICAL SYMBOL SIX-STRING FRETBOARD\0" "MUSICAL SYMBOL SIXTEENTH NOTE\0" "MUSICAL SYMBOL SIXTEENTH REST\0" "MUSICAL SYMBOL SIXTY-FOURTH NOTE\0" "MUSICAL SYMBOL SIXTY-FOURTH REST\0" "MUSICAL SYMBOL SQUARE B\0" "MUSICAL SYMBOL SQUARE NOTEHEAD BLACK\0" "MUSICAL SYMBOL SQUARE NOTEHEAD WHITE\0" "MUSICAL SYMBOL SUBITO\0" "MUSICAL SYMBOL TEMPUS IMPERFECTUM CUM PROLATIONE IMPERFECTA\0" "MUSICAL SYMBOL TEMPUS IMPERFECTUM CUM PROLATIONE IMPERFECTA DIMINUTION-1\0" "MUSICAL SYMBOL TEMPUS IMPERFECTUM CUM PROLATIONE IMPERFECTA DIMINUTION-2\0" "MUSICAL SYMBOL TEMPUS IMPERFECTUM CUM PROLATIONE IMPERFECTA DIMINUTION-3\0" "MUSICAL SYMBOL TEMPUS IMPERFECTUM CUM PROLATIONE PERFECTA\0" "MUSICAL SYMBOL TEMPUS PERFECTUM CUM PROLATIONE IMPERFECTA\0" "MUSICAL SYMBOL TEMPUS PERFECTUM CUM PROLATIONE PERFECTA\0" "MUSICAL SYMBOL TEMPUS PERFECTUM CUM PROLATIONE PERFECTA DIMINUTION-1\0" "MUSICAL SYMBOL THIRTY-SECOND NOTE\0" "MUSICAL SYMBOL THIRTY-SECOND REST\0" "MUSICAL SYMBOL THREE-LINE STAFF\0" "MUSICAL SYMBOL TORCULUS\0" "MUSICAL SYMBOL TORCULUS RESUPINUS\0" "MUSICAL SYMBOL TR\0" "MUSICAL SYMBOL TRIANGLE NOTEHEAD DOWN BLACK\0" "MUSICAL SYMBOL TRIANGLE NOTEHEAD DOWN WHITE\0" "MUSICAL SYMBOL TRIANGLE NOTEHEAD LEFT BLACK\0" "MUSICAL SYMBOL TRIANGLE NOTEHEAD LEFT WHITE\0" "MUSICAL SYMBOL TRIANGLE NOTEHEAD RIGHT BLACK\0" "MUSICAL SYMBOL TRIANGLE NOTEHEAD RIGHT WHITE\0" "MUSICAL SYMBOL TRIANGLE NOTEHEAD UP BLACK\0" "MUSICAL SYMBOL TRIANGLE NOTEHEAD UP RIGHT BLACK\0" "MUSICAL SYMBOL TRIANGLE NOTEHEAD UP RIGHT WHITE\0" "MUSICAL SYMBOL TRIANGLE NOTEHEAD UP WHITE\0" "MUSICAL SYMBOL TRIANGLE-ROUND NOTEHEAD DOWN BLACK\0" "MUSICAL SYMBOL TRIANGLE-ROUND NOTEHEAD DOWN WHITE\0" "MUSICAL SYMBOL TURN\0" "MUSICAL SYMBOL TURN SLASH\0" "MUSICAL SYMBOL TURN UP\0" "MUSICAL SYMBOL TWO-LINE STAFF\0" "MUSICAL SYMBOL VIRGA\0" "MUSICAL SYMBOL VOID NOTEHEAD\0" "MUSICAL SYMBOL WHOLE NOTE\0" "MUSICAL SYMBOL WHOLE REST\0" "MUSICAL SYMBOL WITH FINGERNAILS\0" "MUSICAL SYMBOL X NOTEHEAD\0" "MUSICAL SYMBOL Z\0" "MYANMAR CONSONANT SIGN MEDIAL HA\0" "MYANMAR CONSONANT SIGN MEDIAL RA\0" "MYANMAR CONSONANT SIGN MEDIAL WA\0" "MYANMAR CONSONANT SIGN MEDIAL YA\0" "MYANMAR CONSONANT SIGN MON MEDIAL LA\0" "MYANMAR CONSONANT SIGN MON MEDIAL MA\0" "MYANMAR CONSONANT SIGN MON MEDIAL NA\0" "MYANMAR CONSONANT SIGN SHAN MEDIAL WA\0" "MYANMAR DIGIT EIGHT\0" "MYANMAR DIGIT FIVE\0" "MYANMAR DIGIT FOUR\0" "MYANMAR DIGIT NINE\0" "MYANMAR DIGIT ONE\0" "MYANMAR DIGIT SEVEN\0" "MYANMAR DIGIT SIX\0" "MYANMAR DIGIT THREE\0" "MYANMAR DIGIT TWO\0" "MYANMAR DIGIT ZERO\0" "MYANMAR LETTER A\0" "MYANMAR LETTER AITON RA\0" "MYANMAR LETTER AU\0" "MYANMAR LETTER BA\0" "MYANMAR LETTER BHA\0" "MYANMAR LETTER CA\0" "MYANMAR LETTER CHA\0" "MYANMAR LETTER DA\0" "MYANMAR LETTER DDA\0" "MYANMAR LETTER DDHA\0" "MYANMAR LETTER DHA\0" "MYANMAR LETTER E\0" "MYANMAR LETTER EASTERN PWO KAREN GHWA\0" "MYANMAR LETTER EASTERN PWO KAREN NNA\0" "MYANMAR LETTER EASTERN PWO KAREN YWA\0" "MYANMAR LETTER GA\0" "MYANMAR LETTER GHA\0" "MYANMAR LETTER GREAT SA\0" "MYANMAR LETTER HA\0" "MYANMAR LETTER I\0" "MYANMAR LETTER II\0" "MYANMAR LETTER JA\0" "MYANMAR LETTER JHA\0" "MYANMAR LETTER KA\0" "MYANMAR LETTER KHA\0" "MYANMAR LETTER KHAMTI CA\0" "MYANMAR LETTER KHAMTI CHA\0" "MYANMAR LETTER KHAMTI DDA\0" "MYANMAR LETTER KHAMTI DDHA\0" "MYANMAR LETTER KHAMTI DHA\0" "MYANMAR LETTER KHAMTI FA\0" "MYANMAR LETTER KHAMTI GA\0" "MYANMAR LETTER KHAMTI HA\0" "MYANMAR LETTER KHAMTI HHA\0" "MYANMAR LETTER KHAMTI JA\0" "MYANMAR LETTER KHAMTI JHA\0" "MYANMAR LETTER KHAMTI NA\0" "MYANMAR LETTER KHAMTI NYA\0" "MYANMAR LETTER KHAMTI RA\0" "MYANMAR LETTER KHAMTI SA\0" "MYANMAR LETTER KHAMTI TTA\0" "MYANMAR LETTER KHAMTI TTHA\0" "MYANMAR LETTER KHAMTI XA\0" "MYANMAR LETTER KHAMTI ZA\0" "MYANMAR LETTER LA\0" "MYANMAR LETTER LLA\0" "MYANMAR LETTER MA\0" "MYANMAR LETTER MON BBA\0" "MYANMAR LETTER MON BBE\0" "MYANMAR LETTER MON E\0" "MYANMAR LETTER MON JHA\0" "MYANMAR LETTER MON NGA\0" "MYANMAR LETTER NA\0" "MYANMAR LETTER NGA\0" "MYANMAR LETTER NNA\0" "MYANMAR LETTER NNYA\0" "MYANMAR LETTER NYA\0" "MYANMAR LETTER O\0" "MYANMAR LETTER PA\0" "MYANMAR LETTER PHA\0" "MYANMAR LETTER RA\0" "MYANMAR LETTER RUMAI PALAUNG FA\0" "MYANMAR LETTER SA\0" "MYANMAR LETTER SGAW KAREN SHA\0" "MYANMAR LETTER SHA\0" "MYANMAR LETTER SHAN A\0" "MYANMAR LETTER SHAN BA\0" "MYANMAR LETTER SHAN CA\0" "MYANMAR LETTER SHAN DA\0" "MYANMAR LETTER SHAN FA\0" "MYANMAR LETTER SHAN GA\0" "MYANMAR LETTER SHAN HA\0" "MYANMAR LETTER SHAN KA\0" "MYANMAR LETTER SHAN KHA\0" "MYANMAR LETTER SHAN NA\0" "MYANMAR LETTER SHAN NYA\0" "MYANMAR LETTER SHAN PHA\0" "MYANMAR LETTER SHAN THA\0" "MYANMAR LETTER SHAN ZA\0" "MYANMAR LETTER SSA\0" "MYANMAR LETTER TA\0" "MYANMAR LETTER THA\0" "MYANMAR LETTER TTA\0" "MYANMAR LETTER TTHA\0" "MYANMAR LETTER U\0" "MYANMAR LETTER UU\0" "MYANMAR LETTER VOCALIC L\0" "MYANMAR LETTER VOCALIC LL\0" "MYANMAR LETTER VOCALIC R\0" "MYANMAR LETTER VOCALIC RR\0" "MYANMAR LETTER WA\0" "MYANMAR LETTER WESTERN PWO KAREN PWA\0" "MYANMAR LETTER WESTERN PWO KAREN THA\0" "MYANMAR LETTER YA\0" "MYANMAR LOGOGRAM KHAMTI HM\0" "MYANMAR LOGOGRAM KHAMTI OAY\0" "MYANMAR LOGOGRAM KHAMTI QN\0" "MYANMAR MODIFIER LETTER KHAMTI REDUPLICATION\0" "MYANMAR SHAN DIGIT EIGHT\0" "MYANMAR SHAN DIGIT FIVE\0" "MYANMAR SHAN DIGIT FOUR\0" "MYANMAR SHAN DIGIT NINE\0" "MYANMAR SHAN DIGIT ONE\0" "MYANMAR SHAN DIGIT SEVEN\0" "MYANMAR SHAN DIGIT SIX\0" "MYANMAR SHAN DIGIT THREE\0" "MYANMAR SHAN DIGIT TWO\0" "MYANMAR SHAN DIGIT ZERO\0" "MYANMAR SIGN ANUSVARA\0" "MYANMAR SIGN ASAT\0" "MYANMAR SIGN DOT BELOW\0" "MYANMAR SIGN KHAMTI TONE-1\0" "MYANMAR SIGN KHAMTI TONE-3\0" "MYANMAR SIGN LITTLE SECTION\0" "MYANMAR SIGN PAO KAREN TONE\0" "MYANMAR SIGN RUMAI PALAUNG TONE-5\0" "MYANMAR SIGN SECTION\0" "MYANMAR SIGN SHAN COUNCIL EMPHATIC TONE\0" "MYANMAR SIGN SHAN COUNCIL TONE-2\0" "MYANMAR SIGN SHAN COUNCIL TONE-3\0" "MYANMAR SIGN SHAN TONE-2\0" "MYANMAR SIGN SHAN TONE-3\0" "MYANMAR SIGN SHAN TONE-5\0" "MYANMAR SIGN SHAN TONE-6\0" "MYANMAR SIGN VIRAMA\0" "MYANMAR SIGN VISARGA\0" "MYANMAR SIGN WESTERN PWO KAREN TONE-1\0" "MYANMAR SIGN WESTERN PWO KAREN TONE-2\0" "MYANMAR SIGN WESTERN PWO KAREN TONE-3\0" "MYANMAR SIGN WESTERN PWO KAREN TONE-4\0" "MYANMAR SIGN WESTERN PWO KAREN TONE-5\0" "MYANMAR SYMBOL AFOREMENTIONED\0" "MYANMAR SYMBOL AITON EXCLAMATION\0" "MYANMAR SYMBOL AITON ONE\0" "MYANMAR SYMBOL AITON TWO\0" "MYANMAR SYMBOL COMPLETED\0" "MYANMAR SYMBOL GENITIVE\0" "MYANMAR SYMBOL LOCATIVE\0" "MYANMAR SYMBOL SHAN EXCLAMATION\0" "MYANMAR SYMBOL SHAN ONE\0" "MYANMAR TONE MARK SGAW KAREN HATHI\0" "MYANMAR TONE MARK SGAW KAREN KE PHO\0" "MYANMAR VOWEL SIGN AA\0" "MYANMAR VOWEL SIGN AI\0" "MYANMAR VOWEL SIGN AITON A\0" "MYANMAR VOWEL SIGN AITON AI\0" "MYANMAR VOWEL SIGN E\0" "MYANMAR VOWEL SIGN E ABOVE\0" "MYANMAR VOWEL SIGN GEBA KAREN I\0" "MYANMAR VOWEL SIGN I\0" "MYANMAR VOWEL SIGN II\0" "MYANMAR VOWEL SIGN KAYAH EE\0" "MYANMAR VOWEL SIGN KAYAH OE\0" "MYANMAR VOWEL SIGN KAYAH U\0" "MYANMAR VOWEL SIGN MON II\0" "MYANMAR VOWEL SIGN MON O\0" "MYANMAR VOWEL SIGN SGAW KAREN EU\0" "MYANMAR VOWEL SIGN SHAN AA\0" "MYANMAR VOWEL SIGN SHAN E\0" "MYANMAR VOWEL SIGN SHAN E ABOVE\0" "MYANMAR VOWEL SIGN SHAN FINAL Y\0" "MYANMAR VOWEL SIGN TALL AA\0" "MYANMAR VOWEL SIGN U\0" "MYANMAR VOWEL SIGN UU\0" "MYANMAR VOWEL SIGN VOCALIC L\0" "MYANMAR VOWEL SIGN VOCALIC LL\0" "MYANMAR VOWEL SIGN VOCALIC R\0" "MYANMAR VOWEL SIGN VOCALIC RR\0" "MYANMAR VOWEL SIGN WESTERN PWO KAREN EU\0" "MYANMAR VOWEL SIGN WESTERN PWO KAREN UE\0" "N-ARY CIRCLED DOT OPERATOR\0" "N-ARY CIRCLED PLUS OPERATOR\0" "N-ARY CIRCLED TIMES OPERATOR\0" "N-ARY COPRODUCT\0" "N-ARY INTERSECTION\0" "N-ARY LOGICAL AND\0" "N-ARY LOGICAL OR\0" "N-ARY PRODUCT\0" "N-ARY SQUARE INTERSECTION OPERATOR\0" "N-ARY SQUARE UNION OPERATOR\0" "N-ARY SUMMATION\0" "N-ARY TIMES OPERATOR\0" "N-ARY UNION\0" "N-ARY UNION OPERATOR WITH DOT\0" "N-ARY UNION OPERATOR WITH PLUS\0" "N-ARY WHITE VERTICAL BAR\0" "NABLA\0" "NAIL POLISH\0" "NAIRA SIGN\0" "NAME BADGE\0" "NAND\0" "NARROW NO-BREAK SPACE\0" "NATIONAL DIGIT SHAPES\0" "NECKTIE\0" "NEGATED DOUBLE VERTICAL BAR DOUBLE RIGHT TURNSTILE\0" "NEGATIVE CIRCLED DIGIT ZERO\0" "NEGATIVE CIRCLED LATIN CAPITAL LETTER A\0" "NEGATIVE CIRCLED LATIN CAPITAL LETTER B\0" "NEGATIVE CIRCLED LATIN CAPITAL LETTER C\0" "NEGATIVE CIRCLED LATIN CAPITAL LETTER D\0" "NEGATIVE CIRCLED LATIN CAPITAL LETTER E\0" "NEGATIVE CIRCLED LATIN CAPITAL LETTER F\0" "NEGATIVE CIRCLED LATIN CAPITAL LETTER G\0" "NEGATIVE CIRCLED LATIN CAPITAL LETTER H\0" "NEGATIVE CIRCLED LATIN CAPITAL LETTER I\0" "NEGATIVE CIRCLED LATIN CAPITAL LETTER J\0" "NEGATIVE CIRCLED LATIN CAPITAL LETTER K\0" "NEGATIVE CIRCLED LATIN CAPITAL LETTER L\0" "NEGATIVE CIRCLED LATIN CAPITAL LETTER M\0" "NEGATIVE CIRCLED LATIN CAPITAL LETTER N\0" "NEGATIVE CIRCLED LATIN CAPITAL LETTER O\0" "NEGATIVE CIRCLED LATIN CAPITAL LETTER P\0" "NEGATIVE CIRCLED LATIN CAPITAL LETTER Q\0" "NEGATIVE CIRCLED LATIN CAPITAL LETTER R\0" "NEGATIVE CIRCLED LATIN CAPITAL LETTER S\0" "NEGATIVE CIRCLED LATIN CAPITAL LETTER T\0" "NEGATIVE CIRCLED LATIN CAPITAL LETTER U\0" "NEGATIVE CIRCLED LATIN CAPITAL LETTER V\0" "NEGATIVE CIRCLED LATIN CAPITAL LETTER W\0" "NEGATIVE CIRCLED LATIN CAPITAL LETTER X\0" "NEGATIVE CIRCLED LATIN CAPITAL LETTER Y\0" "NEGATIVE CIRCLED LATIN CAPITAL LETTER Z\0" "NEGATIVE CIRCLED NUMBER EIGHTEEN\0" "NEGATIVE CIRCLED NUMBER ELEVEN\0" "NEGATIVE CIRCLED NUMBER FIFTEEN\0" "NEGATIVE CIRCLED NUMBER FOURTEEN\0" "NEGATIVE CIRCLED NUMBER NINETEEN\0" "NEGATIVE CIRCLED NUMBER SEVENTEEN\0" "NEGATIVE CIRCLED NUMBER SIXTEEN\0" "NEGATIVE CIRCLED NUMBER THIRTEEN\0" "NEGATIVE CIRCLED NUMBER TWELVE\0" "NEGATIVE CIRCLED NUMBER TWENTY\0" "NEGATIVE SQUARED AB\0" "NEGATIVE SQUARED CROSS MARK\0" "NEGATIVE SQUARED IC\0" "NEGATIVE SQUARED LATIN CAPITAL LETTER A\0" "NEGATIVE SQUARED LATIN CAPITAL LETTER B\0" "NEGATIVE SQUARED LATIN CAPITAL LETTER C\0" "NEGATIVE SQUARED LATIN CAPITAL LETTER D\0" "NEGATIVE SQUARED LATIN CAPITAL LETTER E\0" "NEGATIVE SQUARED LATIN CAPITAL LETTER F\0" "NEGATIVE SQUARED LATIN CAPITAL LETTER G\0" "NEGATIVE SQUARED LATIN CAPITAL LETTER H\0" "NEGATIVE SQUARED LATIN CAPITAL LETTER I\0" "NEGATIVE SQUARED LATIN CAPITAL LETTER J\0" "NEGATIVE SQUARED LATIN CAPITAL LETTER K\0" "NEGATIVE SQUARED LATIN CAPITAL LETTER L\0" "NEGATIVE SQUARED LATIN CAPITAL LETTER M\0" "NEGATIVE SQUARED LATIN CAPITAL LETTER N\0" "NEGATIVE SQUARED LATIN CAPITAL LETTER O\0" "NEGATIVE SQUARED LATIN CAPITAL LETTER P\0" "NEGATIVE SQUARED LATIN CAPITAL LETTER Q\0" "NEGATIVE SQUARED LATIN CAPITAL LETTER R\0" "NEGATIVE SQUARED LATIN CAPITAL LETTER S\0" "NEGATIVE SQUARED LATIN CAPITAL LETTER T\0" "NEGATIVE SQUARED LATIN CAPITAL LETTER U\0" "NEGATIVE SQUARED LATIN CAPITAL LETTER V\0" "NEGATIVE SQUARED LATIN CAPITAL LETTER W\0" "NEGATIVE SQUARED LATIN CAPITAL LETTER X\0" "NEGATIVE SQUARED LATIN CAPITAL LETTER Y\0" "NEGATIVE SQUARED LATIN CAPITAL LETTER Z\0" "NEGATIVE SQUARED PA\0" "NEGATIVE SQUARED SA\0" "NEGATIVE SQUARED WC\0" "NEITHER A SUBSET OF NOR EQUAL TO\0" "NEITHER A SUPERSET OF NOR EQUAL TO\0" "NEITHER APPROXIMATELY NOR ACTUALLY EQUAL TO\0" "NEITHER GREATER-THAN NOR EQUAL TO\0" "NEITHER GREATER-THAN NOR EQUIVALENT TO\0" "NEITHER GREATER-THAN NOR LESS-THAN\0" "NEITHER LESS-THAN NOR EQUAL TO\0" "NEITHER LESS-THAN NOR EQUIVALENT TO\0" "NEITHER LESS-THAN NOR GREATER-THAN\0" "NEPTUNE\0" "NEUTER\0" "NEUTRAL FACE\0" "NEW MOON SYMBOL\0" "NEW MOON WITH FACE\0" "NEW SHEQEL SIGN\0" "NEW TAI LUE DIGIT EIGHT\0" "NEW TAI LUE DIGIT FIVE\0" "NEW TAI LUE DIGIT FOUR\0" "NEW TAI LUE DIGIT NINE\0" "NEW TAI LUE DIGIT ONE\0" "NEW TAI LUE DIGIT SEVEN\0" "NEW TAI LUE DIGIT SIX\0" "NEW TAI LUE DIGIT THREE\0" "NEW TAI LUE DIGIT TWO\0" "NEW TAI LUE DIGIT ZERO\0" "NEW TAI LUE LETTER FINAL B\0" "NEW TAI LUE LETTER FINAL D\0" "NEW TAI LUE LETTER FINAL K\0" "NEW TAI LUE LETTER FINAL M\0" "NEW TAI LUE LETTER FINAL N\0" "NEW TAI LUE LETTER FINAL NG\0" "NEW TAI LUE LETTER FINAL V\0" "NEW TAI LUE LETTER HIGH BA\0" "NEW TAI LUE LETTER HIGH DA\0" "NEW TAI LUE LETTER HIGH FA\0" "NEW TAI LUE LETTER HIGH HA\0" "NEW TAI LUE LETTER HIGH KA\0" "NEW TAI LUE LETTER HIGH KVA\0" "NEW TAI LUE LETTER HIGH LA\0" "NEW TAI LUE LETTER HIGH MA\0" "NEW TAI LUE LETTER HIGH NA\0" "NEW TAI LUE LETTER HIGH NGA\0" "NEW TAI LUE LETTER HIGH PA\0" "NEW TAI LUE LETTER HIGH PHA\0" "NEW TAI LUE LETTER HIGH QA\0" "NEW TAI LUE LETTER HIGH SA\0" "NEW TAI LUE LETTER HIGH SUA\0" "NEW TAI LUE LETTER HIGH TA\0" "NEW TAI LUE LETTER HIGH THA\0" "NEW TAI LUE LETTER HIGH TSA\0" "NEW TAI LUE LETTER HIGH VA\0" "NEW TAI LUE LETTER HIGH XA\0" "NEW TAI LUE LETTER HIGH XVA\0" "NEW TAI LUE LETTER HIGH YA\0" "NEW TAI LUE LETTER LOW BA\0" "NEW TAI LUE LETTER LOW DA\0" "NEW TAI LUE LETTER LOW FA\0" "NEW TAI LUE LETTER LOW HA\0" "NEW TAI LUE LETTER LOW KA\0" "NEW TAI LUE LETTER LOW KVA\0" "NEW TAI LUE LETTER LOW LA\0" "NEW TAI LUE LETTER LOW MA\0" "NEW TAI LUE LETTER LOW NA\0" "NEW TAI LUE LETTER LOW NGA\0" "NEW TAI LUE LETTER LOW PA\0" "NEW TAI LUE LETTER LOW PHA\0" "NEW TAI LUE LETTER LOW QA\0" "NEW TAI LUE LETTER LOW SA\0" "NEW TAI LUE LETTER LOW SUA\0" "NEW TAI LUE LETTER LOW TA\0" "NEW TAI LUE LETTER LOW THA\0" "NEW TAI LUE LETTER LOW TSA\0" "NEW TAI LUE LETTER LOW VA\0" "NEW TAI LUE LETTER LOW XA\0" "NEW TAI LUE LETTER LOW XVA\0" "NEW TAI LUE LETTER LOW YA\0" "NEW TAI LUE SIGN LAE\0" "NEW TAI LUE SIGN LAEV\0" "NEW TAI LUE THAM DIGIT ONE\0" "NEW TAI LUE TONE MARK-1\0" "NEW TAI LUE TONE MARK-2\0" "NEW TAI LUE VOWEL SIGN AA\0" "NEW TAI LUE VOWEL SIGN AAY\0" "NEW TAI LUE VOWEL SIGN AE\0" "NEW TAI LUE VOWEL SIGN AY\0" "NEW TAI LUE VOWEL SIGN E\0" "NEW TAI LUE VOWEL SIGN II\0" "NEW TAI LUE VOWEL SIGN IY\0" "NEW TAI LUE VOWEL SIGN O\0" "NEW TAI LUE VOWEL SIGN OA\0" "NEW TAI LUE VOWEL SIGN OAY\0" "NEW TAI LUE VOWEL SIGN OY\0" "NEW TAI LUE VOWEL SIGN U\0" "NEW TAI LUE VOWEL SIGN UE\0" "NEW TAI LUE VOWEL SIGN UEY\0" "NEW TAI LUE VOWEL SIGN UU\0" "NEW TAI LUE VOWEL SIGN UY\0" "NEW TAI LUE VOWEL SIGN VOWEL SHORTENER\0" "NEWSPAPER\0" "NEXT PAGE\0" "NIGHT WITH STARS\0" "NKO COMBINING DOUBLE DOT ABOVE\0" "NKO COMBINING LONG DESCENDING TONE\0" "NKO COMBINING LONG HIGH TONE\0" "NKO COMBINING LONG LOW TONE\0" "NKO COMBINING LONG RISING TONE\0" "NKO COMBINING NASALIZATION MARK\0" "NKO COMBINING SHORT HIGH TONE\0" "NKO COMBINING SHORT LOW TONE\0" "NKO COMBINING SHORT RISING TONE\0" "NKO COMMA\0" "NKO DIGIT EIGHT\0" "NKO DIGIT FIVE\0" "NKO DIGIT FOUR\0" "NKO DIGIT NINE\0" "NKO DIGIT ONE\0" "NKO DIGIT SEVEN\0" "NKO DIGIT SIX\0" "NKO DIGIT THREE\0" "NKO DIGIT TWO\0" "NKO DIGIT ZERO\0" "NKO EXCLAMATION MARK\0" "NKO HIGH TONE APOSTROPHE\0" "NKO LAJANYALAN\0" "NKO LETTER A\0" "NKO LETTER BA\0" "NKO LETTER CHA\0" "NKO LETTER DA\0" "NKO LETTER DAGBASINNA\0" "NKO LETTER E\0" "NKO LETTER EE\0" "NKO LETTER FA\0" "NKO LETTER GBA\0" "NKO LETTER HA\0" "NKO LETTER I\0" "NKO LETTER JA\0" "NKO LETTER JONA CHA\0" "NKO LETTER JONA JA\0" "NKO LETTER JONA RA\0" "NKO LETTER KA\0" "NKO LETTER LA\0" "NKO LETTER MA\0" "NKO LETTER N\0" "NKO LETTER NA\0" "NKO LETTER NA WOLOSO\0" "NKO LETTER NYA\0" "NKO LETTER NYA WOLOSO\0" "NKO LETTER O\0" "NKO LETTER OO\0" "NKO LETTER PA\0" "NKO LETTER RA\0" "NKO LETTER RRA\0" "NKO LETTER SA\0" "NKO LETTER TA\0" "NKO LETTER U\0" "NKO LETTER WA\0" "NKO LETTER YA\0" "NKO LOW TONE APOSTROPHE\0" "NKO SYMBOL GBAKURUNEN\0" "NKO SYMBOL OO DENNEN\0" "NO BICYCLES\0" "NO ENTRY\0" "NO ENTRY SIGN\0" "NO MOBILE PHONES\0" "NO ONE UNDER EIGHTEEN SYMBOL\0" "NO PEDESTRIANS\0" "NO SMOKING SYMBOL\0" "NO-BREAK SPACE\0" "NOMINAL DIGIT SHAPES\0" "NON-BREAKING HYPHEN\0" "NON-POTABLE WATER SYMBOL\0" "NONFORKING\0" "NOR\0" "NORMAL SUBGROUP OF\0" "NORMAL SUBGROUP OF OR EQUAL TO\0" "NORTH EAST AND SOUTH WEST ARROW\0" "NORTH EAST ARROW\0" "NORTH EAST ARROW AND SOUTH EAST ARROW\0" "NORTH EAST ARROW CROSSING NORTH WEST ARROW\0" "NORTH EAST ARROW CROSSING SOUTH EAST ARROW\0" "NORTH EAST ARROW WITH HOOK\0" "NORTH EAST BLACK ARROW\0" "NORTH EAST DOUBLE ARROW\0" "NORTH EAST WHITE ARROW\0" "NORTH INDIC FRACTION ONE EIGHTH\0" "NORTH INDIC FRACTION ONE HALF\0" "NORTH INDIC FRACTION ONE QUARTER\0" "NORTH INDIC FRACTION ONE SIXTEENTH\0" "NORTH INDIC FRACTION THREE QUARTERS\0" "NORTH INDIC FRACTION THREE SIXTEENTHS\0" "NORTH INDIC PLACEHOLDER MARK\0" "NORTH INDIC QUANTITY MARK\0" "NORTH INDIC QUARTER MARK\0" "NORTH INDIC RUPEE MARK\0" "NORTH WEST AND SOUTH EAST ARROW\0" "NORTH WEST ARROW\0" "NORTH WEST ARROW AND NORTH EAST ARROW\0" "NORTH WEST ARROW CROSSING NORTH EAST ARROW\0" "NORTH WEST ARROW TO CORNER\0" "NORTH WEST ARROW TO LONG BAR\0" "NORTH WEST ARROW WITH HOOK\0" "NORTH WEST BLACK ARROW\0" "NORTH WEST DOUBLE ARROW\0" "NORTH WEST WHITE ARROW\0" "NOSE\0" "NOT A SUBSET OF\0" "NOT A SUPERSET OF\0" "NOT ALMOST EQUAL TO\0" "NOT AN ELEMENT OF\0" "NOT ASYMPTOTICALLY EQUAL TO\0" "NOT CHECK MARK\0" "NOT EQUAL TO\0" "NOT EQUIVALENT TO\0" "NOT GREATER-THAN\0" "NOT IDENTICAL TO\0" "NOT LESS-THAN\0" "NOT NORMAL SUBGROUP OF\0" "NOT NORMAL SUBGROUP OF OR EQUAL TO\0" "NOT PARALLEL TO\0" "NOT SIGN\0" "NOT SQUARE IMAGE OF OR EQUAL TO\0" "NOT SQUARE ORIGINAL OF OR EQUAL TO\0" "NOT TILDE\0" "NOT TRUE\0" "NOTCHED LOWER RIGHT-SHADOWED WHITE RIGHTWARDS ARROW\0" "NOTCHED UPPER RIGHT-SHADOWED WHITE RIGHTWARDS ARROW\0" "NOTEBOOK\0" "NOTEBOOK WITH DECORATIVE COVER\0" "NUMBER EIGHTEEN FULL STOP\0" "NUMBER ELEVEN FULL STOP\0" "NUMBER FIFTEEN FULL STOP\0" "NUMBER FOURTEEN FULL STOP\0" "NUMBER NINETEEN FULL STOP\0" "NUMBER SEVENTEEN FULL STOP\0" "NUMBER SIGN\0" "NUMBER SIXTEEN FULL STOP\0" "NUMBER TEN FULL STOP\0" "NUMBER THIRTEEN FULL STOP\0" "NUMBER TWELVE FULL STOP\0" "NUMBER TWENTY FULL STOP\0" "NUMERO SIGN\0" "NUT AND BOLT\0" "OBJECT REPLACEMENT CHARACTER\0" "OBLIQUE ANGLE OPENING DOWN\0" "OBLIQUE ANGLE OPENING UP\0" "OCR AMOUNT OF CHECK\0" "OCR BELT BUCKLE\0" "OCR BOW TIE\0" "OCR BRANCH BANK IDENTIFICATION\0" "OCR CHAIR\0" "OCR CUSTOMER ACCOUNT NUMBER\0" "OCR DASH\0" "OCR DOUBLE BACKSLASH\0" "OCR FORK\0" "OCR HOOK\0" "OCR INVERTED FORK\0" "OCTOPUS\0" "ODEN\0" "OFFICE BUILDING\0" "OGHAM FEATHER MARK\0" "OGHAM LETTER AILM\0" "OGHAM LETTER BEITH\0" "OGHAM LETTER CEIRT\0" "OGHAM LETTER COLL\0" "OGHAM LETTER DAIR\0" "OGHAM LETTER EABHADH\0" "OGHAM LETTER EADHADH\0" "OGHAM LETTER EAMHANCHOLL\0" "OGHAM LETTER FEARN\0" "OGHAM LETTER GORT\0" "OGHAM LETTER IFIN\0" "OGHAM LETTER IODHADH\0" "OGHAM LETTER LUIS\0" "OGHAM LETTER MUIN\0" "OGHAM LETTER NGEADAL\0" "OGHAM LETTER NION\0" "OGHAM LETTER ONN\0" "OGHAM LETTER OR\0" "OGHAM LETTER PEITH\0" "OGHAM LETTER RUIS\0" "OGHAM LETTER SAIL\0" "OGHAM LETTER STRAIF\0" "OGHAM LETTER TINNE\0" "OGHAM LETTER UATH\0" "OGHAM LETTER UILLEANN\0" "OGHAM LETTER UR\0" "OGHAM REVERSED FEATHER MARK\0" "OGHAM SPACE MARK\0" "OGONEK\0" "OHM SIGN\0" "OK HAND SIGN\0" "OL CHIKI AHAD\0" "OL CHIKI DIGIT EIGHT\0" "OL CHIKI DIGIT FIVE\0" "OL CHIKI DIGIT FOUR\0" "OL CHIKI DIGIT NINE\0" "OL CHIKI DIGIT ONE\0" "OL CHIKI DIGIT SEVEN\0" "OL CHIKI DIGIT SIX\0" "OL CHIKI DIGIT THREE\0" "OL CHIKI DIGIT TWO\0" "OL CHIKI DIGIT ZERO\0" "OL CHIKI GAAHLAA TTUDDAAG\0" "OL CHIKI LETTER AAJ\0" "OL CHIKI LETTER AAK\0" "OL CHIKI LETTER AAM\0" "OL CHIKI LETTER AAW\0" "OL CHIKI LETTER AG\0" "OL CHIKI LETTER AL\0" "OL CHIKI LETTER ANG\0" "OL CHIKI LETTER AT\0" "OL CHIKI LETTER EDD\0" "OL CHIKI LETTER EN\0" "OL CHIKI LETTER EP\0" "OL CHIKI LETTER ERR\0" "OL CHIKI LETTER IH\0" "OL CHIKI LETTER INY\0" "OL CHIKI LETTER IR\0" "OL CHIKI LETTER IS\0" "OL CHIKI LETTER LA\0" "OL CHIKI LETTER LAA\0" "OL CHIKI LETTER LE\0" "OL CHIKI LETTER LI\0" "OL CHIKI LETTER LO\0" "OL CHIKI LETTER LU\0" "OL CHIKI LETTER OB\0" "OL CHIKI LETTER OH\0" "OL CHIKI LETTER OTT\0" "OL CHIKI LETTER OV\0" "OL CHIKI LETTER UC\0" "OL CHIKI LETTER UD\0" "OL CHIKI LETTER UNN\0" "OL CHIKI LETTER UY\0" "OL CHIKI MU TTUDDAG\0" "OL CHIKI MU-GAAHLAA TTUDDAAG\0" "OL CHIKI PHAARKAA\0" "OL CHIKI PUNCTUATION DOUBLE MUCAAD\0" "OL CHIKI PUNCTUATION MUCAAD\0" "OL CHIKI RELAA\0" "OLD ITALIC LETTER A\0" "OLD ITALIC LETTER BE\0" "OLD ITALIC LETTER CHE\0" "OLD ITALIC LETTER DE\0" "OLD ITALIC LETTER E\0" "OLD ITALIC LETTER EF\0" "OLD ITALIC LETTER EKS\0" "OLD ITALIC LETTER EL\0" "OLD ITALIC LETTER EM\0" "OLD ITALIC LETTER EN\0" "OLD ITALIC LETTER ER\0" "OLD ITALIC LETTER ERS\0" "OLD ITALIC LETTER ES\0" "OLD ITALIC LETTER ESH\0" "OLD ITALIC LETTER HE\0" "OLD ITALIC LETTER I\0" "OLD ITALIC LETTER II\0" "OLD ITALIC LETTER KA\0" "OLD ITALIC LETTER KE\0" "OLD ITALIC LETTER KHE\0" "OLD ITALIC LETTER KU\0" "OLD ITALIC LETTER O\0" "OLD ITALIC LETTER PE\0" "OLD ITALIC LETTER PHE\0" "OLD ITALIC LETTER SHE\0" "OLD ITALIC LETTER TE\0" "OLD ITALIC LETTER THE\0" "OLD ITALIC LETTER U\0" "OLD ITALIC LETTER UU\0" "OLD ITALIC LETTER VE\0" "OLD ITALIC LETTER ZE\0" "OLD ITALIC NUMERAL FIFTY\0" "OLD ITALIC NUMERAL FIVE\0" "OLD ITALIC NUMERAL ONE\0" "OLD ITALIC NUMERAL TEN\0" "OLD PERSIAN NUMBER HUNDRED\0" "OLD PERSIAN NUMBER ONE\0" "OLD PERSIAN NUMBER TEN\0" "OLD PERSIAN NUMBER TWENTY\0" "OLD PERSIAN NUMBER TWO\0" "OLD PERSIAN SIGN A\0" "OLD PERSIAN SIGN AURAMAZDAA\0" "OLD PERSIAN SIGN AURAMAZDAA-2\0" "OLD PERSIAN SIGN AURAMAZDAAHA\0" "OLD PERSIAN SIGN BA\0" "OLD PERSIAN SIGN BAGA\0" "OLD PERSIAN SIGN BUUMISH\0" "OLD PERSIAN SIGN CA\0" "OLD PERSIAN SIGN DA\0" "OLD PERSIAN SIGN DAHYAAUSH\0" "OLD PERSIAN SIGN DAHYAAUSH-2\0" "OLD PERSIAN SIGN DI\0" "OLD PERSIAN SIGN DU\0" "OLD PERSIAN SIGN FA\0" "OLD PERSIAN SIGN GA\0" "OLD PERSIAN SIGN GU\0" "OLD PERSIAN SIGN HA\0" "OLD PERSIAN SIGN I\0" "OLD PERSIAN SIGN JA\0" "OLD PERSIAN SIGN JI\0" "OLD PERSIAN SIGN KA\0" "OLD PERSIAN SIGN KU\0" "OLD PERSIAN SIGN LA\0" "OLD PERSIAN SIGN MA\0" "OLD PERSIAN SIGN MI\0" "OLD PERSIAN SIGN MU\0" "OLD PERSIAN SIGN NA\0" "OLD PERSIAN SIGN NU\0" "OLD PERSIAN SIGN PA\0" "OLD PERSIAN SIGN RA\0" "OLD PERSIAN SIGN RU\0" "OLD PERSIAN SIGN SA\0" "OLD PERSIAN SIGN SHA\0" "OLD PERSIAN SIGN SSA\0" "OLD PERSIAN SIGN TA\0" "OLD PERSIAN SIGN THA\0" "OLD PERSIAN SIGN TU\0" "OLD PERSIAN SIGN U\0" "OLD PERSIAN SIGN VA\0" "OLD PERSIAN SIGN VI\0" "OLD PERSIAN SIGN XA\0" "OLD PERSIAN SIGN XSHAAYATHIYA\0" "OLD PERSIAN SIGN YA\0" "OLD PERSIAN SIGN ZA\0" "OLD PERSIAN WORD DIVIDER\0" "OLD SOUTH ARABIAN LETTER ALEF\0" "OLD SOUTH ARABIAN LETTER AYN\0" "OLD SOUTH ARABIAN LETTER BETH\0" "OLD SOUTH ARABIAN LETTER DALETH\0" "OLD SOUTH ARABIAN LETTER DHADHE\0" "OLD SOUTH ARABIAN LETTER DHALETH\0" "OLD SOUTH ARABIAN LETTER FE\0" "OLD SOUTH ARABIAN LETTER GHAYN\0" "OLD SOUTH ARABIAN LETTER GIMEL\0" "OLD SOUTH ARABIAN LETTER HE\0" "OLD SOUTH ARABIAN LETTER HETH\0" "OLD SOUTH ARABIAN LETTER KAPH\0" "OLD SOUTH ARABIAN LETTER KHETH\0" "OLD SOUTH ARABIAN LETTER LAMEDH\0" "OLD SOUTH ARABIAN LETTER MEM\0" "OLD SOUTH ARABIAN LETTER NUN\0" "OLD SOUTH ARABIAN LETTER QOPH\0" "OLD SOUTH ARABIAN LETTER RESH\0" "OLD SOUTH ARABIAN LETTER SADHE\0" "OLD SOUTH ARABIAN LETTER SAMEKH\0" "OLD SOUTH ARABIAN LETTER SAT\0" "OLD SOUTH ARABIAN LETTER SHIN\0" "OLD SOUTH ARABIAN LETTER TAW\0" "OLD SOUTH ARABIAN LETTER TETH\0" "OLD SOUTH ARABIAN LETTER THAW\0" "OLD SOUTH ARABIAN LETTER THETH\0" "OLD SOUTH ARABIAN LETTER WAW\0" "OLD SOUTH ARABIAN LETTER YODH\0" "OLD SOUTH ARABIAN LETTER ZAYN\0" "OLD SOUTH ARABIAN NUMBER FIFTY\0" "OLD SOUTH ARABIAN NUMBER ONE\0" "OLD SOUTH ARABIAN NUMERIC INDICATOR\0" "OLD TURKIC LETTER ORKHON A\0" "OLD TURKIC LETTER ORKHON AB\0" "OLD TURKIC LETTER ORKHON AD\0" "OLD TURKIC LETTER ORKHON AEB\0" "OLD TURKIC LETTER ORKHON AED\0" "OLD TURKIC LETTER ORKHON AEG\0" "OLD TURKIC LETTER ORKHON AEK\0" "OLD TURKIC LETTER ORKHON AEL\0" "OLD TURKIC LETTER ORKHON AEN\0" "OLD TURKIC LETTER ORKHON AER\0" "OLD TURKIC LETTER ORKHON AES\0" "OLD TURKIC LETTER ORKHON AET\0" "OLD TURKIC LETTER ORKHON AEY\0" "OLD TURKIC LETTER ORKHON AG\0" "OLD TURKIC LETTER ORKHON AL\0" "OLD TURKIC LETTER ORKHON AN\0" "OLD TURKIC LETTER ORKHON AQ\0" "OLD TURKIC LETTER ORKHON AR\0" "OLD TURKIC LETTER ORKHON AS\0" "OLD TURKIC LETTER ORKHON ASH\0" "OLD TURKIC LETTER ORKHON AT\0" "OLD TURKIC LETTER ORKHON AY\0" "OLD TURKIC LETTER ORKHON BASH\0" "OLD TURKIC LETTER ORKHON EC\0" "OLD TURKIC LETTER ORKHON ELT\0" "OLD TURKIC LETTER ORKHON EM\0" "OLD TURKIC LETTER ORKHON ENC\0" "OLD TURKIC LETTER ORKHON ENG\0" "OLD TURKIC LETTER ORKHON ENT\0" "OLD TURKIC LETTER ORKHON ENY\0" "OLD TURKIC LETTER ORKHON EP\0" "OLD TURKIC LETTER ORKHON ESH\0" "OLD TURKIC LETTER ORKHON EZ\0" "OLD TURKIC LETTER ORKHON I\0" "OLD TURKIC LETTER ORKHON IC\0" "OLD TURKIC LETTER ORKHON IQ\0" "OLD TURKIC LETTER ORKHON O\0" "OLD TURKIC LETTER ORKHON OE\0" "OLD TURKIC LETTER ORKHON OEK\0" "OLD TURKIC LETTER ORKHON OP\0" "OLD TURKIC LETTER ORKHON OQ\0" "OLD TURKIC LETTER ORKHON OT\0" "OLD TURKIC LETTER YENISEI A\0" "OLD TURKIC LETTER YENISEI AB\0" "OLD TURKIC LETTER YENISEI AD\0" "OLD TURKIC LETTER YENISEI AE\0" "OLD TURKIC LETTER YENISEI AEB\0" "OLD TURKIC LETTER YENISEI AEG\0" "OLD TURKIC LETTER YENISEI AEK\0" "OLD TURKIC LETTER YENISEI AEN\0" "OLD TURKIC LETTER YENISEI AENG\0" "OLD TURKIC LETTER YENISEI AET\0" "OLD TURKIC LETTER YENISEI AEY\0" "OLD TURKIC LETTER YENISEI AG\0" "OLD TURKIC LETTER YENISEI AL\0" "OLD TURKIC LETTER YENISEI ANG\0" "OLD TURKIC LETTER YENISEI AQ\0" "OLD TURKIC LETTER YENISEI AR\0" "OLD TURKIC LETTER YENISEI ASH\0" "OLD TURKIC LETTER YENISEI AT\0" "OLD TURKIC LETTER YENISEI AY\0" "OLD TURKIC LETTER YENISEI E\0" "OLD TURKIC LETTER YENISEI EC\0" "OLD TURKIC LETTER YENISEI ENC\0" "OLD TURKIC LETTER YENISEI ENT\0" "OLD TURKIC LETTER YENISEI ENY\0" "OLD TURKIC LETTER YENISEI ESH\0" "OLD TURKIC LETTER YENISEI EZ\0" "OLD TURKIC LETTER YENISEI I\0" "OLD TURKIC LETTER YENISEI IQ\0" "OLD TURKIC LETTER YENISEI OE\0" "OLD TURKIC LETTER YENISEI OEK\0" "OLD TURKIC LETTER YENISEI OQ\0" "OLDER MAN\0" "OLDER WOMAN\0" "ON WITH EXCLAMATION MARK WITH LEFT RIGHT ARROW ABOVE\0" "ONCOMING AUTOMOBILE\0" "ONCOMING BUS\0" "ONCOMING POLICE CAR\0" "ONCOMING TAXI\0" "ONE DOT LEADER\0" "ONE DOT OVER TWO DOTS PUNCTUATION\0" "OPEN BOOK\0" "OPEN BOX\0" "OPEN CENTRE ASTERISK\0" "OPEN CENTRE BLACK STAR\0" "OPEN CENTRE CROSS\0" "OPEN CENTRE TEARDROP-SPOKED ASTERISK\0" "OPEN FILE FOLDER\0" "OPEN HANDS SIGN\0" "OPEN LOCK\0" "OPEN MAILBOX WITH LOWERED FLAG\0" "OPEN MAILBOX WITH RAISED FLAG\0" "OPEN SUBSET\0" "OPEN SUPERSET\0" "OPEN-CIRCUIT-OUTPUT H-TYPE SYMBOL\0" "OPEN-CIRCUIT-OUTPUT L-TYPE SYMBOL\0" "OPEN-OUTLINED RIGHTWARDS ARROW\0" "OPHIUCHUS\0" "OPPOSITION\0" "OPTICAL DISC\0" "OPTION KEY\0" "OR WITH DOT INSIDE\0" "ORANGE BOOK\0" "ORIGINAL OF\0" "ORIYA AI LENGTH MARK\0" "ORIYA AU LENGTH MARK\0" "ORIYA DIGIT EIGHT\0" "ORIYA DIGIT FIVE\0" "ORIYA DIGIT FOUR\0" "ORIYA DIGIT NINE\0" "ORIYA DIGIT ONE\0" "ORIYA DIGIT SEVEN\0" "ORIYA DIGIT SIX\0" "ORIYA DIGIT THREE\0" "ORIYA DIGIT TWO\0" "ORIYA DIGIT ZERO\0" "ORIYA FRACTION ONE EIGHTH\0" "ORIYA FRACTION ONE HALF\0" "ORIYA FRACTION ONE QUARTER\0" "ORIYA FRACTION ONE SIXTEENTH\0" "ORIYA FRACTION THREE QUARTERS\0" "ORIYA FRACTION THREE SIXTEENTHS\0" "ORIYA ISSHAR\0" "ORIYA LETTER A\0" "ORIYA LETTER AA\0" "ORIYA LETTER AI\0" "ORIYA LETTER AU\0" "ORIYA LETTER BA\0" "ORIYA LETTER BHA\0" "ORIYA LETTER CA\0" "ORIYA LETTER CHA\0" "ORIYA LETTER DA\0" "ORIYA LETTER DDA\0" "ORIYA LETTER DDHA\0" "ORIYA LETTER DHA\0" "ORIYA LETTER E\0" "ORIYA LETTER GA\0" "ORIYA LETTER GHA\0" "ORIYA LETTER HA\0" "ORIYA LETTER I\0" "ORIYA LETTER II\0" "ORIYA LETTER JA\0" "ORIYA LETTER JHA\0" "ORIYA LETTER KA\0" "ORIYA LETTER KHA\0" "ORIYA LETTER LA\0" "ORIYA LETTER LLA\0" "ORIYA LETTER MA\0" "ORIYA LETTER NA\0" "ORIYA LETTER NGA\0" "ORIYA LETTER NNA\0" "ORIYA LETTER NYA\0" "ORIYA LETTER O\0" "ORIYA LETTER PA\0" "ORIYA LETTER PHA\0" "ORIYA LETTER RA\0" "ORIYA LETTER RHA\0" "ORIYA LETTER RRA\0" "ORIYA LETTER SA\0" "ORIYA LETTER SHA\0" "ORIYA LETTER SSA\0" "ORIYA LETTER TA\0" "ORIYA LETTER THA\0" "ORIYA LETTER TTA\0" "ORIYA LETTER TTHA\0" "ORIYA LETTER U\0" "ORIYA LETTER UU\0" "ORIYA LETTER VA\0" "ORIYA LETTER VOCALIC L\0" "ORIYA LETTER VOCALIC LL\0" "ORIYA LETTER VOCALIC R\0" "ORIYA LETTER VOCALIC RR\0" "ORIYA LETTER WA\0" "ORIYA LETTER YA\0" "ORIYA LETTER YYA\0" "ORIYA SIGN ANUSVARA\0" "ORIYA SIGN AVAGRAHA\0" "ORIYA SIGN CANDRABINDU\0" "ORIYA SIGN NUKTA\0" "ORIYA SIGN VIRAMA\0" "ORIYA SIGN VISARGA\0" "ORIYA VOWEL SIGN AA\0" "ORIYA VOWEL SIGN AI\0" "ORIYA VOWEL SIGN AU\0" "ORIYA VOWEL SIGN E\0" "ORIYA VOWEL SIGN I\0" "ORIYA VOWEL SIGN II\0" "ORIYA VOWEL SIGN O\0" "ORIYA VOWEL SIGN U\0" "ORIYA VOWEL SIGN UU\0" "ORIYA VOWEL SIGN VOCALIC L\0" "ORIYA VOWEL SIGN VOCALIC LL\0" "ORIYA VOWEL SIGN VOCALIC R\0" "ORIYA VOWEL SIGN VOCALIC RR\0" "ORNATE LEFT PARENTHESIS\0" "ORNATE RIGHT PARENTHESIS\0" "ORTHODOX CROSS\0" "OSMANYA DIGIT EIGHT\0" "OSMANYA DIGIT FIVE\0" "OSMANYA DIGIT FOUR\0" "OSMANYA DIGIT NINE\0" "OSMANYA DIGIT ONE\0" "OSMANYA DIGIT SEVEN\0" "OSMANYA DIGIT SIX\0" "OSMANYA DIGIT THREE\0" "OSMANYA DIGIT TWO\0" "OSMANYA DIGIT ZERO\0" "OSMANYA LETTER A\0" "OSMANYA LETTER AA\0" "OSMANYA LETTER ALEF\0" "OSMANYA LETTER BA\0" "OSMANYA LETTER CAYN\0" "OSMANYA LETTER DEEL\0" "OSMANYA LETTER DHA\0" "OSMANYA LETTER E\0" "OSMANYA LETTER EE\0" "OSMANYA LETTER FA\0" "OSMANYA LETTER GA\0" "OSMANYA LETTER HA\0" "OSMANYA LETTER I\0" "OSMANYA LETTER JA\0" "OSMANYA LETTER KAAF\0" "OSMANYA LETTER KHA\0" "OSMANYA LETTER LAAN\0" "OSMANYA LETTER MIIN\0" "OSMANYA LETTER NUUN\0" "OSMANYA LETTER O\0" "OSMANYA LETTER OO\0" "OSMANYA LETTER QAAF\0" "OSMANYA LETTER RA\0" "OSMANYA LETTER SA\0" "OSMANYA LETTER SHIIN\0" "OSMANYA LETTER TA\0" "OSMANYA LETTER U\0" "OSMANYA LETTER WAW\0" "OSMANYA LETTER XA\0" "OSMANYA LETTER YA\0" "OUNCE SIGN\0" "OUTBOX TRAY\0" "OUTLINED BLACK STAR\0" "OUTLINED GREEK CROSS\0" "OUTLINED LATIN CROSS\0" "OUTLINED WHITE STAR\0" "OVERLINE\0" "OX\0" "PACKAGE\0" "PAGE FACING UP\0" "PAGE WITH CURL\0" "PAGER\0" "PALLAS\0" "PALM BRANCH\0" "PALM TREE\0" "PANDA FACE\0" "PAPERCLIP\0" "PARAGRAPH SEPARATOR\0" "PARAGRAPHOS\0" "PARALLEL TO\0" "PARALLEL WITH HORIZONTAL STROKE\0" "PARALLEL WITH TILDE OPERATOR\0" "PARENTHESIZED DIGIT EIGHT\0" "PARENTHESIZED DIGIT FIVE\0" "PARENTHESIZED DIGIT FOUR\0" "PARENTHESIZED DIGIT NINE\0" "PARENTHESIZED DIGIT ONE\0" "PARENTHESIZED DIGIT SEVEN\0" "PARENTHESIZED DIGIT SIX\0" "PARENTHESIZED DIGIT THREE\0" "PARENTHESIZED DIGIT TWO\0" "PARENTHESIZED HANGUL CHIEUCH\0" "PARENTHESIZED HANGUL CHIEUCH A\0" "PARENTHESIZED HANGUL CIEUC\0" "PARENTHESIZED HANGUL CIEUC A\0" "PARENTHESIZED HANGUL CIEUC U\0" "PARENTHESIZED HANGUL HIEUH\0" "PARENTHESIZED HANGUL HIEUH A\0" "PARENTHESIZED HANGUL IEUNG\0" "PARENTHESIZED HANGUL IEUNG A\0" "PARENTHESIZED HANGUL KHIEUKH\0" "PARENTHESIZED HANGUL KHIEUKH A\0" "PARENTHESIZED HANGUL KIYEOK\0" "PARENTHESIZED HANGUL KIYEOK A\0" "PARENTHESIZED HANGUL MIEUM\0" "PARENTHESIZED HANGUL MIEUM A\0" "PARENTHESIZED HANGUL NIEUN\0" "PARENTHESIZED HANGUL NIEUN A\0" "PARENTHESIZED HANGUL PHIEUPH\0" "PARENTHESIZED HANGUL PHIEUPH A\0" "PARENTHESIZED HANGUL PIEUP\0" "PARENTHESIZED HANGUL PIEUP A\0" "PARENTHESIZED HANGUL RIEUL\0" "PARENTHESIZED HANGUL RIEUL A\0" "PARENTHESIZED HANGUL SIOS\0" "PARENTHESIZED HANGUL SIOS A\0" "PARENTHESIZED HANGUL THIEUTH\0" "PARENTHESIZED HANGUL THIEUTH A\0" "PARENTHESIZED HANGUL TIKEUT\0" "PARENTHESIZED HANGUL TIKEUT A\0" "PARENTHESIZED IDEOGRAPH ALLIANCE\0" "PARENTHESIZED IDEOGRAPH CALL\0" "PARENTHESIZED IDEOGRAPH CONGRATULATION\0" "PARENTHESIZED IDEOGRAPH EARTH\0" "PARENTHESIZED IDEOGRAPH EIGHT\0" "PARENTHESIZED IDEOGRAPH ENTERPRISE\0" "PARENTHESIZED IDEOGRAPH FESTIVAL\0" "PARENTHESIZED IDEOGRAPH FINANCIAL\0" "PARENTHESIZED IDEOGRAPH FIRE\0" "PARENTHESIZED IDEOGRAPH FIVE\0" "PARENTHESIZED IDEOGRAPH FOUR\0" "PARENTHESIZED IDEOGRAPH HAVE\0" "PARENTHESIZED IDEOGRAPH LABOR\0" "PARENTHESIZED IDEOGRAPH METAL\0" "PARENTHESIZED IDEOGRAPH MOON\0" "PARENTHESIZED IDEOGRAPH NAME\0" "PARENTHESIZED IDEOGRAPH NINE\0" "PARENTHESIZED IDEOGRAPH ONE\0" "PARENTHESIZED IDEOGRAPH REACH\0" "PARENTHESIZED IDEOGRAPH REPRESENT\0" "PARENTHESIZED IDEOGRAPH RESOURCE\0" "PARENTHESIZED IDEOGRAPH REST\0" "PARENTHESIZED IDEOGRAPH SELF\0" "PARENTHESIZED IDEOGRAPH SEVEN\0" "PARENTHESIZED IDEOGRAPH SIX\0" "PARENTHESIZED IDEOGRAPH SOCIETY\0" "PARENTHESIZED IDEOGRAPH SPECIAL\0" "PARENTHESIZED IDEOGRAPH STOCK\0" "PARENTHESIZED IDEOGRAPH STUDY\0" "PARENTHESIZED IDEOGRAPH SUN\0" "PARENTHESIZED IDEOGRAPH SUPERVISE\0" "PARENTHESIZED IDEOGRAPH TEN\0" "PARENTHESIZED IDEOGRAPH THREE\0" "PARENTHESIZED IDEOGRAPH TWO\0" "PARENTHESIZED IDEOGRAPH WATER\0" "PARENTHESIZED IDEOGRAPH WOOD\0" "PARENTHESIZED KOREAN CHARACTER O HU\0" "PARENTHESIZED KOREAN CHARACTER OJEON\0" "PARENTHESIZED LATIN CAPITAL LETTER A\0" "PARENTHESIZED LATIN CAPITAL LETTER B\0" "PARENTHESIZED LATIN CAPITAL LETTER C\0" "PARENTHESIZED LATIN CAPITAL LETTER D\0" "PARENTHESIZED LATIN CAPITAL LETTER E\0" "PARENTHESIZED LATIN CAPITAL LETTER F\0" "PARENTHESIZED LATIN CAPITAL LETTER G\0" "PARENTHESIZED LATIN CAPITAL LETTER H\0" "PARENTHESIZED LATIN CAPITAL LETTER I\0" "PARENTHESIZED LATIN CAPITAL LETTER J\0" "PARENTHESIZED LATIN CAPITAL LETTER K\0" "PARENTHESIZED LATIN CAPITAL LETTER L\0" "PARENTHESIZED LATIN CAPITAL LETTER M\0" "PARENTHESIZED LATIN CAPITAL LETTER N\0" "PARENTHESIZED LATIN CAPITAL LETTER O\0" "PARENTHESIZED LATIN CAPITAL LETTER P\0" "PARENTHESIZED LATIN CAPITAL LETTER Q\0" "PARENTHESIZED LATIN CAPITAL LETTER R\0" "PARENTHESIZED LATIN CAPITAL LETTER S\0" "PARENTHESIZED LATIN CAPITAL LETTER T\0" "PARENTHESIZED LATIN CAPITAL LETTER U\0" "PARENTHESIZED LATIN CAPITAL LETTER V\0" "PARENTHESIZED LATIN CAPITAL LETTER W\0" "PARENTHESIZED LATIN CAPITAL LETTER X\0" "PARENTHESIZED LATIN CAPITAL LETTER Y\0" "PARENTHESIZED LATIN CAPITAL LETTER Z\0" "PARENTHESIZED LATIN SMALL LETTER A\0" "PARENTHESIZED LATIN SMALL LETTER B\0" "PARENTHESIZED LATIN SMALL LETTER C\0" "PARENTHESIZED LATIN SMALL LETTER D\0" "PARENTHESIZED LATIN SMALL LETTER E\0" "PARENTHESIZED LATIN SMALL LETTER F\0" "PARENTHESIZED LATIN SMALL LETTER G\0" "PARENTHESIZED LATIN SMALL LETTER H\0" "PARENTHESIZED LATIN SMALL LETTER I\0" "PARENTHESIZED LATIN SMALL LETTER J\0" "PARENTHESIZED LATIN SMALL LETTER K\0" "PARENTHESIZED LATIN SMALL LETTER L\0" "PARENTHESIZED LATIN SMALL LETTER M\0" "PARENTHESIZED LATIN SMALL LETTER N\0" "PARENTHESIZED LATIN SMALL LETTER O\0" "PARENTHESIZED LATIN SMALL LETTER P\0" "PARENTHESIZED LATIN SMALL LETTER Q\0" "PARENTHESIZED LATIN SMALL LETTER R\0" "PARENTHESIZED LATIN SMALL LETTER S\0" "PARENTHESIZED LATIN SMALL LETTER T\0" "PARENTHESIZED LATIN SMALL LETTER U\0" "PARENTHESIZED LATIN SMALL LETTER V\0" "PARENTHESIZED LATIN SMALL LETTER W\0" "PARENTHESIZED LATIN SMALL LETTER X\0" "PARENTHESIZED LATIN SMALL LETTER Y\0" "PARENTHESIZED LATIN SMALL LETTER Z\0" "PARENTHESIZED NUMBER EIGHTEEN\0" "PARENTHESIZED NUMBER ELEVEN\0" "PARENTHESIZED NUMBER FIFTEEN\0" "PARENTHESIZED NUMBER FOURTEEN\0" "PARENTHESIZED NUMBER NINETEEN\0" "PARENTHESIZED NUMBER SEVENTEEN\0" "PARENTHESIZED NUMBER SIXTEEN\0" "PARENTHESIZED NUMBER TEN\0" "PARENTHESIZED NUMBER THIRTEEN\0" "PARENTHESIZED NUMBER TWELVE\0" "PARENTHESIZED NUMBER TWENTY\0" "PART ALTERNATION MARK\0" "PARTIAL DIFFERENTIAL\0" "PARTIALLY-RECYCLED PAPER SYMBOL\0" "PARTNERSHIP SIGN\0" "PARTY POPPER\0" "PASSIVE-PULL-DOWN-OUTPUT SYMBOL\0" "PASSIVE-PULL-UP-OUTPUT SYMBOL\0" "PASSPORT CONTROL\0" "PAW PRINTS\0" "PEACE SYMBOL\0" "PEACH\0" "PEAR\0" "PEDESTRIAN\0" "PENCIL\0" "PENGUIN\0" "PENSIVE FACE\0" "PENTAGRAM\0" "PER MILLE SIGN\0" "PER SIGN\0" "PER TEN THOUSAND SIGN\0" "PERCENT SIGN\0" "PERFORMING ARTS\0" "PERMANENT PAPER SIGN\0" "PERPENDICULAR\0" "PERPENDICULAR WITH S\0" "PERSEVERING FACE\0" "PERSON BOWING DEEPLY\0" "PERSON FROWNING\0" "PERSON RAISING BOTH HANDS IN CELEBRATION\0" "PERSON WITH BALL\0" "PERSON WITH BLOND HAIR\0" "PERSON WITH FOLDED HANDS\0" "PERSON WITH POUTING FACE\0" "PERSONAL COMPUTER\0" "PERSPECTIVE\0" "PESETA SIGN\0" "PESO SIGN\0" "PHAGS-PA DOUBLE HEAD MARK\0" "PHAGS-PA LETTER A\0" "PHAGS-PA LETTER ALTERNATE YA\0" "PHAGS-PA LETTER ASPIRATED FA\0" "PHAGS-PA LETTER BA\0" "PHAGS-PA LETTER CA\0" "PHAGS-PA LETTER CANDRABINDU\0" "PHAGS-PA LETTER CHA\0" "PHAGS-PA LETTER DA\0" "PHAGS-PA LETTER DDA\0" "PHAGS-PA LETTER DZA\0" "PHAGS-PA LETTER E\0" "PHAGS-PA LETTER EE\0" "PHAGS-PA LETTER FA\0" "PHAGS-PA LETTER GA\0" "PHAGS-PA LETTER GGA\0" "PHAGS-PA LETTER HA\0" "PHAGS-PA LETTER I\0" "PHAGS-PA LETTER JA\0" "PHAGS-PA LETTER KA\0" "PHAGS-PA LETTER KHA\0" "PHAGS-PA LETTER LA\0" "PHAGS-PA LETTER MA\0" "PHAGS-PA LETTER NA\0" "PHAGS-PA LETTER NGA\0" "PHAGS-PA LETTER NNA\0" "PHAGS-PA LETTER NYA\0" "PHAGS-PA LETTER O\0" "PHAGS-PA LETTER PA\0" "PHAGS-PA LETTER PHA\0" "PHAGS-PA LETTER QA\0" "PHAGS-PA LETTER RA\0" "PHAGS-PA LETTER SA\0" "PHAGS-PA LETTER SHA\0" "PHAGS-PA LETTER SMALL A\0" "PHAGS-PA LETTER TA\0" "PHAGS-PA LETTER THA\0" "PHAGS-PA LETTER TSA\0" "PHAGS-PA LETTER TSHA\0" "PHAGS-PA LETTER TTA\0" "PHAGS-PA LETTER TTHA\0" "PHAGS-PA LETTER U\0" "PHAGS-PA LETTER VOICED HA\0" "PHAGS-PA LETTER VOICELESS SHA\0" "PHAGS-PA LETTER WA\0" "PHAGS-PA LETTER XA\0" "PHAGS-PA LETTER YA\0" "PHAGS-PA LETTER ZA\0" "PHAGS-PA LETTER ZHA\0" "PHAGS-PA MARK DOUBLE SHAD\0" "PHAGS-PA MARK SHAD\0" "PHAGS-PA SINGLE HEAD MARK\0" "PHAGS-PA SUBJOINED LETTER RA\0" "PHAGS-PA SUBJOINED LETTER WA\0" "PHAGS-PA SUBJOINED LETTER YA\0" "PHAGS-PA SUPERFIXED LETTER RA\0" "PHAISTOS DISC SIGN ARROW\0" "PHAISTOS DISC SIGN BEE\0" "PHAISTOS DISC SIGN BEEHIVE\0" "PHAISTOS DISC SIGN BOOMERANG\0" "PHAISTOS DISC SIGN BOW\0" "PHAISTOS DISC SIGN BULLS LEG\0" "PHAISTOS DISC SIGN CAPTIVE\0" "PHAISTOS DISC SIGN CARPENTRY PLANE\0" "PHAISTOS DISC SIGN CAT\0" "PHAISTOS DISC SIGN CHILD\0" "PHAISTOS DISC SIGN CLUB\0" "PHAISTOS DISC SIGN COLUMN\0" "PHAISTOS DISC SIGN COMB\0" "PHAISTOS DISC SIGN COMBINING OBLIQUE STROKE\0" "PHAISTOS DISC SIGN DOLIUM\0" "PHAISTOS DISC SIGN DOVE\0" "PHAISTOS DISC SIGN EAGLE\0" "PHAISTOS DISC SIGN FLUTE\0" "PHAISTOS DISC SIGN GAUNTLET\0" "PHAISTOS DISC SIGN GRATER\0" "PHAISTOS DISC SIGN HELMET\0" "PHAISTOS DISC SIGN HIDE\0" "PHAISTOS DISC SIGN HORN\0" "PHAISTOS DISC SIGN LID\0" "PHAISTOS DISC SIGN LILY\0" "PHAISTOS DISC SIGN MANACLES\0" "PHAISTOS DISC SIGN MATTOCK\0" "PHAISTOS DISC SIGN OX BACK\0" "PHAISTOS DISC SIGN PAPYRUS\0" "PHAISTOS DISC SIGN PEDESTRIAN\0" "PHAISTOS DISC SIGN PLANE TREE\0" "PHAISTOS DISC SIGN PLUMED HEAD\0" "PHAISTOS DISC SIGN RAM\0" "PHAISTOS DISC SIGN ROSETTE\0" "PHAISTOS DISC SIGN SAW\0" "PHAISTOS DISC SIGN SHIELD\0" "PHAISTOS DISC SIGN SHIP\0" "PHAISTOS DISC SIGN SLING\0" "PHAISTOS DISC SIGN SMALL AXE\0" "PHAISTOS DISC SIGN STRAINER\0" "PHAISTOS DISC SIGN TATTOOED HEAD\0" "PHAISTOS DISC SIGN TIARA\0" "PHAISTOS DISC SIGN TUNNY\0" "PHAISTOS DISC SIGN VINE\0" "PHAISTOS DISC SIGN WAVY BAND\0" "PHAISTOS DISC SIGN WOMAN\0" "PHILIPPINE DOUBLE PUNCTUATION\0" "PHILIPPINE SINGLE PUNCTUATION\0" "PHOENICIAN LETTER AIN\0" "PHOENICIAN LETTER ALF\0" "PHOENICIAN LETTER BET\0" "PHOENICIAN LETTER DELT\0" "PHOENICIAN LETTER GAML\0" "PHOENICIAN LETTER HE\0" "PHOENICIAN LETTER HET\0" "PHOENICIAN LETTER KAF\0" "PHOENICIAN LETTER LAMD\0" "PHOENICIAN LETTER MEM\0" "PHOENICIAN LETTER NUN\0" "PHOENICIAN LETTER PE\0" "PHOENICIAN LETTER QOF\0" "PHOENICIAN LETTER ROSH\0" "PHOENICIAN LETTER SADE\0" "PHOENICIAN LETTER SEMK\0" "PHOENICIAN LETTER SHIN\0" "PHOENICIAN LETTER TAU\0" "PHOENICIAN LETTER TET\0" "PHOENICIAN LETTER WAU\0" "PHOENICIAN LETTER YOD\0" "PHOENICIAN LETTER ZAI\0" "PHOENICIAN NUMBER ONE\0" "PHOENICIAN NUMBER ONE HUNDRED\0" "PHOENICIAN NUMBER TEN\0" "PHOENICIAN NUMBER THREE\0" "PHOENICIAN NUMBER TWENTY\0" "PHOENICIAN NUMBER TWO\0" "PHOENICIAN WORD SEPARATOR\0" "PICK\0" "PIG\0" "PIG FACE\0" "PIG NOSE\0" "PILCROW SIGN\0" "PILE OF POO\0" "PILL\0" "PINE DECORATION\0" "PINEAPPLE\0" "PINWHEEL STAR\0" "PISCES\0" "PISTOL\0" "PITCHFORK\0" "PITCHFORK WITH TEE TOP\0" "PLACE OF INTEREST SIGN\0" "PLANCK CONSTANT\0" "PLANCK CONSTANT OVER TWO PI\0" "PLAYING CARD ACE OF CLUBS\0" "PLAYING CARD ACE OF DIAMONDS\0" "PLAYING CARD ACE OF HEARTS\0" "PLAYING CARD ACE OF SPADES\0" "PLAYING CARD BACK\0" "PLAYING CARD BLACK JOKER\0" "PLAYING CARD EIGHT OF CLUBS\0" "PLAYING CARD EIGHT OF DIAMONDS\0" "PLAYING CARD EIGHT OF HEARTS\0" "PLAYING CARD EIGHT OF SPADES\0" "PLAYING CARD FIVE OF CLUBS\0" "PLAYING CARD FIVE OF DIAMONDS\0" "PLAYING CARD FIVE OF HEARTS\0" "PLAYING CARD FIVE OF SPADES\0" "PLAYING CARD FOUR OF CLUBS\0" "PLAYING CARD FOUR OF DIAMONDS\0" "PLAYING CARD FOUR OF HEARTS\0" "PLAYING CARD FOUR OF SPADES\0" "PLAYING CARD JACK OF CLUBS\0" "PLAYING CARD JACK OF DIAMONDS\0" "PLAYING CARD JACK OF HEARTS\0" "PLAYING CARD JACK OF SPADES\0" "PLAYING CARD KING OF CLUBS\0" "PLAYING CARD KING OF DIAMONDS\0" "PLAYING CARD KING OF HEARTS\0" "PLAYING CARD KING OF SPADES\0" "PLAYING CARD KNIGHT OF CLUBS\0" "PLAYING CARD KNIGHT OF DIAMONDS\0" "PLAYING CARD KNIGHT OF HEARTS\0" "PLAYING CARD KNIGHT OF SPADES\0" "PLAYING CARD NINE OF CLUBS\0" "PLAYING CARD NINE OF DIAMONDS\0" "PLAYING CARD NINE OF HEARTS\0" "PLAYING CARD NINE OF SPADES\0" "PLAYING CARD QUEEN OF CLUBS\0" "PLAYING CARD QUEEN OF DIAMONDS\0" "PLAYING CARD QUEEN OF HEARTS\0" "PLAYING CARD QUEEN OF SPADES\0" "PLAYING CARD SEVEN OF CLUBS\0" "PLAYING CARD SEVEN OF DIAMONDS\0" "PLAYING CARD SEVEN OF HEARTS\0" "PLAYING CARD SEVEN OF SPADES\0" "PLAYING CARD SIX OF CLUBS\0" "PLAYING CARD SIX OF DIAMONDS\0" "PLAYING CARD SIX OF HEARTS\0" "PLAYING CARD SIX OF SPADES\0" "PLAYING CARD TEN OF CLUBS\0" "PLAYING CARD TEN OF DIAMONDS\0" "PLAYING CARD TEN OF HEARTS\0" "PLAYING CARD TEN OF SPADES\0" "PLAYING CARD THREE OF CLUBS\0" "PLAYING CARD THREE OF DIAMONDS\0" "PLAYING CARD THREE OF HEARTS\0" "PLAYING CARD THREE OF SPADES\0" "PLAYING CARD TWO OF CLUBS\0" "PLAYING CARD TWO OF DIAMONDS\0" "PLAYING CARD TWO OF HEARTS\0" "PLAYING CARD TWO OF SPADES\0" "PLAYING CARD WHITE JOKER\0" "PLUS SIGN\0" "PLUS SIGN ABOVE EQUALS SIGN\0" "PLUS SIGN IN LEFT HALF CIRCLE\0" "PLUS SIGN IN RIGHT HALF CIRCLE\0" "PLUS SIGN IN TRIANGLE\0" "PLUS SIGN WITH BLACK TRIANGLE\0" "PLUS SIGN WITH CIRCUMFLEX ACCENT ABOVE\0" "PLUS SIGN WITH DOT BELOW\0" "PLUS SIGN WITH SMALL CIRCLE ABOVE\0" "PLUS SIGN WITH SUBSCRIPT TWO\0" "PLUS SIGN WITH TILDE ABOVE\0" "PLUS SIGN WITH TILDE BELOW\0" "PLUS-MINUS SIGN\0" "PLUTO\0" "POLICE CAR\0" "POLICE CARS REVOLVING LIGHT\0" "POLICE OFFICER\0" "POODLE\0" "POP DIRECTIONAL FORMATTING\0" "POSITION INDICATOR\0" "POSTAL HORN\0" "POSTAL MARK\0" "POSTAL MARK FACE\0" "POSTBOX\0" "POT OF FOOD\0" "POTABLE WATER SYMBOL\0" "POUCH\0" "POULTRY LEG\0" "POUND SIGN\0" "POUTING CAT FACE\0" "POUTING FACE\0" "PRECEDES\0" "PRECEDES ABOVE ALMOST EQUAL TO\0" "PRECEDES ABOVE EQUALS SIGN\0" "PRECEDES ABOVE NOT ALMOST EQUAL TO\0" "PRECEDES ABOVE NOT EQUAL TO\0" "PRECEDES ABOVE SINGLE-LINE EQUALS SIGN\0" "PRECEDES ABOVE SINGLE-LINE NOT EQUAL TO\0" "PRECEDES BUT NOT EQUIVALENT TO\0" "PRECEDES OR EQUAL TO\0" "PRECEDES OR EQUIVALENT TO\0" "PRECEDES UNDER RELATION\0" "PRESCRIPTION TAKE\0" "PRESENTATION FORM FOR VERTICAL COLON\0" "PRESENTATION FORM FOR VERTICAL COMMA\0" "PRESENTATION FORM FOR VERTICAL EM DASH\0" "PRESENTATION FORM FOR VERTICAL EN DASH\0" "PRESENTATION FORM FOR VERTICAL EXCLAMATION MARK\0" "PRESENTATION FORM FOR VERTICAL HORIZONTAL ELLIPSIS\0" "PRESENTATION FORM FOR VERTICAL IDEOGRAPHIC COMMA\0" "PRESENTATION FORM FOR VERTICAL IDEOGRAPHIC FULL STOP\0" "PRESENTATION FORM FOR VERTICAL LEFT ANGLE BRACKET\0" "PRESENTATION FORM FOR VERTICAL LEFT BLACK LENTICULAR BRACKET\0" "PRESENTATION FORM FOR VERTICAL LEFT CORNER BRACKET\0" "PRESENTATION FORM FOR VERTICAL LEFT CURLY BRACKET\0" "PRESENTATION FORM FOR VERTICAL LEFT DOUBLE ANGLE BRACKET\0" "PRESENTATION FORM FOR VERTICAL LEFT PARENTHESIS\0" "PRESENTATION FORM FOR VERTICAL LEFT SQUARE BRACKET\0" "PRESENTATION FORM FOR VERTICAL LEFT TORTOISE SHELL BRACKET\0" "PRESENTATION FORM FOR VERTICAL LEFT WHITE CORNER BRACKET\0" "PRESENTATION FORM FOR VERTICAL LEFT WHITE LENTICULAR BRACKET\0" "PRESENTATION FORM FOR VERTICAL LOW LINE\0" "PRESENTATION FORM FOR VERTICAL QUESTION MARK\0" "PRESENTATION FORM FOR VERTICAL RIGHT ANGLE BRACKET\0" "PRESENTATION FORM FOR VERTICAL RIGHT BLACK LENTICULAR BRACKET\0" "PRESENTATION FORM FOR VERTICAL RIGHT CORNER BRACKET\0" "PRESENTATION FORM FOR VERTICAL RIGHT CURLY BRACKET\0" "PRESENTATION FORM FOR VERTICAL RIGHT DOUBLE ANGLE BRACKET\0" "PRESENTATION FORM FOR VERTICAL RIGHT PARENTHESIS\0" "PRESENTATION FORM FOR VERTICAL RIGHT SQUARE BRACKET\0" "PRESENTATION FORM FOR VERTICAL RIGHT TORTOISE SHELL BRACKET\0" "PRESENTATION FORM FOR VERTICAL RIGHT WHITE CORNER BRACKET\0" "PRESENTATION FORM FOR VERTICAL RIGHT WHITE LENTICULAR BRAKCET\0" "PRESENTATION FORM FOR VERTICAL SEMICOLON\0" "PRESENTATION FORM FOR VERTICAL TWO DOT LEADER\0" "PRESENTATION FORM FOR VERTICAL WAVY LOW LINE\0" "PREVIOUS PAGE\0" "PRIME\0" "PRINCESS\0" "PRINT SCREEN SYMBOL\0" "PROJECTIVE\0" "PROPERTY LINE\0" "PROPORTION\0" "PROPORTIONAL TO\0" "PUBLIC ADDRESS LOUDSPEAKER\0" "PUNCTUATION SPACE\0" "PURPLE HEART\0" "PURSE\0" "PUSHPIN\0" "PUT LITTER IN ITS PLACE SYMBOL\0" "QUADRANT LOWER LEFT\0" "QUADRANT LOWER RIGHT\0" "QUADRANT UPPER LEFT\0" "QUADRANT UPPER LEFT AND LOWER LEFT AND LOWER RIGHT\0" "QUADRANT UPPER LEFT AND LOWER RIGHT\0" "QUADRANT UPPER LEFT AND UPPER RIGHT AND LOWER LEFT\0" "QUADRANT UPPER LEFT AND UPPER RIGHT AND LOWER RIGHT\0" "QUADRANT UPPER RIGHT\0" "QUADRANT UPPER RIGHT AND LOWER LEFT\0" "QUADRANT UPPER RIGHT AND LOWER LEFT AND LOWER RIGHT\0" "QUADRUPLE INTEGRAL OPERATOR\0" "QUADRUPLE PRIME\0" "QUARTER NOTE\0" "QUATERNION INTEGRAL OPERATOR\0" "QUESTION EXCLAMATION MARK\0" "QUESTION MARK\0" "QUESTIONED EQUAL TO\0" "QUINCUNX\0" "QUOTATION MARK\0" "RABBIT\0" "RABBIT FACE\0" "RADICAL SYMBOL BOTTOM\0" "RADIO\0" "RADIO BUTTON\0" "RADIOACTIVE SIGN\0" "RAILWAY CAR\0" "RAIN\0" "RAINBOW\0" "RAISED DOTTED INTERPOLATION MARKER\0" "RAISED FIST\0" "RAISED HAND\0" "RAISED INTERPOLATION MARKER\0" "RAISED SQUARE\0" "RAM\0" "RAT\0" "RATIO\0" "RECREATIONAL VEHICLE\0" "RECYCLED PAPER SYMBOL\0" "RECYCLING SYMBOL FOR GENERIC MATERIALS\0" "RECYCLING SYMBOL FOR TYPE-1 PLASTICS\0" "RECYCLING SYMBOL FOR TYPE-2 PLASTICS\0" "RECYCLING SYMBOL FOR TYPE-3 PLASTICS\0" "RECYCLING SYMBOL FOR TYPE-4 PLASTICS\0" "RECYCLING SYMBOL FOR TYPE-5 PLASTICS\0" "RECYCLING SYMBOL FOR TYPE-6 PLASTICS\0" "RECYCLING SYMBOL FOR TYPE-7 PLASTICS\0" "RED APPLE\0" "REFERENCE MARK\0" "REGIONAL INDICATOR SYMBOL LETTER A\0" "REGIONAL INDICATOR SYMBOL LETTER B\0" "REGIONAL INDICATOR SYMBOL LETTER C\0" "REGIONAL INDICATOR SYMBOL LETTER D\0" "REGIONAL INDICATOR SYMBOL LETTER E\0" "REGIONAL INDICATOR SYMBOL LETTER F\0" "REGIONAL INDICATOR SYMBOL LETTER G\0" "REGIONAL INDICATOR SYMBOL LETTER H\0" "REGIONAL INDICATOR SYMBOL LETTER I\0" "REGIONAL INDICATOR SYMBOL LETTER J\0" "REGIONAL INDICATOR SYMBOL LETTER K\0" "REGIONAL INDICATOR SYMBOL LETTER L\0" "REGIONAL INDICATOR SYMBOL LETTER M\0" "REGIONAL INDICATOR SYMBOL LETTER N\0" "REGIONAL INDICATOR SYMBOL LETTER O\0" "REGIONAL INDICATOR SYMBOL LETTER P\0" "REGIONAL INDICATOR SYMBOL LETTER Q\0" "REGIONAL INDICATOR SYMBOL LETTER R\0" "REGIONAL INDICATOR SYMBOL LETTER S\0" "REGIONAL INDICATOR SYMBOL LETTER T\0" "REGIONAL INDICATOR SYMBOL LETTER U\0" "REGIONAL INDICATOR SYMBOL LETTER V\0" "REGIONAL INDICATOR SYMBOL LETTER W\0" "REGIONAL INDICATOR SYMBOL LETTER X\0" "REGIONAL INDICATOR SYMBOL LETTER Y\0" "REGIONAL INDICATOR SYMBOL LETTER Z\0" "REGISTERED SIGN\0" "REJANG CONSONANT SIGN H\0" "REJANG CONSONANT SIGN N\0" "REJANG CONSONANT SIGN NG\0" "REJANG CONSONANT SIGN R\0" "REJANG LETTER A\0" "REJANG LETTER BA\0" "REJANG LETTER CA\0" "REJANG LETTER DA\0" "REJANG LETTER GA\0" "REJANG LETTER HA\0" "REJANG LETTER JA\0" "REJANG LETTER KA\0" "REJANG LETTER LA\0" "REJANG LETTER MA\0" "REJANG LETTER MBA\0" "REJANG LETTER NA\0" "REJANG LETTER NDA\0" "REJANG LETTER NGA\0" "REJANG LETTER NGGA\0" "REJANG LETTER NYA\0" "REJANG LETTER NYJA\0" "REJANG LETTER PA\0" "REJANG LETTER RA\0" "REJANG LETTER SA\0" "REJANG LETTER TA\0" "REJANG LETTER WA\0" "REJANG LETTER YA\0" "REJANG SECTION MARK\0" "REJANG VIRAMA\0" "REJANG VOWEL SIGN AI\0" "REJANG VOWEL SIGN AU\0" "REJANG VOWEL SIGN E\0" "REJANG VOWEL SIGN EA\0" "REJANG VOWEL SIGN EU\0" "REJANG VOWEL SIGN I\0" "REJANG VOWEL SIGN O\0" "REJANG VOWEL SIGN U\0" "RELIEVED FACE\0" "REPLACEMENT CHARACTER\0" "RESPONSE\0" "RESTRICTED LEFT ENTRY-1\0" "RESTRICTED LEFT ENTRY-2\0" "RESTROOM\0" "RETURN SYMBOL\0" "REVERSE SOLIDUS\0" "REVERSE SOLIDUS OPERATOR\0" "REVERSE SOLIDUS PRECEDING SUBSET\0" "REVERSE SOLIDUS WITH HORIZONTAL STROKE\0" "REVERSE TILDE OPERATOR ABOVE LEFTWARDS ARROW\0" "REVERSE TILDE OPERATOR ABOVE RIGHTWARDS ARROW\0" "REVERSED ANGLE\0" "REVERSED ANGLE WITH UNDERBAR\0" "REVERSED DOUBLE PRIME\0" "REVERSED DOUBLE PRIME QUOTATION MARK\0" "REVERSED DOUBLE STROKE NOT SIGN\0" "REVERSED EMPTY SET\0" "REVERSED FORKED PARAGRAPHOS\0" "REVERSED NOT SIGN\0" "REVERSED PILCROW SIGN\0" "REVERSED PRIME\0" "REVERSED QUESTION MARK\0" "REVERSED ROTATED FLORAL HEART BULLET\0" "REVERSED SANS-SERIF CAPITAL L\0" "REVERSED SEMICOLON\0" "REVERSED TILDE\0" "REVERSED TILDE EQUALS\0" "REVERSED TRIPLE PRIME\0" "REVOLVING HEARTS\0" "RIAL SIGN\0" "RIBBON\0" "RICE BALL\0" "RICE CRACKER\0" "RIGHT ANGLE\0" "RIGHT ANGLE BRACKET\0" "RIGHT ANGLE BRACKET WITH DOT\0" "RIGHT ANGLE DOTTED SUBSTITUTION MARKER\0" "RIGHT ANGLE SUBSTITUTION MARKER\0" "RIGHT ANGLE VARIANT WITH SQUARE\0" "RIGHT ANGLE WITH ARC\0" "RIGHT ANGLE WITH DOWNWARDS ZIGZAG ARROW\0" "RIGHT ARC GREATER-THAN BRACKET\0" "RIGHT ARROW WITH CIRCLED PLUS\0" "RIGHT ARROW WITH SMALL CIRCLE\0" "RIGHT BLACK LENTICULAR BRACKET\0" "RIGHT BLACK TORTOISE SHELL BRACKET\0" "RIGHT CEILING\0" "RIGHT CORNER BRACKET\0" "RIGHT CURLY BRACKET\0" "RIGHT CURLY BRACKET LOWER HOOK\0" "RIGHT CURLY BRACKET MIDDLE PIECE\0" "RIGHT CURLY BRACKET UPPER HOOK\0" "RIGHT DOTTED SUBSTITUTION BRACKET\0" "RIGHT DOUBLE ANGLE BRACKET\0" "RIGHT DOUBLE ARROW WITH ROUNDED HEAD\0" "RIGHT DOUBLE PARENTHESIS\0" "RIGHT DOUBLE QUOTATION MARK\0" "RIGHT DOUBLE WIGGLY FENCE\0" "RIGHT FISH TAIL\0" "RIGHT FLOOR\0" "RIGHT HALF BLACK CIRCLE\0" "RIGHT HALF BLOCK\0" "RIGHT LOW PARAPHRASE BRACKET\0" "RIGHT NORMAL FACTOR SEMIDIRECT PRODUCT\0" "RIGHT ONE EIGHTH BLOCK\0" "RIGHT OUTER JOIN\0" "RIGHT PARENTHESIS\0" "RIGHT PARENTHESIS EXTENSION\0" "RIGHT PARENTHESIS LOWER HOOK\0" "RIGHT PARENTHESIS UPPER HOOK\0" "RIGHT RAISED OMISSION BRACKET\0" "RIGHT S-SHAPED BAG DELIMITER\0" "RIGHT SEMIDIRECT PRODUCT\0" "RIGHT SIDEWAYS U BRACKET\0" "RIGHT SINGLE QUOTATION MARK\0" "RIGHT SQUARE BRACKET\0" "RIGHT SQUARE BRACKET EXTENSION\0" "RIGHT SQUARE BRACKET LOWER CORNER\0" "RIGHT SQUARE BRACKET UPPER CORNER\0" "RIGHT SQUARE BRACKET WITH QUILL\0" "RIGHT SQUARE BRACKET WITH TICK IN BOTTOM CORNER\0" "RIGHT SQUARE BRACKET WITH TICK IN TOP CORNER\0" "RIGHT SQUARE BRACKET WITH UNDERBAR\0" "RIGHT SUBSTITUTION BRACKET\0" "RIGHT TACK\0" "RIGHT TORTOISE SHELL BRACKET\0" "RIGHT TRANSPOSITION BRACKET\0" "RIGHT TRIANGLE\0" "RIGHT TRIANGLE ABOVE LEFT TRIANGLE\0" "RIGHT VERTICAL BAR WITH QUILL\0" "RIGHT VERTICAL BOX LINE\0" "RIGHT WHITE CORNER BRACKET\0" "RIGHT WHITE CURLY BRACKET\0" "RIGHT WHITE LENTICULAR BRACKET\0" "RIGHT WHITE PARENTHESIS\0" "RIGHT WHITE SQUARE BRACKET\0" "RIGHT WHITE TORTOISE SHELL BRACKET\0" "RIGHT WIGGLY FENCE\0" "RIGHT-FACING SVASTI SIGN\0" "RIGHT-FACING SVASTI SIGN WITH DOTS\0" "RIGHT-HANDED INTERLACED PENTAGRAM\0" "RIGHT-POINTING ANGLE BRACKET\0" "RIGHT-POINTING CURVED ANGLE BRACKET\0" "RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK\0" "RIGHT-POINTING MAGNIFYING GLASS\0" "RIGHT-SHADED WHITE RIGHTWARDS ARROW\0" "RIGHT-SIDE ARC CLOCKWISE ARROW\0" "RIGHT-TO-LEFT EMBEDDING\0" "RIGHT-TO-LEFT MARK\0" "RIGHT-TO-LEFT OVERRIDE\0" "RIGHTHAND INTERIOR PRODUCT\0" "RIGHTWARDS ARROW\0" "RIGHTWARDS ARROW ABOVE ALMOST EQUAL TO\0" "RIGHTWARDS ARROW ABOVE REVERSE ALMOST EQUAL TO\0" "RIGHTWARDS ARROW ABOVE REVERSE TILDE OPERATOR\0" "RIGHTWARDS ARROW ABOVE SHORT LEFTWARDS ARROW\0" "RIGHTWARDS ARROW ABOVE TILDE OPERATOR\0" "RIGHTWARDS ARROW FROM BAR\0" "RIGHTWARDS ARROW FROM BAR TO BLACK DIAMOND\0" "RIGHTWARDS ARROW OVER LEFTWARDS ARROW\0" "RIGHTWARDS ARROW THROUGH GREATER-THAN\0" "RIGHTWARDS ARROW THROUGH SUPERSET\0" "RIGHTWARDS ARROW THROUGH X\0" "RIGHTWARDS ARROW TO BAR\0" "RIGHTWARDS ARROW TO BLACK DIAMOND\0" "RIGHTWARDS ARROW WITH CORNER DOWNWARDS\0" "RIGHTWARDS ARROW WITH DOTTED STEM\0" "RIGHTWARDS ARROW WITH DOUBLE VERTICAL STROKE\0" "RIGHTWARDS ARROW WITH HOOK\0" "RIGHTWARDS ARROW WITH LOOP\0" "RIGHTWARDS ARROW WITH PLUS BELOW\0" "RIGHTWARDS ARROW WITH STROKE\0" "RIGHTWARDS ARROW WITH TAIL\0" "RIGHTWARDS ARROW WITH TAIL WITH DOUBLE VERTICAL STROKE\0" "RIGHTWARDS ARROW WITH TAIL WITH VERTICAL STROKE\0" "RIGHTWARDS ARROW WITH TIP DOWNWARDS\0" "RIGHTWARDS ARROW WITH TIP UPWARDS\0" "RIGHTWARDS ARROW WITH VERTICAL STROKE\0" "RIGHTWARDS ARROW-TAIL\0" "RIGHTWARDS DASHED ARROW\0" "RIGHTWARDS DOUBLE ARROW\0" "RIGHTWARDS DOUBLE ARROW FROM BAR\0" "RIGHTWARDS DOUBLE ARROW WITH STROKE\0" "RIGHTWARDS DOUBLE ARROW WITH VERTICAL STROKE\0" "RIGHTWARDS DOUBLE ARROW-TAIL\0" "RIGHTWARDS DOUBLE DASH ARROW\0" "RIGHTWARDS HARPOON OVER LEFTWARDS HARPOON\0" "RIGHTWARDS HARPOON WITH BARB DOWN ABOVE LEFTWARDS HARPOON WITH BARB DOWN\0" "RIGHTWARDS HARPOON WITH BARB DOWN BELOW LONG DASH\0" "RIGHTWARDS HARPOON WITH BARB DOWN FROM BAR\0" "RIGHTWARDS HARPOON WITH BARB DOWN TO BAR\0" "RIGHTWARDS HARPOON WITH BARB DOWNWARDS\0" "RIGHTWARDS HARPOON WITH BARB UP ABOVE LEFTWARDS HARPOON WITH BARB UP\0" "RIGHTWARDS HARPOON WITH BARB UP ABOVE LONG DASH\0" "RIGHTWARDS HARPOON WITH BARB UP ABOVE RIGHTWARDS HARPOON WITH BARB DOWN\0" "RIGHTWARDS HARPOON WITH BARB UP FROM BAR\0" "RIGHTWARDS HARPOON WITH BARB UP TO BAR\0" "RIGHTWARDS HARPOON WITH BARB UPWARDS\0" "RIGHTWARDS OPEN-HEADED ARROW\0" "RIGHTWARDS PAIRED ARROWS\0" "RIGHTWARDS QUADRUPLE ARROW\0" "RIGHTWARDS SQUIGGLE ARROW\0" "RIGHTWARDS TRIPLE ARROW\0" "RIGHTWARDS TRIPLE DASH ARROW\0" "RIGHTWARDS TWO HEADED ARROW\0" "RIGHTWARDS TWO-HEADED ARROW FROM BAR\0" "RIGHTWARDS TWO-HEADED ARROW WITH DOUBLE VERTICAL STROKE\0" "RIGHTWARDS TWO-HEADED ARROW WITH TAIL\0" "RIGHTWARDS TWO-HEADED ARROW WITH TAIL WITH DOUBLE VERTICAL STROKE\0" "RIGHTWARDS TWO-HEADED ARROW WITH TAIL WITH VERTICAL STROKE\0" "RIGHTWARDS TWO-HEADED ARROW WITH VERTICAL STROKE\0" "RIGHTWARDS TWO-HEADED TRIPLE DASH ARROW\0" "RIGHTWARDS WAVE ARROW\0" "RIGHTWARDS WHITE ARROW\0" "RIGHTWARDS WHITE ARROW FROM WALL\0" "RING\0" "RING ABOVE\0" "RING EQUAL TO\0" "RING IN EQUAL TO\0" "RING OPERATOR\0" "RING POINT\0" "RISING DIAGONAL CROSSING FALLING DIAGONAL\0" "RISING DIAGONAL CROSSING SOUTH EAST ARROW\0" "ROASTED SWEET POTATO\0" "ROCKET\0" "ROLLER COASTER\0" "ROMAN AS SIGN\0" "ROMAN CENTURIAL SIGN\0" "ROMAN DENARIUS SIGN\0" "ROMAN DIMIDIA SEXTULA SIGN\0" "ROMAN DUPONDIUS SIGN\0" "ROMAN NUMERAL EIGHT\0" "ROMAN NUMERAL ELEVEN\0" "ROMAN NUMERAL FIFTY\0" "ROMAN NUMERAL FIFTY EARLY FORM\0" "ROMAN NUMERAL FIFTY THOUSAND\0" "ROMAN NUMERAL FIVE\0" "ROMAN NUMERAL FIVE HUNDRED\0" "ROMAN NUMERAL FIVE THOUSAND\0" "ROMAN NUMERAL FOUR\0" "ROMAN NUMERAL NINE\0" "ROMAN NUMERAL ONE\0" "ROMAN NUMERAL ONE HUNDRED\0" "ROMAN NUMERAL ONE HUNDRED THOUSAND\0" "ROMAN NUMERAL ONE THOUSAND\0" "ROMAN NUMERAL ONE THOUSAND C D\0" "ROMAN NUMERAL REVERSED ONE HUNDRED\0" "ROMAN NUMERAL SEVEN\0" "ROMAN NUMERAL SIX\0" "ROMAN NUMERAL SIX LATE FORM\0" "ROMAN NUMERAL TEN\0" "ROMAN NUMERAL TEN THOUSAND\0" "ROMAN NUMERAL THREE\0" "ROMAN NUMERAL TWELVE\0" "ROMAN NUMERAL TWO\0" "ROMAN QUINARIUS SIGN\0" "ROMAN SEMUNCIA SIGN\0" "ROMAN SESTERTIUS SIGN\0" "ROMAN SEXTANS SIGN\0" "ROMAN SEXTULA SIGN\0" "ROMAN SILIQUA SIGN\0" "ROMAN UNCIA SIGN\0" "ROOSTER\0" "ROSE\0" "ROTATED CAPITAL Q\0" "ROTATED FLORAL HEART BULLET\0" "ROTATED HEAVY BLACK HEART BULLET\0" "ROUND PUSHPIN\0" "ROWBOAT\0" "RUGBY FOOTBALL\0" "RULE-DELAYED\0" "RUMI DIGIT EIGHT\0" "RUMI DIGIT FIVE\0" "RUMI DIGIT FOUR\0" "RUMI DIGIT NINE\0" "RUMI DIGIT ONE\0" "RUMI DIGIT SEVEN\0" "RUMI DIGIT SIX\0" "RUMI DIGIT THREE\0" "RUMI DIGIT TWO\0" "RUMI FRACTION ONE HALF\0" "RUMI FRACTION ONE QUARTER\0" "RUMI FRACTION ONE THIRD\0" "RUMI FRACTION TWO THIRDS\0" "RUMI NUMBER EIGHT HUNDRED\0" "RUMI NUMBER EIGHTY\0" "RUMI NUMBER FIFTY\0" "RUMI NUMBER FIVE HUNDRED\0" "RUMI NUMBER FORTY\0" "RUMI NUMBER FOUR HUNDRED\0" "RUMI NUMBER NINE HUNDRED\0" "RUMI NUMBER NINETY\0" "RUMI NUMBER ONE HUNDRED\0" "RUMI NUMBER SEVEN HUNDRED\0" "RUMI NUMBER SEVENTY\0" "RUMI NUMBER SIX HUNDRED\0" "RUMI NUMBER SIXTY\0" "RUMI NUMBER TEN\0" "RUMI NUMBER THIRTY\0" "RUMI NUMBER THREE HUNDRED\0" "RUMI NUMBER TWENTY\0" "RUMI NUMBER TWO HUNDRED\0" "RUNIC ARLAUG SYMBOL\0" "RUNIC BELGTHOR SYMBOL\0" "RUNIC CROSS PUNCTUATION\0" "RUNIC LETTER AC A\0" "RUNIC LETTER AESC\0" "RUNIC LETTER ALGIZ EOLHX\0" "RUNIC LETTER ANSUZ A\0" "RUNIC LETTER BERKANAN BEORC BJARKAN B\0" "RUNIC LETTER C\0" "RUNIC LETTER CALC\0" "RUNIC LETTER CEALC\0" "RUNIC LETTER CEN\0" "RUNIC LETTER CWEORTH\0" "RUNIC LETTER D\0" "RUNIC LETTER DAGAZ DAEG D\0" "RUNIC LETTER DOTTED-L\0" "RUNIC LETTER DOTTED-N\0" "RUNIC LETTER DOTTED-P\0" "RUNIC LETTER E\0" "RUNIC LETTER EAR\0" "RUNIC LETTER EHWAZ EH E\0" "RUNIC LETTER ENG\0" "RUNIC LETTER ETH\0" "RUNIC LETTER FEHU FEOH FE F\0" "RUNIC LETTER G\0" "RUNIC LETTER GAR\0" "RUNIC LETTER GEBO GYFU G\0" "RUNIC LETTER GER\0" "RUNIC LETTER HAEGL H\0" "RUNIC LETTER HAGLAZ H\0" "RUNIC LETTER ICELANDIC-YR\0" "RUNIC LETTER ING\0" "RUNIC LETTER INGWAZ\0" "RUNIC LETTER IOR\0" "RUNIC LETTER ISAZ IS ISS I\0" "RUNIC LETTER IWAZ EOH\0" "RUNIC LETTER JERAN J\0" "RUNIC LETTER KAUN K\0" "RUNIC LETTER KAUNA\0" "RUNIC LETTER LAUKAZ LAGU LOGR L\0" "RUNIC LETTER LONG-BRANCH-AR AE\0" "RUNIC LETTER LONG-BRANCH-HAGALL H\0" "RUNIC LETTER LONG-BRANCH-MADR M\0" "RUNIC LETTER LONG-BRANCH-OSS O\0" "RUNIC LETTER LONG-BRANCH-YR\0" "RUNIC LETTER MANNAZ MAN M\0" "RUNIC LETTER NAUDIZ NYD NAUD N\0" "RUNIC LETTER O\0" "RUNIC LETTER OE\0" "RUNIC LETTER ON\0" "RUNIC LETTER OPEN-P\0" "RUNIC LETTER OS O\0" "RUNIC LETTER OTHALAN ETHEL O\0" "RUNIC LETTER PERTHO PEORTH P\0" "RUNIC LETTER Q\0" "RUNIC LETTER RAIDO RAD REID R\0" "RUNIC LETTER SHORT-TWIG-AR A\0" "RUNIC LETTER SHORT-TWIG-BJARKAN B\0" "RUNIC LETTER SHORT-TWIG-HAGALL H\0" "RUNIC LETTER SHORT-TWIG-MADR M\0" "RUNIC LETTER SHORT-TWIG-NAUD N\0" "RUNIC LETTER SHORT-TWIG-OSS O\0" "RUNIC LETTER SHORT-TWIG-SOL S\0" "RUNIC LETTER SHORT-TWIG-TYR T\0" "RUNIC LETTER SHORT-TWIG-YR\0" "RUNIC LETTER SIGEL LONG-BRANCH-SOL S\0" "RUNIC LETTER SOWILO S\0" "RUNIC LETTER STAN\0" "RUNIC LETTER THURISAZ THURS THORN\0" "RUNIC LETTER TIWAZ TIR TYR T\0" "RUNIC LETTER URUZ UR U\0" "RUNIC LETTER V\0" "RUNIC LETTER W\0" "RUNIC LETTER WUNJO WYNN W\0" "RUNIC LETTER X\0" "RUNIC LETTER Y\0" "RUNIC LETTER YR\0" "RUNIC LETTER Z\0" "RUNIC MULTIPLE PUNCTUATION\0" "RUNIC SINGLE PUNCTUATION\0" "RUNIC TVIMADUR SYMBOL\0" "RUNNER\0" "RUNNING SHIRT WITH SASH\0" "RUPEE SIGN\0" "S IN TRIANGLE\0" "SAGITTARIUS\0" "SAILBOAT\0" "SAKE BOTTLE AND CUP\0" "SALTIRE\0" "SAMARITAN ABBREVIATION MARK\0" "SAMARITAN LETTER ALAF\0" "SAMARITAN LETTER BAA\0" "SAMARITAN LETTER BIT\0" "SAMARITAN LETTER DALAT\0" "SAMARITAN LETTER FI\0" "SAMARITAN LETTER GAMAN\0" "SAMARITAN LETTER IN\0" "SAMARITAN LETTER IT\0" "SAMARITAN LETTER IY\0" "SAMARITAN LETTER KAAF\0" "SAMARITAN LETTER LABAT\0" "SAMARITAN LETTER MIM\0" "SAMARITAN LETTER NUN\0" "SAMARITAN LETTER QUF\0" "SAMARITAN LETTER RISH\0" "SAMARITAN LETTER SHAN\0" "SAMARITAN LETTER SINGAAT\0" "SAMARITAN LETTER TAAF\0" "SAMARITAN LETTER TIT\0" "SAMARITAN LETTER TSAADIY\0" "SAMARITAN LETTER YUT\0" "SAMARITAN LETTER ZEN\0" "SAMARITAN MARK DAGESH\0" "SAMARITAN MARK EPENTHETIC YUT\0" "SAMARITAN MARK IN\0" "SAMARITAN MARK IN-ALAF\0" "SAMARITAN MARK NEQUDAA\0" "SAMARITAN MARK OCCLUSION\0" "SAMARITAN MODIFIER LETTER EPENTHETIC YUT\0" "SAMARITAN MODIFIER LETTER I\0" "SAMARITAN MODIFIER LETTER SHORT A\0" "SAMARITAN PUNCTUATION AFSAAQ\0" "SAMARITAN PUNCTUATION ANGED\0" "SAMARITAN PUNCTUATION ANNAAU\0" "SAMARITAN PUNCTUATION ARKAANU\0" "SAMARITAN PUNCTUATION ATMAAU\0" "SAMARITAN PUNCTUATION BAU\0" "SAMARITAN PUNCTUATION MELODIC QITSA\0" "SAMARITAN PUNCTUATION NEQUDAA\0" "SAMARITAN PUNCTUATION QITSA\0" "SAMARITAN PUNCTUATION SHIYYAALAA\0" "SAMARITAN PUNCTUATION SOF MASHFAAT\0" "SAMARITAN PUNCTUATION TURU\0" "SAMARITAN PUNCTUATION ZAEF\0" "SAMARITAN PUNCTUATION ZIQAA\0" "SAMARITAN VOWEL SIGN A\0" "SAMARITAN VOWEL SIGN AA\0" "SAMARITAN VOWEL SIGN E\0" "SAMARITAN VOWEL SIGN I\0" "SAMARITAN VOWEL SIGN LONG A\0" "SAMARITAN VOWEL SIGN LONG AA\0" "SAMARITAN VOWEL SIGN LONG E\0" "SAMARITAN VOWEL SIGN LONG I\0" "SAMARITAN VOWEL SIGN LONG U\0" "SAMARITAN VOWEL SIGN O\0" "SAMARITAN VOWEL SIGN OVERLONG A\0" "SAMARITAN VOWEL SIGN OVERLONG AA\0" "SAMARITAN VOWEL SIGN SHORT A\0" "SAMARITAN VOWEL SIGN SUKUN\0" "SAMARITAN VOWEL SIGN U\0" "SATELLITE ANTENNA\0" "SATURN\0" "SAURASHTRA CONSONANT SIGN HAARU\0" "SAURASHTRA DANDA\0" "SAURASHTRA DIGIT EIGHT\0" "SAURASHTRA DIGIT FIVE\0" "SAURASHTRA DIGIT FOUR\0" "SAURASHTRA DIGIT NINE\0" "SAURASHTRA DIGIT ONE\0" "SAURASHTRA DIGIT SEVEN\0" "SAURASHTRA DIGIT SIX\0" "SAURASHTRA DIGIT THREE\0" "SAURASHTRA DIGIT TWO\0" "SAURASHTRA DIGIT ZERO\0" "SAURASHTRA DOUBLE DANDA\0" "SAURASHTRA LETTER A\0" "SAURASHTRA LETTER AA\0" "SAURASHTRA LETTER AI\0" "SAURASHTRA LETTER AU\0" "SAURASHTRA LETTER BA\0" "SAURASHTRA LETTER BHA\0" "SAURASHTRA LETTER CA\0" "SAURASHTRA LETTER CHA\0" "SAURASHTRA LETTER DA\0" "SAURASHTRA LETTER DDA\0" "SAURASHTRA LETTER DDHA\0" "SAURASHTRA LETTER DHA\0" "SAURASHTRA LETTER E\0" "SAURASHTRA LETTER EE\0" "SAURASHTRA LETTER GA\0" "SAURASHTRA LETTER GHA\0" "SAURASHTRA LETTER HA\0" "SAURASHTRA LETTER I\0" "SAURASHTRA LETTER II\0" "SAURASHTRA LETTER JA\0" "SAURASHTRA LETTER JHA\0" "SAURASHTRA LETTER KA\0" "SAURASHTRA LETTER KHA\0" "SAURASHTRA LETTER LA\0" "SAURASHTRA LETTER LLA\0" "SAURASHTRA LETTER MA\0" "SAURASHTRA LETTER NA\0" "SAURASHTRA LETTER NGA\0" "SAURASHTRA LETTER NNA\0" "SAURASHTRA LETTER NYA\0" "SAURASHTRA LETTER O\0" "SAURASHTRA LETTER OO\0" "SAURASHTRA LETTER PA\0" "SAURASHTRA LETTER PHA\0" "SAURASHTRA LETTER RA\0" "SAURASHTRA LETTER SA\0" "SAURASHTRA LETTER SHA\0" "SAURASHTRA LETTER SSA\0" "SAURASHTRA LETTER TA\0" "SAURASHTRA LETTER THA\0" "SAURASHTRA LETTER TTA\0" "SAURASHTRA LETTER TTHA\0" "SAURASHTRA LETTER U\0" "SAURASHTRA LETTER UU\0" "SAURASHTRA LETTER VA\0" "SAURASHTRA LETTER VOCALIC L\0" "SAURASHTRA LETTER VOCALIC LL\0" "SAURASHTRA LETTER VOCALIC R\0" "SAURASHTRA LETTER VOCALIC RR\0" "SAURASHTRA LETTER YA\0" "SAURASHTRA SIGN ANUSVARA\0" "SAURASHTRA SIGN VIRAMA\0" "SAURASHTRA SIGN VISARGA\0" "SAURASHTRA VOWEL SIGN AA\0" "SAURASHTRA VOWEL SIGN AI\0" "SAURASHTRA VOWEL SIGN AU\0" "SAURASHTRA VOWEL SIGN E\0" "SAURASHTRA VOWEL SIGN EE\0" "SAURASHTRA VOWEL SIGN I\0" "SAURASHTRA VOWEL SIGN II\0" "SAURASHTRA VOWEL SIGN O\0" "SAURASHTRA VOWEL SIGN OO\0" "SAURASHTRA VOWEL SIGN U\0" "SAURASHTRA VOWEL SIGN UU\0" "SAURASHTRA VOWEL SIGN VOCALIC L\0" "SAURASHTRA VOWEL SIGN VOCALIC LL\0" "SAURASHTRA VOWEL SIGN VOCALIC R\0" "SAURASHTRA VOWEL SIGN VOCALIC RR\0" "SAXOPHONE\0" "SCALES\0" "SCHOOL\0" "SCHOOL SATCHEL\0" "SCORPIUS\0" "SCRIPT CAPITAL B\0" "SCRIPT CAPITAL E\0" "SCRIPT CAPITAL F\0" "SCRIPT CAPITAL H\0" "SCRIPT CAPITAL I\0" "SCRIPT CAPITAL L\0" "SCRIPT CAPITAL M\0" "SCRIPT CAPITAL P\0" "SCRIPT CAPITAL R\0" "SCRIPT SMALL E\0" "SCRIPT SMALL G\0" "SCRIPT SMALL L\0" "SCRIPT SMALL O\0" "SCROLL\0" "SCRUPLE\0" "SEAT\0" "SECTION SIGN\0" "SECTOR\0" "SEE-NO-EVIL MONKEY\0" "SEEDLING\0" "SEGMENT\0" "SEMICOLON\0" "SEMIDIRECT PRODUCT WITH BOTTOM CLOSED\0" "SEMISEXTILE\0" "SERVICE MARK\0" "SESAME DOT\0" "SESQUIQUADRATE\0" "SET MINUS\0" "SEXTILE\0" "SHADOWED WHITE CIRCLE\0" "SHADOWED WHITE LATIN CROSS\0" "SHADOWED WHITE STAR\0" "SHAMROCK\0" "SHAVED ICE\0" "SHAVIAN LETTER ADO\0" "SHAVIAN LETTER AGE\0" "SHAVIAN LETTER AH\0" "SHAVIAN LETTER AIR\0" "SHAVIAN LETTER ARE\0" "SHAVIAN LETTER ARRAY\0" "SHAVIAN LETTER ASH\0" "SHAVIAN LETTER AWE\0" "SHAVIAN LETTER BIB\0" "SHAVIAN LETTER CHURCH\0" "SHAVIAN LETTER DEAD\0" "SHAVIAN LETTER EAR\0" "SHAVIAN LETTER EAT\0" "SHAVIAN LETTER EGG\0" "SHAVIAN LETTER ERR\0" "SHAVIAN LETTER FEE\0" "SHAVIAN LETTER GAG\0" "SHAVIAN LETTER HA-HA\0" "SHAVIAN LETTER HUNG\0" "SHAVIAN LETTER IAN\0" "SHAVIAN LETTER ICE\0" "SHAVIAN LETTER IF\0" "SHAVIAN LETTER JUDGE\0" "SHAVIAN LETTER KICK\0" "SHAVIAN LETTER LOLL\0" "SHAVIAN LETTER MEASURE\0" "SHAVIAN LETTER MIME\0" "SHAVIAN LETTER NUN\0" "SHAVIAN LETTER OAK\0" "SHAVIAN LETTER OIL\0" "SHAVIAN LETTER ON\0" "SHAVIAN LETTER OOZE\0" "SHAVIAN LETTER OR\0" "SHAVIAN LETTER OUT\0" "SHAVIAN LETTER PEEP\0" "SHAVIAN LETTER ROAR\0" "SHAVIAN LETTER SO\0" "SHAVIAN LETTER SURE\0" "SHAVIAN LETTER THEY\0" "SHAVIAN LETTER THIGH\0" "SHAVIAN LETTER TOT\0" "SHAVIAN LETTER UP\0" "SHAVIAN LETTER VOW\0" "SHAVIAN LETTER WOE\0" "SHAVIAN LETTER WOOL\0" "SHAVIAN LETTER YEA\0" "SHAVIAN LETTER YEW\0" "SHAVIAN LETTER ZOO\0" "SHEEP\0" "SHINTO SHRINE\0" "SHIP\0" "SHOOTING STAR\0" "SHORT DOWN TACK\0" "SHORT DOWN TACK WITH OVERBAR\0" "SHORT LEFT TACK\0" "SHORT RIGHTWARDS ARROW ABOVE LEFTWARDS ARROW\0" "SHORT UP TACK\0" "SHORT UP TACK ABOVE SHORT DOWN TACK\0" "SHORT UP TACK WITH UNDERBAR\0" "SHORTCAKE\0" "SHOULDERED OPEN BOX\0" "SHOWER\0" "SHUFFLE PRODUCT\0" "SILHOUETTE OF JAPAN\0" "SIMILAR ABOVE GREATER-THAN ABOVE EQUALS SIGN\0" "SIMILAR ABOVE LESS-THAN ABOVE EQUALS SIGN\0" "SIMILAR MINUS SIMILAR\0" "SIMILAR OR GREATER-THAN\0" "SIMILAR OR LESS-THAN\0" "SINE WAVE\0" "SINGLE HIGH-REVERSED-9 QUOTATION MARK\0" "SINGLE LEFT-POINTING ANGLE QUOTATION MARK\0" "SINGLE LOW-9 QUOTATION MARK\0" "SINGLE RIGHT-POINTING ANGLE QUOTATION MARK\0" "SINHALA LETTER AAYANNA\0" "SINHALA LETTER AEEYANNA\0" "SINHALA LETTER AEYANNA\0" "SINHALA LETTER AIYANNA\0" "SINHALA LETTER ALPAPRAANA BAYANNA\0" "SINHALA LETTER ALPAPRAANA CAYANNA\0" "SINHALA LETTER ALPAPRAANA DAYANNA\0" "SINHALA LETTER ALPAPRAANA DDAYANNA\0" "SINHALA LETTER ALPAPRAANA GAYANNA\0" "SINHALA LETTER ALPAPRAANA JAYANNA\0" "SINHALA LETTER ALPAPRAANA KAYANNA\0" "SINHALA LETTER ALPAPRAANA PAYANNA\0" "SINHALA LETTER ALPAPRAANA TAYANNA\0" "SINHALA LETTER ALPAPRAANA TTAYANNA\0" "SINHALA LETTER AMBA BAYANNA\0" "SINHALA LETTER AUYANNA\0" "SINHALA LETTER AYANNA\0" "SINHALA LETTER DANTAJA LAYANNA\0" "SINHALA LETTER DANTAJA NAYANNA\0" "SINHALA LETTER DANTAJA SAYANNA\0" "SINHALA LETTER EEYANNA\0" "SINHALA LETTER EYANNA\0" "SINHALA LETTER FAYANNA\0" "SINHALA LETTER HAYANNA\0" "SINHALA LETTER IIYANNA\0" "SINHALA LETTER ILUUYANNA\0" "SINHALA LETTER ILUYANNA\0" "SINHALA LETTER IRUUYANNA\0" "SINHALA LETTER IRUYANNA\0" "SINHALA LETTER IYANNA\0" "SINHALA LETTER KANTAJA NAASIKYAYA\0" "SINHALA LETTER MAHAAPRAANA BAYANNA\0" "SINHALA LETTER MAHAAPRAANA CAYANNA\0" "SINHALA LETTER MAHAAPRAANA DAYANNA\0" "SINHALA LETTER MAHAAPRAANA DDAYANNA\0" "SINHALA LETTER MAHAAPRAANA GAYANNA\0" "SINHALA LETTER MAHAAPRAANA JAYANNA\0" "SINHALA LETTER MAHAAPRAANA KAYANNA\0" "SINHALA LETTER MAHAAPRAANA PAYANNA\0" "SINHALA LETTER MAHAAPRAANA TAYANNA\0" "SINHALA LETTER MAHAAPRAANA TTAYANNA\0" "SINHALA LETTER MAYANNA\0" "SINHALA LETTER MUURDHAJA LAYANNA\0" "SINHALA LETTER MUURDHAJA NAYANNA\0" "SINHALA LETTER MUURDHAJA SAYANNA\0" "SINHALA LETTER OOYANNA\0" "SINHALA LETTER OYANNA\0" "SINHALA LETTER RAYANNA\0" "SINHALA LETTER SANYAKA DAYANNA\0" "SINHALA LETTER SANYAKA DDAYANNA\0" "SINHALA LETTER SANYAKA GAYANNA\0" "SINHALA LETTER SANYAKA JAYANNA\0" "SINHALA LETTER TAALUJA NAASIKYAYA\0" "SINHALA LETTER TAALUJA SANYOOGA NAAKSIKYAYA\0" "SINHALA LETTER TAALUJA SAYANNA\0" "SINHALA LETTER UUYANNA\0" "SINHALA LETTER UYANNA\0" "SINHALA LETTER VAYANNA\0" "SINHALA LETTER YAYANNA\0" "SINHALA PUNCTUATION KUNDDALIYA\0" "SINHALA SIGN AL-LAKUNA\0" "SINHALA SIGN ANUSVARAYA\0" "SINHALA SIGN VISARGAYA\0" "SINHALA VOWEL SIGN AELA-PILLA\0" "SINHALA VOWEL SIGN DIGA AEDA-PILLA\0" "SINHALA VOWEL SIGN DIGA GAETTA-PILLA\0" "SINHALA VOWEL SIGN DIGA GAYANUKITTA\0" "SINHALA VOWEL SIGN DIGA IS-PILLA\0" "SINHALA VOWEL SIGN DIGA KOMBUVA\0" "SINHALA VOWEL SIGN DIGA PAA-PILLA\0" "SINHALA VOWEL SIGN GAETTA-PILLA\0" "SINHALA VOWEL SIGN GAYANUKITTA\0" "SINHALA VOWEL SIGN KETTI AEDA-PILLA\0" "SINHALA VOWEL SIGN KETTI IS-PILLA\0" "SINHALA VOWEL SIGN KETTI PAA-PILLA\0" "SINHALA VOWEL SIGN KOMBU DEKA\0" "SINHALA VOWEL SIGN KOMBUVA\0" "SINHALA VOWEL SIGN KOMBUVA HAA AELA-PILLA\0" "SINHALA VOWEL SIGN KOMBUVA HAA DIGA AELA-PILLA\0" "SINHALA VOWEL SIGN KOMBUVA HAA GAYANUKITTA\0" "SIX PETALLED BLACK AND WHITE FLORETTE\0" "SIX POINTED BLACK STAR\0" "SIX POINTED STAR WITH MIDDLE DOT\0" "SIX-PER-EM SPACE\0" "SIXTEEN POINTED ASTERISK\0" "SKI AND SKI BOOT\0" "SKIER\0" "SKULL\0" "SKULL AND CROSSBONES\0" "SLANTED EQUAL TO OR GREATER-THAN\0" "SLANTED EQUAL TO OR GREATER-THAN WITH DOT INSIDE\0" "SLANTED EQUAL TO OR LESS-THAN\0" "SLANTED EQUAL TO OR LESS-THAN WITH DOT INSIDE\0" "SLAVONIC ASTERISK\0" "SLEEPING SYMBOL\0" "SLEEPY FACE\0" "SLICE OF PIZZA\0" "SLOPE\0" "SLOPING LARGE AND\0" "SLOPING LARGE OR\0" "SLOT MACHINE\0" "SMALL AMPERSAND\0" "SMALL ASTERISK\0" "SMALL BLUE DIAMOND\0" "SMALL COLON\0" "SMALL COMMA\0" "SMALL COMMERCIAL AT\0" "SMALL CONTAINS AS MEMBER\0" "SMALL CONTAINS WITH OVERBAR\0" "SMALL CONTAINS WITH VERTICAL BAR AT END OF HORIZONTAL STROKE\0" "SMALL DOLLAR SIGN\0" "SMALL ELEMENT OF\0" "SMALL ELEMENT OF WITH OVERBAR\0" "SMALL ELEMENT OF WITH VERTICAL BAR AT END OF HORIZONTAL STROKE\0" "SMALL EM DASH\0" "SMALL EQUALS SIGN\0" "SMALL EXCLAMATION MARK\0" "SMALL FULL STOP\0" "SMALL GREATER-THAN SIGN\0" "SMALL HYPHEN-MINUS\0" "SMALL IDEOGRAPHIC COMMA\0" "SMALL LEFT CURLY BRACKET\0" "SMALL LEFT PARENTHESIS\0" "SMALL LEFT TORTOISE SHELL BRACKET\0" "SMALL LESS-THAN SIGN\0" "SMALL NUMBER SIGN\0" "SMALL ORANGE DIAMOND\0" "SMALL PERCENT SIGN\0" "SMALL PLUS SIGN\0" "SMALL QUESTION MARK\0" "SMALL REVERSE SOLIDUS\0" "SMALL RIGHT CURLY BRACKET\0" "SMALL RIGHT PARENTHESIS\0" "SMALL RIGHT TORTOISE SHELL BRACKET\0" "SMALL ROMAN NUMERAL EIGHT\0" "SMALL ROMAN NUMERAL ELEVEN\0" "SMALL ROMAN NUMERAL FIFTY\0" "SMALL ROMAN NUMERAL FIVE\0" "SMALL ROMAN NUMERAL FIVE HUNDRED\0" "SMALL ROMAN NUMERAL FOUR\0" "SMALL ROMAN NUMERAL NINE\0" "SMALL ROMAN NUMERAL ONE\0" "SMALL ROMAN NUMERAL ONE HUNDRED\0" "SMALL ROMAN NUMERAL ONE THOUSAND\0" "SMALL ROMAN NUMERAL SEVEN\0" "SMALL ROMAN NUMERAL SIX\0" "SMALL ROMAN NUMERAL TEN\0" "SMALL ROMAN NUMERAL THREE\0" "SMALL ROMAN NUMERAL TWELVE\0" "SMALL ROMAN NUMERAL TWO\0" "SMALL SEMICOLON\0" "SMALL TILDE\0" "SMALL TWO DOTS OVER ONE DOT PUNCTUATION\0" "SMALL VEE WITH UNDERBAR\0" "SMALLER THAN\0" "SMALLER THAN OR EQUAL TO\0" "SMASH PRODUCT\0" "SMILE\0" "SMILING CAT FACE WITH HEART-SHAPED EYES\0" "SMILING CAT FACE WITH OPEN MOUTH\0" "SMILING FACE WITH HALO\0" "SMILING FACE WITH HEART-SHAPED EYES\0" "SMILING FACE WITH HORNS\0" "SMILING FACE WITH OPEN MOUTH\0" "SMILING FACE WITH OPEN MOUTH AND COLD SWEAT\0" "SMILING FACE WITH OPEN MOUTH AND SMILING EYES\0" "SMILING FACE WITH OPEN MOUTH AND TIGHTLY-CLOSED EYES\0" "SMILING FACE WITH SMILING EYES\0" "SMILING FACE WITH SUNGLASSES\0" "SMIRKING FACE\0" "SMOKING SYMBOL\0" "SNAIL\0" "SNAKE\0" "SNOWBOARDER\0" "SNOWFLAKE\0" "SNOWMAN\0" "SNOWMAN WITHOUT SNOW\0" "SOCCER BALL\0" "SOFT HYPHEN\0" "SOFT ICE CREAM\0" "SOFTWARE-FUNCTION SYMBOL\0" "SOLIDUS\0" "SOLIDUS WITH OVERBAR\0" "SOON WITH RIGHTWARDS ARROW ABOVE\0" "SOUND RECORDING COPYRIGHT\0" "SOUTH EAST ARROW\0" "SOUTH EAST ARROW AND SOUTH WEST ARROW\0" "SOUTH EAST ARROW CROSSING NORTH EAST ARROW\0" "SOUTH EAST ARROW TO CORNER\0" "SOUTH EAST ARROW WITH HOOK\0" "SOUTH EAST BLACK ARROW\0" "SOUTH EAST DOUBLE ARROW\0" "SOUTH EAST WHITE ARROW\0" "SOUTH WEST ARROW\0" "SOUTH WEST ARROW AND NORTH WEST ARROW\0" "SOUTH WEST ARROW WITH HOOK\0" "SOUTH WEST BLACK ARROW\0" "SOUTH WEST DOUBLE ARROW\0" "SOUTH WEST WHITE ARROW\0" "SPACE\0" "SPAGHETTI\0" "SPARKLE\0" "SPARKLES\0" "SPARKLING HEART\0" "SPEAK-NO-EVIL MONKEY\0" "SPEAKER\0" "SPEAKER WITH CANCELLATION STROKE\0" "SPEAKER WITH ONE SOUND WAVE\0" "SPEAKER WITH THREE SOUND WAVES\0" "SPEECH BALLOON\0" "SPEEDBOAT\0" "SPESMILO SIGN\0" "SPHERICAL ANGLE\0" "SPHERICAL ANGLE OPENING LEFT\0" "SPHERICAL ANGLE OPENING UP\0" "SPIRAL SHELL\0" "SPLASHING SWEAT SYMBOL\0" "SPOUTING WHALE\0" "SQUARE A OVER M\0" "SQUARE AARU\0" "SQUARE AM\0" "SQUARE ANPEA\0" "SQUARE APAATO\0" "SQUARE ARUHUA\0" "SQUARE AU\0" "SQUARE BAARERU\0" "SQUARE BAR\0" "SQUARE BEETA\0" "SQUARE BIRU\0" "SQUARE BORUTO\0" "SQUARE BQ\0" "SQUARE BUSSYERU\0" "SQUARE C OVER KG\0" "SQUARE CAL\0" "SQUARE CAP\0" "SQUARE CC\0" "SQUARE CD\0" "SQUARE CM\0" "SQUARE CM CUBED\0" "SQUARE CM SQUARED\0" "SQUARE CO\0" "SQUARE CORPORATION\0" "SQUARE CUP\0" "SQUARE DA\0" "SQUARE DAASU\0" "SQUARE DB\0" "SQUARE DESI\0" "SQUARE DJ\0" "SQUARE DL\0" "SQUARE DM\0" "SQUARE DM CUBED\0" "SQUARE DM SQUARED\0" "SQUARE DORU\0" "SQUARE EEKAA\0" "SQUARE ERA NAME HEISEI\0" "SQUARE ERA NAME MEIZI\0" "SQUARE ERA NAME SYOUWA\0" "SQUARE ERA NAME TAISYOU\0" "SQUARE ERG\0" "SQUARE ESUKUUDO\0" "SQUARE EV\0" "SQUARE FM\0" "SQUARE FOOT\0" "SQUARE FOUR CORNERS\0" "SQUARE GAL\0" "SQUARE GANMA\0" "SQUARE GARON\0" "SQUARE GB\0" "SQUARE GHZ\0" "SQUARE GIGA\0" "SQUARE GINII\0" "SQUARE GIRUDAA\0" "SQUARE GPA\0" "SQUARE GURAMU\0" "SQUARE GURAMUTON\0" "SQUARE GY\0" "SQUARE HA\0" "SQUARE HAITU\0" "SQUARE HEKUTAARU\0" "SQUARE HERUTU\0" "SQUARE HG\0" "SQUARE HIRAGANA HOKA\0" "SQUARE HON\0" "SQUARE HOON\0" "SQUARE HOORU\0" "SQUARE HP\0" "SQUARE HPA\0" "SQUARE HUARADDO\0" "SQUARE HUIITO\0" "SQUARE HURAN\0" "SQUARE HZ\0" "SQUARE IMAGE OF\0" "SQUARE IMAGE OF OR EQUAL TO\0" "SQUARE IMAGE OF OR NOT EQUAL TO\0" "SQUARE IN\0" "SQUARE ININGU\0" "SQUARE INTI\0" "SQUARE IU\0" "SQUARE K OHM\0" "SQUARE KA\0" "SQUARE KAIRI\0" "SQUARE KARATTO\0" "SQUARE KARORII\0" "SQUARE KB\0" "SQUARE KCAL\0" "SQUARE KEESU\0" "SQUARE KG\0" "SQUARE KHZ\0" "SQUARE KIRO\0" "SQUARE KIROGURAMU\0" "SQUARE KIROMEETORU\0" "SQUARE KIROWATTO\0" "SQUARE KK\0" "SQUARE KL\0" "SQUARE KM\0" "SQUARE KM CAPITAL\0" "SQUARE KM CUBED\0" "SQUARE KM SQUARED\0" "SQUARE KOOPO\0" "SQUARE KORUNA\0" "SQUARE KPA\0" "SQUARE KT\0" "SQUARE KUROONE\0" "SQUARE KURUZEIRO\0" "SQUARE KV\0" "SQUARE KW\0" "SQUARE KYURII\0" "SQUARE LEFT OPEN BOX OPERATOR\0" "SQUARE LM\0" "SQUARE LN\0" "SQUARE LOG\0" "SQUARE LOZENGE\0" "SQUARE LX\0" "SQUARE M CUBED\0" "SQUARE M OHM\0" "SQUARE M OVER S\0" "SQUARE M OVER S SQUARED\0" "SQUARE M SQUARED\0" "SQUARE MA\0" "SQUARE MAHHA\0" "SQUARE MAIKURO\0" "SQUARE MAIRU\0" "SQUARE MANSYON\0" "SQUARE MARUKU\0" "SQUARE MB\0" "SQUARE MB SMALL\0" "SQUARE MEETORU\0" "SQUARE MEGA\0" "SQUARE MEGATON\0" "SQUARE MG\0" "SQUARE MHZ\0" "SQUARE MIKURON\0" "SQUARE MIL\0" "SQUARE MIRI\0" "SQUARE MIRIBAARU\0" "SQUARE ML\0" "SQUARE MM\0" "SQUARE MM CUBED\0" "SQUARE MM SQUARED\0" "SQUARE MOL\0" "SQUARE MPA\0" "SQUARE MS\0" "SQUARE MU A\0" "SQUARE MU F\0" "SQUARE MU G\0" "SQUARE MU L\0" "SQUARE MU M\0" "SQUARE MU S\0" "SQUARE MU V\0" "SQUARE MU W\0" "SQUARE MV\0" "SQUARE MV MEGA\0" "SQUARE MW\0" "SQUARE MW MEGA\0" "SQUARE NA\0" "SQUARE NANO\0" "SQUARE NF\0" "SQUARE NM\0" "SQUARE NOTTO\0" "SQUARE NS\0" "SQUARE NV\0" "SQUARE NW\0" "SQUARE ONSU\0" "SQUARE OOMU\0" "SQUARE ORIGINAL OF\0" "SQUARE ORIGINAL OF OR EQUAL TO\0" "SQUARE ORIGINAL OF OR NOT EQUAL TO\0" "SQUARE OV\0" "SQUARE PA\0" "SQUARE PA AMPS\0" "SQUARE PAASENTO\0" "SQUARE PAATU\0" "SQUARE PC\0" "SQUARE PEEZI\0" "SQUARE PENIHI\0" "SQUARE PENSU\0" "SQUARE PESO\0" "SQUARE PF\0" "SQUARE PH\0" "SQUARE PIASUTORU\0" "SQUARE PIKO\0" "SQUARE PIKURU\0" "SQUARE PM\0" "SQUARE POINTO\0" "SQUARE PONDO\0" "SQUARE PPM\0" "SQUARE PR\0" "SQUARE PS\0" "SQUARE PV\0" "SQUARE PW\0" "SQUARE RAD\0" "SQUARE RAD OVER S\0" "SQUARE RAD OVER S SQUARED\0" "SQUARE REMU\0" "SQUARE RENTOGEN\0" "SQUARE RIGHT OPEN BOX OPERATOR\0" "SQUARE RIRA\0" "SQUARE RITTORU\0" "SQUARE ROOT\0" "SQUARE RUPII\0" "SQUARE RUUBURU\0" "SQUARE SAIKURU\0" "SQUARE SANTIIMU\0" "SQUARE SENTI\0" "SQUARE SENTO\0" "SQUARE SIRINGU\0" "SQUARE SR\0" "SQUARE SV\0" "SQUARE THZ\0" "SQUARE TON\0" "SQUARE UON\0" "SQUARE V OVER M\0" "SQUARE WATTO\0" "SQUARE WB\0" "SQUARE WITH BOTTOM HALF BLACK\0" "SQUARE WITH CONTOURED OUTLINE\0" "SQUARE WITH DIAGONAL CROSSHATCH FILL\0" "SQUARE WITH HORIZONTAL FILL\0" "SQUARE WITH LEFT HALF BLACK\0" "SQUARE WITH LOWER LEFT DIAGONAL HALF BLACK\0" "SQUARE WITH LOWER RIGHT DIAGONAL HALF BLACK\0" "SQUARE WITH ORTHOGONAL CROSSHATCH FILL\0" "SQUARE WITH RIGHT HALF BLACK\0" "SQUARE WITH TOP HALF BLACK\0" "SQUARE WITH UPPER LEFT DIAGONAL HALF BLACK\0" "SQUARE WITH UPPER LEFT TO LOWER RIGHT FILL\0" "SQUARE WITH UPPER RIGHT DIAGONAL HALF BLACK\0" "SQUARE WITH UPPER RIGHT TO LOWER LEFT FILL\0" "SQUARE WITH VERTICAL FILL\0" "SQUARE YAADO\0" "SQUARE YAARU\0" "SQUARE YUAN\0" "SQUARED ASTERISK\0" "SQUARED CJK UNIFIED IDEOGRAPH-4E00\0" "SQUARED CJK UNIFIED IDEOGRAPH-4E09\0" "SQUARED CJK UNIFIED IDEOGRAPH-4E2D\0" "SQUARED CJK UNIFIED IDEOGRAPH-4E8C\0" "SQUARED CJK UNIFIED IDEOGRAPH-4EA4\0" "SQUARED CJK UNIFIED IDEOGRAPH-518D\0" "SQUARED CJK UNIFIED IDEOGRAPH-521D\0" "SQUARED CJK UNIFIED IDEOGRAPH-524D\0" "SQUARED CJK UNIFIED IDEOGRAPH-5272\0" "SQUARED CJK UNIFIED IDEOGRAPH-53CC\0" "SQUARED CJK UNIFIED IDEOGRAPH-53F3\0" "SQUARED CJK UNIFIED IDEOGRAPH-5408\0" "SQUARED CJK UNIFIED IDEOGRAPH-5439\0" "SQUARED CJK UNIFIED IDEOGRAPH-55B6\0" "SQUARED CJK UNIFIED IDEOGRAPH-58F0\0" "SQUARED CJK UNIFIED IDEOGRAPH-591A\0" "SQUARED CJK UNIFIED IDEOGRAPH-5929\0" "SQUARED CJK UNIFIED IDEOGRAPH-5B57\0" "SQUARED CJK UNIFIED IDEOGRAPH-5DE6\0" "SQUARED CJK UNIFIED IDEOGRAPH-5F8C\0" "SQUARED CJK UNIFIED IDEOGRAPH-624B\0" "SQUARED CJK UNIFIED IDEOGRAPH-6253\0" "SQUARED CJK UNIFIED IDEOGRAPH-6295\0" "SQUARED CJK UNIFIED IDEOGRAPH-6307\0" "SQUARED CJK UNIFIED IDEOGRAPH-6355\0" "SQUARED CJK UNIFIED IDEOGRAPH-6599\0" "SQUARED CJK UNIFIED IDEOGRAPH-65B0\0" "SQUARED CJK UNIFIED IDEOGRAPH-6620\0" "SQUARED CJK UNIFIED IDEOGRAPH-6708\0" "SQUARED CJK UNIFIED IDEOGRAPH-6709\0" "SQUARED CJK UNIFIED IDEOGRAPH-6E80\0" "SQUARED CJK UNIFIED IDEOGRAPH-6F14\0" "SQUARED CJK UNIFIED IDEOGRAPH-7121\0" "SQUARED CJK UNIFIED IDEOGRAPH-751F\0" "SQUARED CJK UNIFIED IDEOGRAPH-7533\0" "SQUARED CJK UNIFIED IDEOGRAPH-7981\0" "SQUARED CJK UNIFIED IDEOGRAPH-7A7A\0" "SQUARED CJK UNIFIED IDEOGRAPH-7D42\0" "SQUARED CJK UNIFIED IDEOGRAPH-89E3\0" "SQUARED CJK UNIFIED IDEOGRAPH-8CA9\0" "SQUARED CJK UNIFIED IDEOGRAPH-8D70\0" "SQUARED CJK UNIFIED IDEOGRAPH-904A\0" "SQUARED CL\0" "SQUARED COOL\0" "SQUARED DOT OPERATOR\0" "SQUARED FALLING DIAGONAL SLASH\0" "SQUARED FOUR DOT PUNCTUATION\0" "SQUARED FREE\0" "SQUARED HV\0" "SQUARED ID\0" "SQUARED KATAKANA DE\0" "SQUARED KATAKANA KOKO\0" "SQUARED KATAKANA SA\0" "SQUARED KEY\0" "SQUARED LATIN CAPITAL LETTER A\0" "SQUARED LATIN CAPITAL LETTER B\0" "SQUARED LATIN CAPITAL LETTER C\0" "SQUARED LATIN CAPITAL LETTER D\0" "SQUARED LATIN CAPITAL LETTER E\0" "SQUARED LATIN CAPITAL LETTER F\0" "SQUARED LATIN CAPITAL LETTER G\0" "SQUARED LATIN CAPITAL LETTER H\0" "SQUARED LATIN CAPITAL LETTER I\0" "SQUARED LATIN CAPITAL LETTER J\0" "SQUARED LATIN CAPITAL LETTER K\0" "SQUARED LATIN CAPITAL LETTER L\0" "SQUARED LATIN CAPITAL LETTER M\0" "SQUARED LATIN CAPITAL LETTER N\0" "SQUARED LATIN CAPITAL LETTER O\0" "SQUARED LATIN CAPITAL LETTER P\0" "SQUARED LATIN CAPITAL LETTER Q\0" "SQUARED LATIN CAPITAL LETTER R\0" "SQUARED LATIN CAPITAL LETTER S\0" "SQUARED LATIN CAPITAL LETTER T\0" "SQUARED LATIN CAPITAL LETTER U\0" "SQUARED LATIN CAPITAL LETTER V\0" "SQUARED LATIN CAPITAL LETTER W\0" "SQUARED LATIN CAPITAL LETTER X\0" "SQUARED LATIN CAPITAL LETTER Y\0" "SQUARED LATIN CAPITAL LETTER Z\0" "SQUARED LOGICAL AND\0" "SQUARED LOGICAL OR\0" "SQUARED MINUS\0" "SQUARED MV\0" "SQUARED NEW\0" "SQUARED NG\0" "SQUARED OK\0" "SQUARED PLUS\0" "SQUARED PPV\0" "SQUARED RISING DIAGONAL SLASH\0" "SQUARED SALTIRE\0" "SQUARED SD\0" "SQUARED SMALL CIRCLE\0" "SQUARED SOS\0" "SQUARED SQUARE\0" "SQUARED SS\0" "SQUARED TIMES\0" "SQUARED UP WITH EXCLAMATION MARK\0" "SQUARED VS\0" "SQUARED WC\0" "SQUAT BLACK RIGHTWARDS ARROW\0" "STAFF OF AESCULAPIUS\0" "STAFF OF HERMES\0" "STAR AND CRESCENT\0" "STAR EQUALS\0" "STAR OF DAVID\0" "STAR OPERATOR\0" "STATION\0" "STATUE OF LIBERTY\0" "STEAM LOCOMOTIVE\0" "STEAMING BOWL\0" "STOPWATCH\0" "STRAIGHT RULER\0" "STRAIGHTNESS\0" "STRAWBERRY\0" "STRESS OUTLINED WHITE STAR\0" "STRICTLY EQUIVALENT TO\0" "SUBSCRIPT EIGHT\0" "SUBSCRIPT EQUALS SIGN\0" "SUBSCRIPT FIVE\0" "SUBSCRIPT FOUR\0" "SUBSCRIPT LEFT PARENTHESIS\0" "SUBSCRIPT MINUS\0" "SUBSCRIPT NINE\0" "SUBSCRIPT ONE\0" "SUBSCRIPT PLUS SIGN\0" "SUBSCRIPT RIGHT PARENTHESIS\0" "SUBSCRIPT SEVEN\0" "SUBSCRIPT SIX\0" "SUBSCRIPT THREE\0" "SUBSCRIPT TWO\0" "SUBSCRIPT ZERO\0" "SUBSET ABOVE RIGHTWARDS ARROW\0" "SUBSET ABOVE SUBSET\0" "SUBSET ABOVE SUPERSET\0" "SUBSET OF\0" "SUBSET OF ABOVE ALMOST EQUAL TO\0" "SUBSET OF ABOVE EQUALS SIGN\0" "SUBSET OF ABOVE NOT EQUAL TO\0" "SUBSET OF ABOVE TILDE OPERATOR\0" "SUBSET OF OR EQUAL TO\0" "SUBSET OF OR EQUAL TO WITH DOT ABOVE\0" "SUBSET OF WITH NOT EQUAL TO\0" "SUBSET WITH DOT\0" "SUBSET WITH MULTIPLICATION SIGN BELOW\0" "SUBSET WITH PLUS SIGN BELOW\0" "SUCCEEDS\0" "SUCCEEDS ABOVE ALMOST EQUAL TO\0" "SUCCEEDS ABOVE EQUALS SIGN\0" "SUCCEEDS ABOVE NOT ALMOST EQUAL TO\0" "SUCCEEDS ABOVE NOT EQUAL TO\0" "SUCCEEDS ABOVE SINGLE-LINE EQUALS SIGN\0" "SUCCEEDS ABOVE SINGLE-LINE NOT EQUAL TO\0" "SUCCEEDS BUT NOT EQUIVALENT TO\0" "SUCCEEDS OR EQUAL TO\0" "SUCCEEDS OR EQUIVALENT TO\0" "SUCCEEDS UNDER RELATION\0" "SUMMATION BOTTOM\0" "SUMMATION TOP\0" "SUMMATION WITH INTEGRAL\0" "SUN\0" "SUN BEHIND CLOUD\0" "SUN WITH FACE\0" "SUNDANESE CONSONANT SIGN PAMINGKAL\0" "SUNDANESE CONSONANT SIGN PANYAKRA\0" "SUNDANESE CONSONANT SIGN PANYIKU\0" "SUNDANESE DIGIT EIGHT\0" "SUNDANESE DIGIT FIVE\0" "SUNDANESE DIGIT FOUR\0" "SUNDANESE DIGIT NINE\0" "SUNDANESE DIGIT ONE\0" "SUNDANESE DIGIT SEVEN\0" "SUNDANESE DIGIT SIX\0" "SUNDANESE DIGIT THREE\0" "SUNDANESE DIGIT TWO\0" "SUNDANESE DIGIT ZERO\0" "SUNDANESE LETTER A\0" "SUNDANESE LETTER AE\0" "SUNDANESE LETTER BA\0" "SUNDANESE LETTER CA\0" "SUNDANESE LETTER DA\0" "SUNDANESE LETTER E\0" "SUNDANESE LETTER EU\0" "SUNDANESE LETTER FA\0" "SUNDANESE LETTER GA\0" "SUNDANESE LETTER HA\0" "SUNDANESE LETTER I\0" "SUNDANESE LETTER JA\0" "SUNDANESE LETTER KA\0" "SUNDANESE LETTER KHA\0" "SUNDANESE LETTER LA\0" "SUNDANESE LETTER MA\0" "SUNDANESE LETTER NA\0" "SUNDANESE LETTER NGA\0" "SUNDANESE LETTER NYA\0" "SUNDANESE LETTER O\0" "SUNDANESE LETTER PA\0" "SUNDANESE LETTER QA\0" "SUNDANESE LETTER RA\0" "SUNDANESE LETTER SA\0" "SUNDANESE LETTER SYA\0" "SUNDANESE LETTER TA\0" "SUNDANESE LETTER U\0" "SUNDANESE LETTER VA\0" "SUNDANESE LETTER WA\0" "SUNDANESE LETTER XA\0" "SUNDANESE LETTER YA\0" "SUNDANESE LETTER ZA\0" "SUNDANESE SIGN PAMAAEH\0" "SUNDANESE SIGN PANGLAYAR\0" "SUNDANESE SIGN PANGWISAD\0" "SUNDANESE SIGN PANYECEK\0" "SUNDANESE VOWEL SIGN PAMEPET\0" "SUNDANESE VOWEL SIGN PANAELAENG\0" "SUNDANESE VOWEL SIGN PANEULEUNG\0" "SUNDANESE VOWEL SIGN PANGHULU\0" "SUNDANESE VOWEL SIGN PANOLONG\0" "SUNDANESE VOWEL SIGN PANYUKU\0" "SUNFLOWER\0" "SUNRISE\0" "SUNRISE OVER MOUNTAINS\0" "SUNSET OVER BUILDINGS\0" "SUPERSCRIPT EIGHT\0" "SUPERSCRIPT EQUALS SIGN\0" "SUPERSCRIPT FIVE\0" "SUPERSCRIPT FOUR\0" "SUPERSCRIPT LATIN SMALL LETTER I\0" "SUPERSCRIPT LATIN SMALL LETTER N\0" "SUPERSCRIPT LEFT PARENTHESIS\0" "SUPERSCRIPT MINUS\0" "SUPERSCRIPT NINE\0" "SUPERSCRIPT ONE\0" "SUPERSCRIPT PLUS SIGN\0" "SUPERSCRIPT RIGHT PARENTHESIS\0" "SUPERSCRIPT SEVEN\0" "SUPERSCRIPT SIX\0" "SUPERSCRIPT THREE\0" "SUPERSCRIPT TWO\0" "SUPERSCRIPT ZERO\0" "SUPERSET ABOVE LEFTWARDS ARROW\0" "SUPERSET ABOVE SUBSET\0" "SUPERSET ABOVE SUPERSET\0" "SUPERSET BESIDE AND JOINED BY DASH WITH SUBSET\0" "SUPERSET BESIDE SUBSET\0" "SUPERSET OF\0" "SUPERSET OF ABOVE ALMOST EQUAL TO\0" "SUPERSET OF ABOVE EQUALS SIGN\0" "SUPERSET OF ABOVE NOT EQUAL TO\0" "SUPERSET OF ABOVE TILDE OPERATOR\0" "SUPERSET OF OR EQUAL TO\0" "SUPERSET OF OR EQUAL TO WITH DOT ABOVE\0" "SUPERSET OF WITH NOT EQUAL TO\0" "SUPERSET PRECEDING SOLIDUS\0" "SUPERSET WITH DOT\0" "SUPERSET WITH MULTIPLICATION SIGN BELOW\0" "SUPERSET WITH PLUS SIGN BELOW\0" "SURFACE INTEGRAL\0" "SURFER\0" "SUSHI\0" "SUSPENSION RAILWAY\0" "SWIMMER\0" "SWUNG DASH\0" "SYLOTI NAGRI LETTER A\0" "SYLOTI NAGRI LETTER BHO\0" "SYLOTI NAGRI LETTER BO\0" "SYLOTI NAGRI LETTER CHO\0" "SYLOTI NAGRI LETTER CO\0" "SYLOTI NAGRI LETTER DDHO\0" "SYLOTI NAGRI LETTER DDO\0" "SYLOTI NAGRI LETTER DHO\0" "SYLOTI NAGRI LETTER DO\0" "SYLOTI NAGRI LETTER E\0" "SYLOTI NAGRI LETTER GHO\0" "SYLOTI NAGRI LETTER GO\0" "SYLOTI NAGRI LETTER HO\0" "SYLOTI NAGRI LETTER I\0" "SYLOTI NAGRI LETTER JHO\0" "SYLOTI NAGRI LETTER JO\0" "SYLOTI NAGRI LETTER KHO\0" "SYLOTI NAGRI LETTER KO\0" "SYLOTI NAGRI LETTER LO\0" "SYLOTI NAGRI LETTER MO\0" "SYLOTI NAGRI LETTER NO\0" "SYLOTI NAGRI LETTER O\0" "SYLOTI NAGRI LETTER PHO\0" "SYLOTI NAGRI LETTER PO\0" "SYLOTI NAGRI LETTER RO\0" "SYLOTI NAGRI LETTER RRO\0" "SYLOTI NAGRI LETTER SO\0" "SYLOTI NAGRI LETTER THO\0" "SYLOTI NAGRI LETTER TO\0" "SYLOTI NAGRI LETTER TTHO\0" "SYLOTI NAGRI LETTER TTO\0" "SYLOTI NAGRI LETTER U\0" "SYLOTI NAGRI POETRY MARK-1\0" "SYLOTI NAGRI POETRY MARK-2\0" "SYLOTI NAGRI POETRY MARK-3\0" "SYLOTI NAGRI POETRY MARK-4\0" "SYLOTI NAGRI SIGN ANUSVARA\0" "SYLOTI NAGRI SIGN DVISVARA\0" "SYLOTI NAGRI SIGN HASANTA\0" "SYLOTI NAGRI VOWEL SIGN A\0" "SYLOTI NAGRI VOWEL SIGN E\0" "SYLOTI NAGRI VOWEL SIGN I\0" "SYLOTI NAGRI VOWEL SIGN OO\0" "SYLOTI NAGRI VOWEL SIGN U\0" "SYMBOL FOR ACKNOWLEDGE\0" "SYMBOL FOR BACKSPACE\0" "SYMBOL FOR BELL\0" "SYMBOL FOR CANCEL\0" "SYMBOL FOR CARRIAGE RETURN\0" "SYMBOL FOR DATA LINK ESCAPE\0" "SYMBOL FOR DELETE\0" "SYMBOL FOR DELETE FORM TWO\0" "SYMBOL FOR DEVICE CONTROL FOUR\0" "SYMBOL FOR DEVICE CONTROL ONE\0" "SYMBOL FOR DEVICE CONTROL THREE\0" "SYMBOL FOR DEVICE CONTROL TWO\0" "SYMBOL FOR END OF MEDIUM\0" "SYMBOL FOR END OF TEXT\0" "SYMBOL FOR END OF TRANSMISSION\0" "SYMBOL FOR END OF TRANSMISSION BLOCK\0" "SYMBOL FOR ENQUIRY\0" "SYMBOL FOR ESCAPE\0" "SYMBOL FOR FILE SEPARATOR\0" "SYMBOL FOR FORM FEED\0" "SYMBOL FOR GROUP SEPARATOR\0" "SYMBOL FOR HORIZONTAL TABULATION\0" "SYMBOL FOR LINE FEED\0" "SYMBOL FOR NEGATIVE ACKNOWLEDGE\0" "SYMBOL FOR NEWLINE\0" "SYMBOL FOR NULL\0" "SYMBOL FOR RECORD SEPARATOR\0" "SYMBOL FOR SAMARITAN SOURCE\0" "SYMBOL FOR SHIFT IN\0" "SYMBOL FOR SHIFT OUT\0" "SYMBOL FOR SPACE\0" "SYMBOL FOR START OF HEADING\0" "SYMBOL FOR START OF TEXT\0" "SYMBOL FOR SUBSTITUTE\0" "SYMBOL FOR SUBSTITUTE FORM TWO\0" "SYMBOL FOR SYNCHRONOUS IDLE\0" "SYMBOL FOR UNIT SEPARATOR\0" "SYMBOL FOR VERTICAL TABULATION\0" "SYMMETRY\0" "SYRIAC ABBREVIATION MARK\0" "SYRIAC BARREKH\0" "SYRIAC COLON SKEWED LEFT\0" "SYRIAC COLON SKEWED RIGHT\0" "SYRIAC CONTRACTION\0" "SYRIAC DOTTED ZLAMA ANGULAR\0" "SYRIAC DOTTED ZLAMA HORIZONTAL\0" "SYRIAC END OF PARAGRAPH\0" "SYRIAC ESASA ABOVE\0" "SYRIAC ESASA BELOW\0" "SYRIAC FEMININE DOT\0" "SYRIAC HARKLEAN ASTERISCUS\0" "SYRIAC HARKLEAN METOBELUS\0" "SYRIAC HARKLEAN OBELUS\0" "SYRIAC HBASA ABOVE\0" "SYRIAC HBASA BELOW\0" "SYRIAC HBASA-ESASA DOTTED\0" "SYRIAC HORIZONTAL COLON\0" "SYRIAC LETTER ALAPH\0" "SYRIAC LETTER BETH\0" "SYRIAC LETTER DALATH\0" "SYRIAC LETTER DOTLESS DALATH RISH\0" "SYRIAC LETTER E\0" "SYRIAC LETTER FINAL SEMKATH\0" "SYRIAC LETTER GAMAL\0" "SYRIAC LETTER GAMAL GARSHUNI\0" "SYRIAC LETTER HE\0" "SYRIAC LETTER HETH\0" "SYRIAC LETTER KAPH\0" "SYRIAC LETTER LAMADH\0" "SYRIAC LETTER MIM\0" "SYRIAC LETTER NUN\0" "SYRIAC LETTER PE\0" "SYRIAC LETTER PERSIAN BHETH\0" "SYRIAC LETTER PERSIAN DHALATH\0" "SYRIAC LETTER PERSIAN GHAMAL\0" "SYRIAC LETTER QAPH\0" "SYRIAC LETTER REVERSED PE\0" "SYRIAC LETTER RISH\0" "SYRIAC LETTER SADHE\0" "SYRIAC LETTER SEMKATH\0" "SYRIAC LETTER SHIN\0" "SYRIAC LETTER SOGDIAN FE\0" "SYRIAC LETTER SOGDIAN KHAPH\0" "SYRIAC LETTER SOGDIAN ZHAIN\0" "SYRIAC LETTER SUPERSCRIPT ALAPH\0" "SYRIAC LETTER TAW\0" "SYRIAC LETTER TETH\0" "SYRIAC LETTER TETH GARSHUNI\0" "SYRIAC LETTER WAW\0" "SYRIAC LETTER YUDH\0" "SYRIAC LETTER YUDH HE\0" "SYRIAC LETTER ZAIN\0" "SYRIAC MUSIC\0" "SYRIAC OBLIQUE LINE ABOVE\0" "SYRIAC OBLIQUE LINE BELOW\0" "SYRIAC PTHAHA ABOVE\0" "SYRIAC PTHAHA BELOW\0" "SYRIAC PTHAHA DOTTED\0" "SYRIAC QUSHSHAYA\0" "SYRIAC RBASA ABOVE\0" "SYRIAC RBASA BELOW\0" "SYRIAC RUKKAKHA\0" "SYRIAC RWAHA\0" "SYRIAC SUBLINEAR COLON\0" "SYRIAC SUBLINEAR COLON SKEWED RIGHT\0" "SYRIAC SUBLINEAR FULL STOP\0" "SYRIAC SUPRALINEAR COLON\0" "SYRIAC SUPRALINEAR COLON SKEWED LEFT\0" "SYRIAC SUPRALINEAR FULL STOP\0" "SYRIAC THREE DOTS ABOVE\0" "SYRIAC THREE DOTS BELOW\0" "SYRIAC TWO VERTICAL DOTS ABOVE\0" "SYRIAC TWO VERTICAL DOTS BELOW\0" "SYRIAC ZQAPHA ABOVE\0" "SYRIAC ZQAPHA BELOW\0" "SYRIAC ZQAPHA DOTTED\0" "SYRINGE\0" "T-SHIRT\0" "TAG AMPERSAND\0" "TAG APOSTROPHE\0" "TAG ASTERISK\0" "TAG CIRCUMFLEX ACCENT\0" "TAG COLON\0" "TAG COMMA\0" "TAG COMMERCIAL AT\0" "TAG DIGIT EIGHT\0" "TAG DIGIT FIVE\0" "TAG DIGIT FOUR\0" "TAG DIGIT NINE\0" "TAG DIGIT ONE\0" "TAG DIGIT SEVEN\0" "TAG DIGIT SIX\0" "TAG DIGIT THREE\0" "TAG DIGIT TWO\0" "TAG DIGIT ZERO\0" "TAG DOLLAR SIGN\0" "TAG EQUALS SIGN\0" "TAG EXCLAMATION MARK\0" "TAG FULL STOP\0" "TAG GRAVE ACCENT\0" "TAG GREATER-THAN SIGN\0" "TAG HYPHEN-MINUS\0" "TAG LATIN CAPITAL LETTER A\0" "TAG LATIN CAPITAL LETTER B\0" "TAG LATIN CAPITAL LETTER C\0" "TAG LATIN CAPITAL LETTER D\0" "TAG LATIN CAPITAL LETTER E\0" "TAG LATIN CAPITAL LETTER F\0" "TAG LATIN CAPITAL LETTER G\0" "TAG LATIN CAPITAL LETTER H\0" "TAG LATIN CAPITAL LETTER I\0" "TAG LATIN CAPITAL LETTER J\0" "TAG LATIN CAPITAL LETTER K\0" "TAG LATIN CAPITAL LETTER L\0" "TAG LATIN CAPITAL LETTER M\0" "TAG LATIN CAPITAL LETTER N\0" "TAG LATIN CAPITAL LETTER O\0" "TAG LATIN CAPITAL LETTER P\0" "TAG LATIN CAPITAL LETTER Q\0" "TAG LATIN CAPITAL LETTER R\0" "TAG LATIN CAPITAL LETTER S\0" "TAG LATIN CAPITAL LETTER T\0" "TAG LATIN CAPITAL LETTER U\0" "TAG LATIN CAPITAL LETTER V\0" "TAG LATIN CAPITAL LETTER W\0" "TAG LATIN CAPITAL LETTER X\0" "TAG LATIN CAPITAL LETTER Y\0" "TAG LATIN CAPITAL LETTER Z\0" "TAG LATIN SMALL LETTER A\0" "TAG LATIN SMALL LETTER B\0" "TAG LATIN SMALL LETTER C\0" "TAG LATIN SMALL LETTER D\0" "TAG LATIN SMALL LETTER E\0" "TAG LATIN SMALL LETTER F\0" "TAG LATIN SMALL LETTER G\0" "TAG LATIN SMALL LETTER H\0" "TAG LATIN SMALL LETTER I\0" "TAG LATIN SMALL LETTER J\0" "TAG LATIN SMALL LETTER K\0" "TAG LATIN SMALL LETTER L\0" "TAG LATIN SMALL LETTER M\0" "TAG LATIN SMALL LETTER N\0" "TAG LATIN SMALL LETTER O\0" "TAG LATIN SMALL LETTER P\0" "TAG LATIN SMALL LETTER Q\0" "TAG LATIN SMALL LETTER R\0" "TAG LATIN SMALL LETTER S\0" "TAG LATIN SMALL LETTER T\0" "TAG LATIN SMALL LETTER U\0" "TAG LATIN SMALL LETTER V\0" "TAG LATIN SMALL LETTER W\0" "TAG LATIN SMALL LETTER X\0" "TAG LATIN SMALL LETTER Y\0" "TAG LATIN SMALL LETTER Z\0" "TAG LEFT CURLY BRACKET\0" "TAG LEFT PARENTHESIS\0" "TAG LEFT SQUARE BRACKET\0" "TAG LESS-THAN SIGN\0" "TAG LOW LINE\0" "TAG NUMBER SIGN\0" "TAG PERCENT SIGN\0" "TAG PLUS SIGN\0" "TAG QUESTION MARK\0" "TAG QUOTATION MARK\0" "TAG REVERSE SOLIDUS\0" "TAG RIGHT CURLY BRACKET\0" "TAG RIGHT PARENTHESIS\0" "TAG RIGHT SQUARE BRACKET\0" "TAG SEMICOLON\0" "TAG SOLIDUS\0" "TAG SPACE\0" "TAG TILDE\0" "TAG VERTICAL LINE\0" "TAGALOG LETTER A\0" "TAGALOG LETTER BA\0" "TAGALOG LETTER DA\0" "TAGALOG LETTER GA\0" "TAGALOG LETTER HA\0" "TAGALOG LETTER I\0" "TAGALOG LETTER KA\0" "TAGALOG LETTER LA\0" "TAGALOG LETTER MA\0" "TAGALOG LETTER NA\0" "TAGALOG LETTER NGA\0" "TAGALOG LETTER PA\0" "TAGALOG LETTER SA\0" "TAGALOG LETTER TA\0" "TAGALOG LETTER U\0" "TAGALOG LETTER WA\0" "TAGALOG LETTER YA\0" "TAGALOG SIGN VIRAMA\0" "TAGALOG VOWEL SIGN I\0" "TAGALOG VOWEL SIGN U\0" "TAGBANWA LETTER A\0" "TAGBANWA LETTER BA\0" "TAGBANWA LETTER DA\0" "TAGBANWA LETTER GA\0" "TAGBANWA LETTER I\0" "TAGBANWA LETTER KA\0" "TAGBANWA LETTER LA\0" "TAGBANWA LETTER MA\0" "TAGBANWA LETTER NA\0" "TAGBANWA LETTER NGA\0" "TAGBANWA LETTER PA\0" "TAGBANWA LETTER SA\0" "TAGBANWA LETTER TA\0" "TAGBANWA LETTER U\0" "TAGBANWA LETTER WA\0" "TAGBANWA LETTER YA\0" "TAGBANWA VOWEL SIGN I\0" "TAGBANWA VOWEL SIGN U\0" "TAI LE LETTER A\0" "TAI LE LETTER AI\0" "TAI LE LETTER AUE\0" "TAI LE LETTER E\0" "TAI LE LETTER EE\0" "TAI LE LETTER EH\0" "TAI LE LETTER FA\0" "TAI LE LETTER HA\0" "TAI LE LETTER I\0" "TAI LE LETTER KA\0" "TAI LE LETTER KHA\0" "TAI LE LETTER LA\0" "TAI LE LETTER MA\0" "TAI LE LETTER NA\0" "TAI LE LETTER NGA\0" "TAI LE LETTER O\0" "TAI LE LETTER OO\0" "TAI LE LETTER PA\0" "TAI LE LETTER PHA\0" "TAI LE LETTER QA\0" "TAI LE LETTER SA\0" "TAI LE LETTER TA\0" "TAI LE LETTER THA\0" "TAI LE LETTER TONE-2\0" "TAI LE LETTER TONE-3\0" "TAI LE LETTER TONE-4\0" "TAI LE LETTER TONE-5\0" "TAI LE LETTER TONE-6\0" "TAI LE LETTER TSA\0" "TAI LE LETTER TSHA\0" "TAI LE LETTER U\0" "TAI LE LETTER UE\0" "TAI LE LETTER VA\0" "TAI LE LETTER XA\0" "TAI LE LETTER YA\0" "TAI THAM COMBINING CRYPTOGRAMMIC DOT\0" "TAI THAM CONSONANT SIGN BA\0" "TAI THAM CONSONANT SIGN FINAL NGA\0" "TAI THAM CONSONANT SIGN HIGH RATHA OR LOW PA\0" "TAI THAM CONSONANT SIGN LA TANG LAI\0" "TAI THAM CONSONANT SIGN LOW PA\0" "TAI THAM CONSONANT SIGN MA\0" "TAI THAM CONSONANT SIGN MEDIAL LA\0" "TAI THAM CONSONANT SIGN MEDIAL RA\0" "TAI THAM CONSONANT SIGN SA\0" "TAI THAM HORA DIGIT EIGHT\0" "TAI THAM HORA DIGIT FIVE\0" "TAI THAM HORA DIGIT FOUR\0" "TAI THAM HORA DIGIT NINE\0" "TAI THAM HORA DIGIT ONE\0" "TAI THAM HORA DIGIT SEVEN\0" "TAI THAM HORA DIGIT SIX\0" "TAI THAM HORA DIGIT THREE\0" "TAI THAM HORA DIGIT TWO\0" "TAI THAM HORA DIGIT ZERO\0" "TAI THAM LETTER A\0" "TAI THAM LETTER BA\0" "TAI THAM LETTER DA\0" "TAI THAM LETTER EE\0" "TAI THAM LETTER GREAT SA\0" "TAI THAM LETTER HIGH CA\0" "TAI THAM LETTER HIGH CHA\0" "TAI THAM LETTER HIGH FA\0" "TAI THAM LETTER HIGH HA\0" "TAI THAM LETTER HIGH KA\0" "TAI THAM LETTER HIGH KHA\0" "TAI THAM LETTER HIGH KXA\0" "TAI THAM LETTER HIGH PA\0" "TAI THAM LETTER HIGH PHA\0" "TAI THAM LETTER HIGH RATHA\0" "TAI THAM LETTER HIGH SA\0" "TAI THAM LETTER HIGH SHA\0" "TAI THAM LETTER HIGH SSA\0" "TAI THAM LETTER HIGH TA\0" "TAI THAM LETTER HIGH THA\0" "TAI THAM LETTER HIGH YA\0" "TAI THAM LETTER I\0" "TAI THAM LETTER II\0" "TAI THAM LETTER LA\0" "TAI THAM LETTER LAE\0" "TAI THAM LETTER LLA\0" "TAI THAM LETTER LOW CA\0" "TAI THAM LETTER LOW CHA\0" "TAI THAM LETTER LOW FA\0" "TAI THAM LETTER LOW HA\0" "TAI THAM LETTER LOW KA\0" "TAI THAM LETTER LOW KHA\0" "TAI THAM LETTER LOW KXA\0" "TAI THAM LETTER LOW PA\0" "TAI THAM LETTER LOW PHA\0" "TAI THAM LETTER LOW RATHA\0" "TAI THAM LETTER LOW SA\0" "TAI THAM LETTER LOW TA\0" "TAI THAM LETTER LOW THA\0" "TAI THAM LETTER LOW YA\0" "TAI THAM LETTER LUE\0" "TAI THAM LETTER MA\0" "TAI THAM LETTER NA\0" "TAI THAM LETTER NGA\0" "TAI THAM LETTER NYA\0" "TAI THAM LETTER OO\0" "TAI THAM LETTER RA\0" "TAI THAM LETTER RANA\0" "TAI THAM LETTER RATA\0" "TAI THAM LETTER RUE\0" "TAI THAM LETTER U\0" "TAI THAM LETTER UU\0" "TAI THAM LETTER WA\0" "TAI THAM SIGN CAANG\0" "TAI THAM SIGN DOKMAI\0" "TAI THAM SIGN HANG\0" "TAI THAM SIGN HOY\0" "TAI THAM SIGN KAAN\0" "TAI THAM SIGN KAANKUU\0" "TAI THAM SIGN KEOW\0" "TAI THAM SIGN KHUEN TONE-3\0" "TAI THAM SIGN KHUEN TONE-4\0" "TAI THAM SIGN KHUEN TONE-5\0" "TAI THAM SIGN KHUEN-LUE KARAN\0" "TAI THAM SIGN MAI KANG\0" "TAI THAM SIGN MAI KANG LAI\0" "TAI THAM SIGN MAI SAM\0" "TAI THAM SIGN MAI YAMOK\0" "TAI THAM SIGN RA HAAM\0" "TAI THAM SIGN REVERSED ROTATED RANA\0" "TAI THAM SIGN SAKOT\0" "TAI THAM SIGN SATKAAN\0" "TAI THAM SIGN SATKAANKUU\0" "TAI THAM SIGN SAWAN\0" "TAI THAM SIGN TONE-1\0" "TAI THAM SIGN TONE-2\0" "TAI THAM SIGN WIANG\0" "TAI THAM SIGN WIANGWAAK\0" "TAI THAM THAM DIGIT EIGHT\0" "TAI THAM THAM DIGIT FIVE\0" "TAI THAM THAM DIGIT FOUR\0" "TAI THAM THAM DIGIT NINE\0" "TAI THAM THAM DIGIT ONE\0" "TAI THAM THAM DIGIT SEVEN\0" "TAI THAM THAM DIGIT SIX\0" "TAI THAM THAM DIGIT THREE\0" "TAI THAM THAM DIGIT TWO\0" "TAI THAM THAM DIGIT ZERO\0" "TAI THAM VOWEL SIGN A\0" "TAI THAM VOWEL SIGN AA\0" "TAI THAM VOWEL SIGN AE\0" "TAI THAM VOWEL SIGN AI\0" "TAI THAM VOWEL SIGN E\0" "TAI THAM VOWEL SIGN I\0" "TAI THAM VOWEL SIGN II\0" "TAI THAM VOWEL SIGN MAI SAT\0" "TAI THAM VOWEL SIGN O\0" "TAI THAM VOWEL SIGN OA ABOVE\0" "TAI THAM VOWEL SIGN OA BELOW\0" "TAI THAM VOWEL SIGN OO\0" "TAI THAM VOWEL SIGN OY\0" "TAI THAM VOWEL SIGN TALL AA\0" "TAI THAM VOWEL SIGN THAM AI\0" "TAI THAM VOWEL SIGN U\0" "TAI THAM VOWEL SIGN UE\0" "TAI THAM VOWEL SIGN UU\0" "TAI THAM VOWEL SIGN UUE\0" "TAI VIET LETTER HIGH BO\0" "TAI VIET LETTER HIGH CHO\0" "TAI VIET LETTER HIGH CO\0" "TAI VIET LETTER HIGH DO\0" "TAI VIET LETTER HIGH FO\0" "TAI VIET LETTER HIGH GO\0" "TAI VIET LETTER HIGH HO\0" "TAI VIET LETTER HIGH KHHO\0" "TAI VIET LETTER HIGH KHO\0" "TAI VIET LETTER HIGH KO\0" "TAI VIET LETTER HIGH LO\0" "TAI VIET LETTER HIGH MO\0" "TAI VIET LETTER HIGH NGO\0" "TAI VIET LETTER HIGH NO\0" "TAI VIET LETTER HIGH NYO\0" "TAI VIET LETTER HIGH O\0" "TAI VIET LETTER HIGH PHO\0" "TAI VIET LETTER HIGH PO\0" "TAI VIET LETTER HIGH RO\0" "TAI VIET LETTER HIGH SO\0" "TAI VIET LETTER HIGH THO\0" "TAI VIET LETTER HIGH TO\0" "TAI VIET LETTER HIGH VO\0" "TAI VIET LETTER HIGH YO\0" "TAI VIET LETTER LOW BO\0" "TAI VIET LETTER LOW CHO\0" "TAI VIET LETTER LOW CO\0" "TAI VIET LETTER LOW DO\0" "TAI VIET LETTER LOW FO\0" "TAI VIET LETTER LOW GO\0" "TAI VIET LETTER LOW HO\0" "TAI VIET LETTER LOW KHHO\0" "TAI VIET LETTER LOW KHO\0" "TAI VIET LETTER LOW KO\0" "TAI VIET LETTER LOW LO\0" "TAI VIET LETTER LOW MO\0" "TAI VIET LETTER LOW NGO\0" "TAI VIET LETTER LOW NO\0" "TAI VIET LETTER LOW NYO\0" "TAI VIET LETTER LOW O\0" "TAI VIET LETTER LOW PHO\0" "TAI VIET LETTER LOW PO\0" "TAI VIET LETTER LOW RO\0" "TAI VIET LETTER LOW SO\0" "TAI VIET LETTER LOW THO\0" "TAI VIET LETTER LOW TO\0" "TAI VIET LETTER LOW VO\0" "TAI VIET LETTER LOW YO\0" "TAI VIET MAI KANG\0" "TAI VIET MAI KHIT\0" "TAI VIET SYMBOL HO HOI\0" "TAI VIET SYMBOL KOI KOI\0" "TAI VIET SYMBOL KON\0" "TAI VIET SYMBOL NUENG\0" "TAI VIET SYMBOL SAM\0" "TAI VIET TONE MAI EK\0" "TAI VIET TONE MAI NUENG\0" "TAI VIET TONE MAI SONG\0" "TAI VIET TONE MAI THO\0" "TAI VIET VOWEL AA\0" "TAI VIET VOWEL AM\0" "TAI VIET VOWEL AN\0" "TAI VIET VOWEL AUE\0" "TAI VIET VOWEL AY\0" "TAI VIET VOWEL E\0" "TAI VIET VOWEL I\0" "TAI VIET VOWEL IA\0" "TAI VIET VOWEL O\0" "TAI VIET VOWEL U\0" "TAI VIET VOWEL UA\0" "TAI VIET VOWEL UE\0" "TAI VIET VOWEL UEA\0" "TAMIL AS ABOVE SIGN\0" "TAMIL AU LENGTH MARK\0" "TAMIL CREDIT SIGN\0" "TAMIL DAY SIGN\0" "TAMIL DEBIT SIGN\0" "TAMIL DIGIT EIGHT\0" "TAMIL DIGIT FIVE\0" "TAMIL DIGIT FOUR\0" "TAMIL DIGIT NINE\0" "TAMIL DIGIT ONE\0" "TAMIL DIGIT SEVEN\0" "TAMIL DIGIT SIX\0" "TAMIL DIGIT THREE\0" "TAMIL DIGIT TWO\0" "TAMIL DIGIT ZERO\0" "TAMIL LETTER A\0" "TAMIL LETTER AA\0" "TAMIL LETTER AI\0" "TAMIL LETTER AU\0" "TAMIL LETTER CA\0" "TAMIL LETTER E\0" "TAMIL LETTER EE\0" "TAMIL LETTER HA\0" "TAMIL LETTER I\0" "TAMIL LETTER II\0" "TAMIL LETTER JA\0" "TAMIL LETTER KA\0" "TAMIL LETTER LA\0" "TAMIL LETTER LLA\0" "TAMIL LETTER LLLA\0" "TAMIL LETTER MA\0" "TAMIL LETTER NA\0" "TAMIL LETTER NGA\0" "TAMIL LETTER NNA\0" "TAMIL LETTER NNNA\0" "TAMIL LETTER NYA\0" "TAMIL LETTER O\0" "TAMIL LETTER OO\0" "TAMIL LETTER PA\0" "TAMIL LETTER RA\0" "TAMIL LETTER RRA\0" "TAMIL LETTER SA\0" "TAMIL LETTER SHA\0" "TAMIL LETTER SSA\0" "TAMIL LETTER TA\0" "TAMIL LETTER TTA\0" "TAMIL LETTER U\0" "TAMIL LETTER UU\0" "TAMIL LETTER VA\0" "TAMIL LETTER YA\0" "TAMIL MONTH SIGN\0" "TAMIL NUMBER ONE HUNDRED\0" "TAMIL NUMBER ONE THOUSAND\0" "TAMIL NUMBER SIGN\0" "TAMIL NUMBER TEN\0" "TAMIL OM\0" "TAMIL RUPEE SIGN\0" "TAMIL SIGN ANUSVARA\0" "TAMIL SIGN VIRAMA\0" "TAMIL SIGN VISARGA\0" "TAMIL VOWEL SIGN AA\0" "TAMIL VOWEL SIGN AI\0" "TAMIL VOWEL SIGN AU\0" "TAMIL VOWEL SIGN E\0" "TAMIL VOWEL SIGN EE\0" "TAMIL VOWEL SIGN I\0" "TAMIL VOWEL SIGN II\0" "TAMIL VOWEL SIGN O\0" "TAMIL VOWEL SIGN OO\0" "TAMIL VOWEL SIGN U\0" "TAMIL VOWEL SIGN UU\0" "TAMIL YEAR SIGN\0" "TANABATA TREE\0" "TANGERINE\0" "TAPE DRIVE\0" "TAURUS\0" "TAXI\0" "TEACUP WITHOUT HANDLE\0" "TEAR-OFF CALENDAR\0" "TEARDROP-BARBED RIGHTWARDS ARROW\0" "TEARDROP-SPOKED ASTERISK\0" "TELEPHONE LOCATION SIGN\0" "TELEPHONE RECEIVER\0" "TELEPHONE RECORDER\0" "TELEPHONE SIGN\0" "TELESCOPE\0" "TELEVISION\0" "TELUGU AI LENGTH MARK\0" "TELUGU DIGIT EIGHT\0" "TELUGU DIGIT FIVE\0" "TELUGU DIGIT FOUR\0" "TELUGU DIGIT NINE\0" "TELUGU DIGIT ONE\0" "TELUGU DIGIT SEVEN\0" "TELUGU DIGIT SIX\0" "TELUGU DIGIT THREE\0" "TELUGU DIGIT TWO\0" "TELUGU DIGIT ZERO\0" "TELUGU FRACTION DIGIT ONE FOR EVEN POWERS OF FOUR\0" "TELUGU FRACTION DIGIT ONE FOR ODD POWERS OF FOUR\0" "TELUGU FRACTION DIGIT THREE FOR EVEN POWERS OF FOUR\0" "TELUGU FRACTION DIGIT THREE FOR ODD POWERS OF FOUR\0" "TELUGU FRACTION DIGIT TWO FOR EVEN POWERS OF FOUR\0" "TELUGU FRACTION DIGIT TWO FOR ODD POWERS OF FOUR\0" "TELUGU FRACTION DIGIT ZERO FOR ODD POWERS OF FOUR\0" "TELUGU LENGTH MARK\0" "TELUGU LETTER A\0" "TELUGU LETTER AA\0" "TELUGU LETTER AI\0" "TELUGU LETTER AU\0" "TELUGU LETTER BA\0" "TELUGU LETTER BHA\0" "TELUGU LETTER CA\0" "TELUGU LETTER CHA\0" "TELUGU LETTER DA\0" "TELUGU LETTER DDA\0" "TELUGU LETTER DDHA\0" "TELUGU LETTER DHA\0" "TELUGU LETTER DZA\0" "TELUGU LETTER E\0" "TELUGU LETTER EE\0" "TELUGU LETTER GA\0" "TELUGU LETTER GHA\0" "TELUGU LETTER HA\0" "TELUGU LETTER I\0" "TELUGU LETTER II\0" "TELUGU LETTER JA\0" "TELUGU LETTER JHA\0" "TELUGU LETTER KA\0" "TELUGU LETTER KHA\0" "TELUGU LETTER LA\0" "TELUGU LETTER LLA\0" "TELUGU LETTER MA\0" "TELUGU LETTER NA\0" "TELUGU LETTER NGA\0" "TELUGU LETTER NNA\0" "TELUGU LETTER NYA\0" "TELUGU LETTER O\0" "TELUGU LETTER OO\0" "TELUGU LETTER PA\0" "TELUGU LETTER PHA\0" "TELUGU LETTER RA\0" "TELUGU LETTER RRA\0" "TELUGU LETTER SA\0" "TELUGU LETTER SHA\0" "TELUGU LETTER SSA\0" "TELUGU LETTER TA\0" "TELUGU LETTER THA\0" "TELUGU LETTER TSA\0" "TELUGU LETTER TTA\0" "TELUGU LETTER TTHA\0" "TELUGU LETTER U\0" "TELUGU LETTER UU\0" "TELUGU LETTER VA\0" "TELUGU LETTER VOCALIC L\0" "TELUGU LETTER VOCALIC LL\0" "TELUGU LETTER VOCALIC R\0" "TELUGU LETTER VOCALIC RR\0" "TELUGU LETTER YA\0" "TELUGU SIGN ANUSVARA\0" "TELUGU SIGN AVAGRAHA\0" "TELUGU SIGN CANDRABINDU\0" "TELUGU SIGN TUUMU\0" "TELUGU SIGN VIRAMA\0" "TELUGU SIGN VISARGA\0" "TELUGU VOWEL SIGN AA\0" "TELUGU VOWEL SIGN AI\0" "TELUGU VOWEL SIGN AU\0" "TELUGU VOWEL SIGN E\0" "TELUGU VOWEL SIGN EE\0" "TELUGU VOWEL SIGN I\0" "TELUGU VOWEL SIGN II\0" "TELUGU VOWEL SIGN O\0" "TELUGU VOWEL SIGN OO\0" "TELUGU VOWEL SIGN U\0" "TELUGU VOWEL SIGN UU\0" "TELUGU VOWEL SIGN VOCALIC L\0" "TELUGU VOWEL SIGN VOCALIC LL\0" "TELUGU VOWEL SIGN VOCALIC R\0" "TELUGU VOWEL SIGN VOCALIC RR\0" "TENGE SIGN\0" "TENNIS RACQUET AND BALL\0" "TENT\0" "TETRAGRAM FOR ACCUMULATION\0" "TETRAGRAM FOR ADVANCE\0" "TETRAGRAM FOR AGGRAVATION\0" "TETRAGRAM FOR ASCENT\0" "TETRAGRAM FOR BARRIER\0" "TETRAGRAM FOR BOLD RESOLUTION\0" "TETRAGRAM FOR BRANCHING OUT\0" "TETRAGRAM FOR CENTRE\0" "TETRAGRAM FOR CHANGE\0" "TETRAGRAM FOR CLOSED MOUTH\0" "TETRAGRAM FOR CLOSENESS\0" "TETRAGRAM FOR CLOSURE\0" "TETRAGRAM FOR COMPLETION\0" "TETRAGRAM FOR COMPLIANCE\0" "TETRAGRAM FOR CONSTANCY\0" "TETRAGRAM FOR CONTACT\0" "TETRAGRAM FOR CONTENTION\0" "TETRAGRAM FOR CONTRARIETY\0" "TETRAGRAM FOR DARKENING\0" "TETRAGRAM FOR DECISIVENESS\0" "TETRAGRAM FOR DEFECTIVENESS OR DISTORTION\0" "TETRAGRAM FOR DEPARTURE\0" "TETRAGRAM FOR DIFFICULTIES\0" "TETRAGRAM FOR DIMINISHMENT\0" "TETRAGRAM FOR DIMMING\0" "TETRAGRAM FOR DIVERGENCE\0" "TETRAGRAM FOR DOUBT\0" "TETRAGRAM FOR DUTIES\0" "TETRAGRAM FOR EASE\0" "TETRAGRAM FOR EMBELLISHMENT\0" "TETRAGRAM FOR ENCOUNTERS\0" "TETRAGRAM FOR ENDEAVOUR\0" "TETRAGRAM FOR ENLARGEMENT\0" "TETRAGRAM FOR ETERNITY\0" "TETRAGRAM FOR EXHAUSTION\0" "TETRAGRAM FOR FAILURE\0" "TETRAGRAM FOR FLIGHT\0" "TETRAGRAM FOR FOLLOWING\0" "TETRAGRAM FOR FOSTERING\0" "TETRAGRAM FOR FULL CIRCLE\0" "TETRAGRAM FOR FULLNESS\0" "TETRAGRAM FOR GATHERING\0" "TETRAGRAM FOR GATHERING IN\0" "TETRAGRAM FOR GOING TO MEET\0" "TETRAGRAM FOR GREATNESS\0" "TETRAGRAM FOR GUARDEDNESS\0" "TETRAGRAM FOR HARDNESS\0" "TETRAGRAM FOR HOLDING BACK\0" "TETRAGRAM FOR INCREASE\0" "TETRAGRAM FOR INNER\0" "TETRAGRAM FOR JOY\0" "TETRAGRAM FOR KEEPING SMALL\0" "TETRAGRAM FOR KINSHIP\0" "TETRAGRAM FOR LABOURING\0" "TETRAGRAM FOR LAW OR MODEL\0" "TETRAGRAM FOR LEGION\0" "TETRAGRAM FOR MASSING\0" "TETRAGRAM FOR MEASURE\0" "TETRAGRAM FOR MIRED\0" "TETRAGRAM FOR ON THE VERGE\0" "TETRAGRAM FOR OPPOSITION\0" "TETRAGRAM FOR PACKING\0" "TETRAGRAM FOR PATTERN\0" "TETRAGRAM FOR PENETRATION\0" "TETRAGRAM FOR PURITY\0" "TETRAGRAM FOR REACH\0" "TETRAGRAM FOR RELEASE\0" "TETRAGRAM FOR RESIDENCE\0" "TETRAGRAM FOR RESISTANCE\0" "TETRAGRAM FOR RESPONSE\0" "TETRAGRAM FOR RITUAL\0" "TETRAGRAM FOR SEVERANCE\0" "TETRAGRAM FOR SINKING\0" "TETRAGRAM FOR STOPPAGE\0" "TETRAGRAM FOR STOVE\0" "TETRAGRAM FOR STRENGTH\0" "TETRAGRAM FOR UNITY\0" "TETRAGRAM FOR VASTNESS OR WASTING\0" "TETRAGRAM FOR WAITING\0" "TETRAGRAM FOR WATCH\0" "TETRAGRAM FOR YOUTHFULNESS\0" "THAANA AABAAFILI\0" "THAANA ABAFILI\0" "THAANA EBEFILI\0" "THAANA EEBEEFILI\0" "THAANA EYBEYFILI\0" "THAANA IBIFILI\0" "THAANA LETTER AINU\0" "THAANA LETTER ALIFU\0" "THAANA LETTER BAA\0" "THAANA LETTER CHAVIYANI\0" "THAANA LETTER DAADHU\0" "THAANA LETTER DAVIYANI\0" "THAANA LETTER DHAALU\0" "THAANA LETTER FAAFU\0" "THAANA LETTER GAAFU\0" "THAANA LETTER GHAINU\0" "THAANA LETTER GNAVIYANI\0" "THAANA LETTER HAA\0" "THAANA LETTER HHAA\0" "THAANA LETTER JAVIYANI\0" "THAANA LETTER KAAFU\0" "THAANA LETTER KHAA\0" "THAANA LETTER LAAMU\0" "THAANA LETTER LHAVIYANI\0" "THAANA LETTER MEEMU\0" "THAANA LETTER NAA\0" "THAANA LETTER NOONU\0" "THAANA LETTER PAVIYANI\0" "THAANA LETTER QAAFU\0" "THAANA LETTER RAA\0" "THAANA LETTER SAADHU\0" "THAANA LETTER SEENU\0" "THAANA LETTER SHAVIYANI\0" "THAANA LETTER SHEENU\0" "THAANA LETTER TAVIYANI\0" "THAANA LETTER THAA\0" "THAANA LETTER THAALU\0" "THAANA LETTER TO\0" "THAANA LETTER TTAA\0" "THAANA LETTER VAAVU\0" "THAANA LETTER WAAVU\0" "THAANA LETTER YAA\0" "THAANA LETTER ZAA\0" "THAANA LETTER ZAVIYANI\0" "THAANA LETTER ZO\0" "THAANA OABOAFILI\0" "THAANA OBOFILI\0" "THAANA OOBOOFILI\0" "THAANA SUKUN\0" "THAANA UBUFILI\0" "THAI CHARACTER ANGKHANKHU\0" "THAI CHARACTER BO BAIMAI\0" "THAI CHARACTER CHO CHAN\0" "THAI CHARACTER CHO CHANG\0" "THAI CHARACTER CHO CHING\0" "THAI CHARACTER CHO CHOE\0" "THAI CHARACTER DO CHADA\0" "THAI CHARACTER DO DEK\0" "THAI CHARACTER FO FA\0" "THAI CHARACTER FO FAN\0" "THAI CHARACTER FONGMAN\0" "THAI CHARACTER HO HIP\0" "THAI CHARACTER HO NOKHUK\0" "THAI CHARACTER KHO KHAI\0" "THAI CHARACTER KHO KHON\0" "THAI CHARACTER KHO KHUAT\0" "THAI CHARACTER KHO KHWAI\0" "THAI CHARACTER KHO RAKHANG\0" "THAI CHARACTER KHOMUT\0" "THAI CHARACTER KO KAI\0" "THAI CHARACTER LAKKHANGYAO\0" "THAI CHARACTER LO CHULA\0" "THAI CHARACTER LO LING\0" "THAI CHARACTER LU\0" "THAI CHARACTER MAI CHATTAWA\0" "THAI CHARACTER MAI EK\0" "THAI CHARACTER MAI HAN-AKAT\0" "THAI CHARACTER MAI THO\0" "THAI CHARACTER MAI TRI\0" "THAI CHARACTER MAITAIKHU\0" "THAI CHARACTER MAIYAMOK\0" "THAI CHARACTER MO MA\0" "THAI CHARACTER NGO NGU\0" "THAI CHARACTER NIKHAHIT\0" "THAI CHARACTER NO NEN\0" "THAI CHARACTER NO NU\0" "THAI CHARACTER O ANG\0" "THAI CHARACTER PAIYANNOI\0" "THAI CHARACTER PHINTHU\0" "THAI CHARACTER PHO PHAN\0" "THAI CHARACTER PHO PHUNG\0" "THAI CHARACTER PHO SAMPHAO\0" "THAI CHARACTER PO PLA\0" "THAI CHARACTER RO RUA\0" "THAI CHARACTER RU\0" "THAI CHARACTER SARA A\0" "THAI CHARACTER SARA AA\0" "THAI CHARACTER SARA AE\0" "THAI CHARACTER SARA AI MAIMALAI\0" "THAI CHARACTER SARA AI MAIMUAN\0" "THAI CHARACTER SARA AM\0" "THAI CHARACTER SARA E\0" "THAI CHARACTER SARA I\0" "THAI CHARACTER SARA II\0" "THAI CHARACTER SARA O\0" "THAI CHARACTER SARA U\0" "THAI CHARACTER SARA UE\0" "THAI CHARACTER SARA UEE\0" "THAI CHARACTER SARA UU\0" "THAI CHARACTER SO RUSI\0" "THAI CHARACTER SO SALA\0" "THAI CHARACTER SO SO\0" "THAI CHARACTER SO SUA\0" "THAI CHARACTER THANTHAKHAT\0" "THAI CHARACTER THO NANGMONTHO\0" "THAI CHARACTER THO PHUTHAO\0" "THAI CHARACTER THO THAHAN\0" "THAI CHARACTER THO THAN\0" "THAI CHARACTER THO THONG\0" "THAI CHARACTER THO THUNG\0" "THAI CHARACTER TO PATAK\0" "THAI CHARACTER TO TAO\0" "THAI CHARACTER WO WAEN\0" "THAI CHARACTER YAMAKKAN\0" "THAI CHARACTER YO YAK\0" "THAI CHARACTER YO YING\0" "THAI CURRENCY SYMBOL BAHT\0" "THAI DIGIT EIGHT\0" "THAI DIGIT FIVE\0" "THAI DIGIT FOUR\0" "THAI DIGIT NINE\0" "THAI DIGIT ONE\0" "THAI DIGIT SEVEN\0" "THAI DIGIT SIX\0" "THAI DIGIT THREE\0" "THAI DIGIT TWO\0" "THAI DIGIT ZERO\0" "THERE DOES NOT EXIST\0" "THERE EXISTS\0" "THEREFORE\0" "THERMODYNAMIC\0" "THIN SPACE\0" "THOUGHT BALLOON\0" "THREE CONSECUTIVE EQUALS SIGNS\0" "THREE DIMENSIONAL ANGLE\0" "THREE DOT PUNCTUATION\0" "THREE LEFTWARDS ARROWS\0" "THREE LINES CONVERGING LEFT\0" "THREE LINES CONVERGING RIGHT\0" "THREE RIGHTWARDS ARROWS\0" "THREE-D BOTTOM-LIGHTED RIGHTWARDS ARROWHEAD\0" "THREE-D TOP-LIGHTED RIGHTWARDS ARROWHEAD\0" "THREE-PER-EM SPACE\0" "THUMBS DOWN SIGN\0" "THUMBS UP SIGN\0" "THUNDER CLOUD AND RAIN\0" "THUNDERSTORM\0" "TIBETAN ASTROLOGICAL SIGN -KHYUD PA\0" "TIBETAN ASTROLOGICAL SIGN SDONG TSHUGS\0" "TIBETAN ASTROLOGICAL SIGN SGRA GCAN -CHAR RTAGS\0" "TIBETAN CANTILLATION SIGN CANG TE-U\0" "TIBETAN CANTILLATION SIGN HEAVY BEAT\0" "TIBETAN CANTILLATION SIGN LIGHT BEAT\0" "TIBETAN CANTILLATION SIGN SBUB -CHAL\0" "TIBETAN DIGIT EIGHT\0" "TIBETAN DIGIT FIVE\0" "TIBETAN DIGIT FOUR\0" "TIBETAN DIGIT HALF EIGHT\0" "TIBETAN DIGIT HALF FIVE\0" "TIBETAN DIGIT HALF FOUR\0" "TIBETAN DIGIT HALF NINE\0" "TIBETAN DIGIT HALF ONE\0" "TIBETAN DIGIT HALF SEVEN\0" "TIBETAN DIGIT HALF SIX\0" "TIBETAN DIGIT HALF THREE\0" "TIBETAN DIGIT HALF TWO\0" "TIBETAN DIGIT HALF ZERO\0" "TIBETAN DIGIT NINE\0" "TIBETAN DIGIT ONE\0" "TIBETAN DIGIT SEVEN\0" "TIBETAN DIGIT SIX\0" "TIBETAN DIGIT THREE\0" "TIBETAN DIGIT TWO\0" "TIBETAN DIGIT ZERO\0" "TIBETAN KU RU KHA\0" "TIBETAN KU RU KHA BZHI MIG CAN\0" "TIBETAN LETTER -A\0" "TIBETAN LETTER A\0" "TIBETAN LETTER BA\0" "TIBETAN LETTER BHA\0" "TIBETAN LETTER CA\0" "TIBETAN LETTER CHA\0" "TIBETAN LETTER DA\0" "TIBETAN LETTER DDA\0" "TIBETAN LETTER DDHA\0" "TIBETAN LETTER DHA\0" "TIBETAN LETTER DZA\0" "TIBETAN LETTER DZHA\0" "TIBETAN LETTER FIXED-FORM RA\0" "TIBETAN LETTER GA\0" "TIBETAN LETTER GHA\0" "TIBETAN LETTER HA\0" "TIBETAN LETTER JA\0" "TIBETAN LETTER KA\0" "TIBETAN LETTER KHA\0" "TIBETAN LETTER KKA\0" "TIBETAN LETTER KSSA\0" "TIBETAN LETTER LA\0" "TIBETAN LETTER MA\0" "TIBETAN LETTER NA\0" "TIBETAN LETTER NGA\0" "TIBETAN LETTER NNA\0" "TIBETAN LETTER NYA\0" "TIBETAN LETTER PA\0" "TIBETAN LETTER PHA\0" "TIBETAN LETTER RA\0" "TIBETAN LETTER RRA\0" "TIBETAN LETTER SA\0" "TIBETAN LETTER SHA\0" "TIBETAN LETTER SSA\0" "TIBETAN LETTER TA\0" "TIBETAN LETTER THA\0" "TIBETAN LETTER TSA\0" "TIBETAN LETTER TSHA\0" "TIBETAN LETTER TTA\0" "TIBETAN LETTER TTHA\0" "TIBETAN LETTER WA\0" "TIBETAN LETTER YA\0" "TIBETAN LETTER ZA\0" "TIBETAN LETTER ZHA\0" "TIBETAN LOGOTYPE SIGN CHAD RTAGS\0" "TIBETAN LOGOTYPE SIGN LHAG RTAGS\0" "TIBETAN MARK ANG KHANG GYAS\0" "TIBETAN MARK ANG KHANG GYON\0" "TIBETAN MARK BKA- SHOG YIG MGO\0" "TIBETAN MARK BSDUS RTAGS\0" "TIBETAN MARK BSKA- SHOG GI MGO RGYAN\0" "TIBETAN MARK BSKUR YIG MGO\0" "TIBETAN MARK CARET -DZUD RTAGS BZHI MIG CAN\0" "TIBETAN MARK CARET -DZUD RTAGS ME LONG CAN\0" "TIBETAN MARK CARET YIG MGO PHUR SHAD MA\0" "TIBETAN MARK CHE MGO\0" "TIBETAN MARK CLOSING BRDA RNYING YIG MGO SGAB MA\0" "TIBETAN MARK CLOSING YIG MGO SGAB MA\0" "TIBETAN MARK DELIMITER TSHEG BSTAR\0" "TIBETAN MARK GTER TSHEG\0" "TIBETAN MARK GTER YIG MGO -UM GTER TSHEG MA\0" "TIBETAN MARK GTER YIG MGO -UM RNAM BCAD MA\0" "TIBETAN MARK GTER YIG MGO TRUNCATED A\0" "TIBETAN MARK GUG RTAGS GYAS\0" "TIBETAN MARK GUG RTAGS GYON\0" "TIBETAN MARK HALANTA\0" "TIBETAN MARK INITIAL BRDA RNYING YIG MGO MDUN MA\0" "TIBETAN MARK INITIAL YIG MGO MDUN MA\0" "TIBETAN MARK INTERSYLLABIC TSHEG\0" "TIBETAN MARK LEADING MCHAN RTAGS\0" "TIBETAN MARK MNYAM YIG GI MGO RGYAN\0" "TIBETAN MARK NGAS BZUNG NYI ZLA\0" "TIBETAN MARK NGAS BZUNG SGOR RTAGS\0" "TIBETAN MARK NYIS SHAD\0" "TIBETAN MARK NYIS TSHEG\0" "TIBETAN MARK NYIS TSHEG SHAD\0" "TIBETAN MARK PALUTA\0" "TIBETAN MARK RGYA GRAM SHAD\0" "TIBETAN MARK RIN CHEN SPUNGS SHAD\0" "TIBETAN MARK SBRUL SHAD\0" "TIBETAN MARK SHAD\0" "TIBETAN MARK TRAILING MCHAN RTAGS\0" "TIBETAN MARK TSA -PHRU\0" "TIBETAN MARK TSHEG SHAD\0" "TIBETAN MARK YIG MGO TSHEG SHAD MA\0" "TIBETAN SIGN GRU CAN RGYINGS\0" "TIBETAN SIGN GRU MED RGYINGS\0" "TIBETAN SIGN INVERTED MCHU CAN\0" "TIBETAN SIGN LCE TSA CAN\0" "TIBETAN SIGN LCI RTAGS\0" "TIBETAN SIGN MAR TSHES\0" "TIBETAN SIGN MCHU CAN\0" "TIBETAN SIGN NYI ZLA NAA DA\0" "TIBETAN SIGN RDEL DKAR GCIG\0" "TIBETAN SIGN RDEL DKAR GNYIS\0" "TIBETAN SIGN RDEL DKAR GSUM\0" "TIBETAN SIGN RDEL DKAR RDEL NAG\0" "TIBETAN SIGN RDEL NAG GCIG\0" "TIBETAN SIGN RDEL NAG GNYIS\0" "TIBETAN SIGN RDEL NAG GSUM\0" "TIBETAN SIGN RDEL NAG RDEL DKAR\0" "TIBETAN SIGN RJES SU NGA RO\0" "TIBETAN SIGN RNAM BCAD\0" "TIBETAN SIGN SNA LDAN\0" "TIBETAN SIGN YANG RTAGS\0" "TIBETAN SIGN YAR TSHES\0" "TIBETAN SUBJOINED LETTER -A\0" "TIBETAN SUBJOINED LETTER A\0" "TIBETAN SUBJOINED LETTER BA\0" "TIBETAN SUBJOINED LETTER BHA\0" "TIBETAN SUBJOINED LETTER CA\0" "TIBETAN SUBJOINED LETTER CHA\0" "TIBETAN SUBJOINED LETTER DA\0" "TIBETAN SUBJOINED LETTER DDA\0" "TIBETAN SUBJOINED LETTER DDHA\0" "TIBETAN SUBJOINED LETTER DHA\0" "TIBETAN SUBJOINED LETTER DZA\0" "TIBETAN SUBJOINED LETTER DZHA\0" "TIBETAN SUBJOINED LETTER FIXED-FORM RA\0" "TIBETAN SUBJOINED LETTER FIXED-FORM WA\0" "TIBETAN SUBJOINED LETTER FIXED-FORM YA\0" "TIBETAN SUBJOINED LETTER GA\0" "TIBETAN SUBJOINED LETTER GHA\0" "TIBETAN SUBJOINED LETTER HA\0" "TIBETAN SUBJOINED LETTER JA\0" "TIBETAN SUBJOINED LETTER KA\0" "TIBETAN SUBJOINED LETTER KHA\0" "TIBETAN SUBJOINED LETTER KSSA\0" "TIBETAN SUBJOINED LETTER LA\0" "TIBETAN SUBJOINED LETTER MA\0" "TIBETAN SUBJOINED LETTER NA\0" "TIBETAN SUBJOINED LETTER NGA\0" "TIBETAN SUBJOINED LETTER NNA\0" "TIBETAN SUBJOINED LETTER NYA\0" "TIBETAN SUBJOINED LETTER PA\0" "TIBETAN SUBJOINED LETTER PHA\0" "TIBETAN SUBJOINED LETTER RA\0" "TIBETAN SUBJOINED LETTER SA\0" "TIBETAN SUBJOINED LETTER SHA\0" "TIBETAN SUBJOINED LETTER SSA\0" "TIBETAN SUBJOINED LETTER TA\0" "TIBETAN SUBJOINED LETTER THA\0" "TIBETAN SUBJOINED LETTER TSA\0" "TIBETAN SUBJOINED LETTER TSHA\0" "TIBETAN SUBJOINED LETTER TTA\0" "TIBETAN SUBJOINED LETTER TTHA\0" "TIBETAN SUBJOINED LETTER WA\0" "TIBETAN SUBJOINED LETTER YA\0" "TIBETAN SUBJOINED LETTER ZA\0" "TIBETAN SUBJOINED LETTER ZHA\0" "TIBETAN SUBJOINED SIGN INVERTED MCHU CAN\0" "TIBETAN SUBJOINED SIGN LCE TSA CAN\0" "TIBETAN SUBJOINED SIGN MCHU CAN\0" "TIBETAN SYLLABLE OM\0" "TIBETAN SYMBOL DRIL BU\0" "TIBETAN SYMBOL NOR BU\0" "TIBETAN SYMBOL NOR BU BZHI -KHYIL\0" "TIBETAN SYMBOL NOR BU GSUM -KHYIL\0" "TIBETAN SYMBOL NOR BU NYIS -KHYIL\0" "TIBETAN SYMBOL PADMA GDAN\0" "TIBETAN SYMBOL PHUR PA\0" "TIBETAN SYMBOL RDO RJE\0" "TIBETAN SYMBOL RDO RJE RGYA GRAM\0" "TIBETAN VOWEL SIGN AA\0" "TIBETAN VOWEL SIGN E\0" "TIBETAN VOWEL SIGN EE\0" "TIBETAN VOWEL SIGN I\0" "TIBETAN VOWEL SIGN II\0" "TIBETAN VOWEL SIGN O\0" "TIBETAN VOWEL SIGN OO\0" "TIBETAN VOWEL SIGN REVERSED I\0" "TIBETAN VOWEL SIGN REVERSED II\0" "TIBETAN VOWEL SIGN U\0" "TIBETAN VOWEL SIGN UU\0" "TIBETAN VOWEL SIGN VOCALIC L\0" "TIBETAN VOWEL SIGN VOCALIC LL\0" "TIBETAN VOWEL SIGN VOCALIC R\0" "TIBETAN VOWEL SIGN VOCALIC RR\0" "TICKET\0" "TIE OVER INFINITY\0" "TIFINAGH CONSONANT JOINER\0" "TIFINAGH LETTER AHAGGAR YAZH\0" "TIFINAGH LETTER AYER YAGH\0" "TIFINAGH LETTER BERBER ACADEMY YAH\0" "TIFINAGH LETTER BERBER ACADEMY YAJ\0" "TIFINAGH LETTER TAWELLEMET YAZ\0" "TIFINAGH LETTER TUAREG YAGH\0" "TIFINAGH LETTER TUAREG YAGN\0" "TIFINAGH LETTER TUAREG YAH\0" "TIFINAGH LETTER TUAREG YAK\0" "TIFINAGH LETTER TUAREG YAKH\0" "TIFINAGH LETTER TUAREG YANG\0" "TIFINAGH LETTER TUAREG YAQ\0" "TIFINAGH LETTER TUAREG YAZH\0" "TIFINAGH LETTER YA\0" "TIFINAGH LETTER YAA\0" "TIFINAGH LETTER YAB\0" "TIFINAGH LETTER YABH\0" "TIFINAGH LETTER YACH\0" "TIFINAGH LETTER YAD\0" "TIFINAGH LETTER YADD\0" "TIFINAGH LETTER YADDH\0" "TIFINAGH LETTER YADH\0" "TIFINAGH LETTER YAF\0" "TIFINAGH LETTER YAG\0" "TIFINAGH LETTER YAGH\0" "TIFINAGH LETTER YAGHH\0" "TIFINAGH LETTER YAH\0" "TIFINAGH LETTER YAHH\0" "TIFINAGH LETTER YAJ\0" "TIFINAGH LETTER YAK\0" "TIFINAGH LETTER YAKH\0" "TIFINAGH LETTER YAKHH\0" "TIFINAGH LETTER YAL\0" "TIFINAGH LETTER YAM\0" "TIFINAGH LETTER YAN\0" "TIFINAGH LETTER YAP\0" "TIFINAGH LETTER YAQ\0" "TIFINAGH LETTER YAR\0" "TIFINAGH LETTER YARR\0" "TIFINAGH LETTER YAS\0" "TIFINAGH LETTER YASH\0" "TIFINAGH LETTER YASS\0" "TIFINAGH LETTER YAT\0" "TIFINAGH LETTER YATH\0" "TIFINAGH LETTER YATT\0" "TIFINAGH LETTER YAV\0" "TIFINAGH LETTER YAW\0" "TIFINAGH LETTER YAY\0" "TIFINAGH LETTER YAZ\0" "TIFINAGH LETTER YAZH\0" "TIFINAGH LETTER YAZZ\0" "TIFINAGH LETTER YEY\0" "TIFINAGH LETTER YI\0" "TIFINAGH LETTER YU\0" "TIFINAGH MODIFIER LETTER LABIALIZATION MARK\0" "TIFINAGH SEPARATOR MARK\0" "TIGER\0" "TIGER FACE\0" "TIGHT TRIFOLIATE SNOWFLAKE\0" "TILDE\0" "TILDE OPERATOR\0" "TILDE OPERATOR ABOVE LEFTWARDS ARROW\0" "TILDE OPERATOR ABOVE RIGHTWARDS ARROW\0" "TILDE OPERATOR WITH DOT ABOVE\0" "TILDE OPERATOR WITH RISING DOTS\0" "TILDE WITH DOT ABOVE\0" "TILDE WITH DOT BELOW\0" "TILDE WITH RING ABOVE\0" "TIMER CLOCK\0" "TIMES WITH LEFT HALF BLACK\0" "TIMES WITH RIGHT HALF BLACK\0" "TINY\0" "TINY TWO DOTS OVER ONE DOT PUNCTUATION\0" "TIRED FACE\0" "TIRONIAN SIGN ET\0" "TOILET\0" "TOKYO TOWER\0" "TOMATO\0" "TONGUE\0" "TOP ARC ANTICLOCKWISE ARROW\0" "TOP ARC ANTICLOCKWISE ARROW WITH PLUS\0" "TOP ARC CLOCKWISE ARROW WITH MINUS\0" "TOP CURLY BRACKET\0" "TOP HALF INTEGRAL\0" "TOP HAT\0" "TOP LEFT CORNER\0" "TOP LEFT CROP\0" "TOP LEFT HALF BRACKET\0" "TOP PARENTHESIS\0" "TOP RIGHT CORNER\0" "TOP RIGHT CROP\0" "TOP RIGHT HALF BRACKET\0" "TOP SQUARE BRACKET\0" "TOP TORTOISE SHELL BRACKET\0" "TOP WITH UPWARDS ARROW ABOVE\0" "TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-4E09\0" "TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-4E8C\0" "TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-52DD\0" "TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-5B89\0" "TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-6253\0" "TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-6557\0" "TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-672C\0" "TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-70B9\0" "TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-76D7\0" "TORTOISE SHELL BRACKETED LATIN CAPITAL LETTER S\0" "TOTAL RUNOUT\0" "TRACTOR\0" "TRADE MARK SIGN\0" "TRAIN\0" "TRAM\0" "TRAM CAR\0" "TRANSVERSAL INTERSECTION\0" "TRIANGLE WITH DOT ABOVE\0" "TRIANGLE WITH SERIFS AT BOTTOM\0" "TRIANGLE WITH UNDERBAR\0" "TRIANGLE-HEADED RIGHTWARDS ARROW\0" "TRIANGULAR BULLET\0" "TRIANGULAR FLAG ON POST\0" "TRIANGULAR RULER\0" "TRICOLON\0" "TRIDENT EMBLEM\0" "TRIGRAM FOR EARTH\0" "TRIGRAM FOR FIRE\0" "TRIGRAM FOR HEAVEN\0" "TRIGRAM FOR LAKE\0" "TRIGRAM FOR MOUNTAIN\0" "TRIGRAM FOR THUNDER\0" "TRIGRAM FOR WATER\0" "TRIGRAM FOR WIND\0" "TRIPLE COLON OPERATOR\0" "TRIPLE HORIZONTAL BAR WITH DOUBLE VERTICAL STROKE\0" "TRIPLE HORIZONTAL BAR WITH TRIPLE VERTICAL STROKE\0" "TRIPLE INTEGRAL\0" "TRIPLE NESTED GREATER-THAN\0" "TRIPLE NESTED LESS-THAN\0" "TRIPLE PLUS\0" "TRIPLE PRIME\0" "TRIPLE SOLIDUS BINARY RELATION\0" "TRIPLE TILDE\0" "TRIPLE VERTICAL BAR BINARY RELATION\0" "TRIPLE VERTICAL BAR DELIMITER\0" "TRIPLE VERTICAL BAR RIGHT TURNSTILE\0" "TRIPLE VERTICAL BAR WITH HORIZONTAL STROKE\0" "TROLLEYBUS\0" "TROPHY\0" "TROPICAL DRINK\0" "TROPICAL FISH\0" "TRUE\0" "TRUMPET\0" "TUGRIK SIGN\0" "TULIP\0" "TURNED AMPERSAND\0" "TURNED ANGLE\0" "TURNED BLACK SHOGI PIECE\0" "TURNED CAPITAL F\0" "TURNED GREEK SMALL LETTER IOTA\0" "TURNED NOT SIGN\0" "TURNED SANS-SERIF CAPITAL G\0" "TURNED SANS-SERIF CAPITAL L\0" "TURNED SANS-SERIF CAPITAL Y\0" "TURNED SMALL F\0" "TURNED WHITE SHOGI PIECE\0" "TURTLE\0" "TWELVE POINTED BLACK STAR\0" "TWISTED RIGHTWARDS ARROWS\0" "TWO ASTERISKS ALIGNED VERTICALLY\0" "TWO CONSECUTIVE EQUALS SIGNS\0" "TWO DOT LEADER\0" "TWO DOT PUNCTUATION\0" "TWO DOTS OVER ONE DOT PUNCTUATION\0" "TWO HEARTS\0" "TWO INTERSECTING LOGICAL AND\0" "TWO INTERSECTING LOGICAL OR\0" "TWO JOINED SQUARES\0" "TWO LOGICAL AND OPERATOR\0" "TWO LOGICAL OR OPERATOR\0" "TWO MEN HOLDING HANDS\0" "TWO WOMEN HOLDING HANDS\0" "UGARITIC LETTER AIN\0" "UGARITIC LETTER ALPA\0" "UGARITIC LETTER BETA\0" "UGARITIC LETTER DELTA\0" "UGARITIC LETTER DHAL\0" "UGARITIC LETTER GAMLA\0" "UGARITIC LETTER GHAIN\0" "UGARITIC LETTER HO\0" "UGARITIC LETTER HOTA\0" "UGARITIC LETTER I\0" "UGARITIC LETTER KAF\0" "UGARITIC LETTER KHA\0" "UGARITIC LETTER LAMDA\0" "UGARITIC LETTER MEM\0" "UGARITIC LETTER NUN\0" "UGARITIC LETTER PU\0" "UGARITIC LETTER QOPA\0" "UGARITIC LETTER RASHA\0" "UGARITIC LETTER SADE\0" "UGARITIC LETTER SAMKA\0" "UGARITIC LETTER SHIN\0" "UGARITIC LETTER SSU\0" "UGARITIC LETTER TET\0" "UGARITIC LETTER THANNA\0" "UGARITIC LETTER TO\0" "UGARITIC LETTER U\0" "UGARITIC LETTER WO\0" "UGARITIC LETTER YOD\0" "UGARITIC LETTER ZETA\0" "UGARITIC LETTER ZU\0" "UGARITIC WORD DIVIDER\0" "UMBRELLA\0" "UMBRELLA ON GROUND\0" "UMBRELLA WITH RAIN DROPS\0" "UNAMUSED FACE\0" "UNDERTIE\0" "UNDO SYMBOL\0" "UNION\0" "UNION ABOVE BAR ABOVE INTERSECTION\0" "UNION ABOVE INTERSECTION\0" "UNION BESIDE AND JOINED WITH UNION\0" "UNION WITH LOGICAL OR\0" "UNION WITH MINUS SIGN\0" "UNION WITH OVERBAR\0" "UNIVERSAL RECYCLING SYMBOL\0" "UNMARRIED PARTNERSHIP SYMBOL\0" "UP ARROW THROUGH CIRCLE\0" "UP ARROWHEAD\0" "UP ARROWHEAD BETWEEN TWO HORIZONTAL BARS\0" "UP BARB LEFT DOWN BARB LEFT HARPOON\0" "UP BARB LEFT DOWN BARB RIGHT HARPOON\0" "UP BARB RIGHT DOWN BARB LEFT HARPOON\0" "UP BARB RIGHT DOWN BARB RIGHT HARPOON\0" "UP DOWN ARROW\0" "UP DOWN ARROW WITH BASE\0" "UP DOWN BLACK ARROW\0" "UP DOWN DOUBLE ARROW\0" "UP DOWN WHITE ARROW\0" "UP FISH TAIL\0" "UP RIGHT DIAGONAL ELLIPSIS\0" "UP TACK\0" "UP TACK WITH CIRCLE ABOVE\0" "UP-POINTING RED TRIANGLE\0" "UP-POINTING SMALL RED TRIANGLE\0" "UP-POINTING TRIANGLE WITH LEFT HALF BLACK\0" "UP-POINTING TRIANGLE WITH RIGHT HALF BLACK\0" "UPPER BLADE SCISSORS\0" "UPPER HALF BLOCK\0" "UPPER HALF CIRCLE\0" "UPPER HALF INVERSE WHITE CIRCLE\0" "UPPER LEFT CORNER WITH DOT\0" "UPPER LEFT OR LOWER RIGHT CURLY BRACKET SECTION\0" "UPPER LEFT QUADRANT CIRCULAR ARC\0" "UPPER LEFT TRIANGLE\0" "UPPER ONE EIGHTH BLOCK\0" "UPPER RIGHT DROP-SHADOWED WHITE SQUARE\0" "UPPER RIGHT OR LOWER LEFT CURLY BRACKET SECTION\0" "UPPER RIGHT PENCIL\0" "UPPER RIGHT QUADRANT CIRCULAR ARC\0" "UPPER RIGHT SHADOWED WHITE SQUARE\0" "UPPER RIGHT TRIANGLE\0" "UPWARDS ANCORA\0" "UPWARDS ARROW\0" "UPWARDS ARROW FROM BAR\0" "UPWARDS ARROW LEFTWARDS OF DOWNWARDS ARROW\0" "UPWARDS ARROW TO BAR\0" "UPWARDS ARROW WITH DOUBLE STROKE\0" "UPWARDS ARROW WITH HORIZONTAL STROKE\0" "UPWARDS ARROW WITH TIP LEFTWARDS\0" "UPWARDS ARROW WITH TIP RIGHTWARDS\0" "UPWARDS BLACK ARROW\0" "UPWARDS DASHED ARROW\0" "UPWARDS DOUBLE ARROW\0" "UPWARDS HARPOON WITH BARB LEFT BESIDE DOWNWARDS HARPOON WITH BARB RIGHT\0" "UPWARDS HARPOON WITH BARB LEFT BESIDE UPWARDS HARPOON WITH BARB RIGHT\0" "UPWARDS HARPOON WITH BARB LEFT FROM BAR\0" "UPWARDS HARPOON WITH BARB LEFT TO BAR\0" "UPWARDS HARPOON WITH BARB LEFTWARDS\0" "UPWARDS HARPOON WITH BARB RIGHT FROM BAR\0" "UPWARDS HARPOON WITH BARB RIGHT TO BAR\0" "UPWARDS HARPOON WITH BARB RIGHTWARDS\0" "UPWARDS PAIRED ARROWS\0" "UPWARDS QUADRUPLE ARROW\0" "UPWARDS TRIPLE ARROW\0" "UPWARDS TWO HEADED ARROW\0" "UPWARDS TWO-HEADED ARROW FROM SMALL CIRCLE\0" "UPWARDS WHITE ARROW\0" "UPWARDS WHITE ARROW FROM BAR\0" "UPWARDS WHITE ARROW ON PEDESTAL\0" "UPWARDS WHITE ARROW ON PEDESTAL WITH HORIZONTAL BAR\0" "UPWARDS WHITE ARROW ON PEDESTAL WITH VERTICAL BAR\0" "UPWARDS WHITE DOUBLE ARROW\0" "UPWARDS WHITE DOUBLE ARROW ON PEDESTAL\0" "URANUS\0" "VAI COMMA\0" "VAI DIGIT EIGHT\0" "VAI DIGIT FIVE\0" "VAI DIGIT FOUR\0" "VAI DIGIT NINE\0" "VAI DIGIT ONE\0" "VAI DIGIT SEVEN\0" "VAI DIGIT SIX\0" "VAI DIGIT THREE\0" "VAI DIGIT TWO\0" "VAI DIGIT ZERO\0" "VAI FULL STOP\0" "VAI QUESTION MARK\0" "VAI SYLLABLE A\0" "VAI SYLLABLE AN\0" "VAI SYLLABLE BA\0" "VAI SYLLABLE BE\0" "VAI SYLLABLE BEE\0" "VAI SYLLABLE BHA\0" "VAI SYLLABLE BHE\0" "VAI SYLLABLE BHEE\0" "VAI SYLLABLE BHI\0" "VAI SYLLABLE BHO\0" "VAI SYLLABLE BHOO\0" "VAI SYLLABLE BHU\0" "VAI SYLLABLE BI\0" "VAI SYLLABLE BO\0" "VAI SYLLABLE BOO\0" "VAI SYLLABLE BU\0" "VAI SYLLABLE CA\0" "VAI SYLLABLE CE\0" "VAI SYLLABLE CEE\0" "VAI SYLLABLE CI\0" "VAI SYLLABLE CO\0" "VAI SYLLABLE COO\0" "VAI SYLLABLE CU\0" "VAI SYLLABLE DA\0" "VAI SYLLABLE DE\0" "VAI SYLLABLE DEE\0" "VAI SYLLABLE DHA\0" "VAI SYLLABLE DHE\0" "VAI SYLLABLE DHEE\0" "VAI SYLLABLE DHHA\0" "VAI SYLLABLE DHHE\0" "VAI SYLLABLE DHHEE\0" "VAI SYLLABLE DHHI\0" "VAI SYLLABLE DHHO\0" "VAI SYLLABLE DHHOO\0" "VAI SYLLABLE DHHU\0" "VAI SYLLABLE DHI\0" "VAI SYLLABLE DHO\0" "VAI SYLLABLE DHOO\0" "VAI SYLLABLE DHU\0" "VAI SYLLABLE DI\0" "VAI SYLLABLE DO\0" "VAI SYLLABLE DOO\0" "VAI SYLLABLE DU\0" "VAI SYLLABLE E\0" "VAI SYLLABLE EE\0" "VAI SYLLABLE EEN\0" "VAI SYLLABLE EN\0" "VAI SYLLABLE FA\0" "VAI SYLLABLE FE\0" "VAI SYLLABLE FEE\0" "VAI SYLLABLE FI\0" "VAI SYLLABLE FO\0" "VAI SYLLABLE FOO\0" "VAI SYLLABLE FU\0" "VAI SYLLABLE GA\0" "VAI SYLLABLE GBA\0" "VAI SYLLABLE GBE\0" "VAI SYLLABLE GBEE\0" "VAI SYLLABLE GBEN\0" "VAI SYLLABLE GBI\0" "VAI SYLLABLE GBO\0" "VAI SYLLABLE GBON\0" "VAI SYLLABLE GBOO\0" "VAI SYLLABLE GBU\0" "VAI SYLLABLE GE\0" "VAI SYLLABLE GEE\0" "VAI SYLLABLE GEN\0" "VAI SYLLABLE GI\0" "VAI SYLLABLE GO\0" "VAI SYLLABLE GOO\0" "VAI SYLLABLE GU\0" "VAI SYLLABLE HA\0" "VAI SYLLABLE HAN\0" "VAI SYLLABLE HE\0" "VAI SYLLABLE HEE\0" "VAI SYLLABLE HEN\0" "VAI SYLLABLE HI\0" "VAI SYLLABLE HIN\0" "VAI SYLLABLE HO\0" "VAI SYLLABLE HON\0" "VAI SYLLABLE HOO\0" "VAI SYLLABLE HU\0" "VAI SYLLABLE HUN\0" "VAI SYLLABLE I\0" "VAI SYLLABLE IN\0" "VAI SYLLABLE JA\0" "VAI SYLLABLE JE\0" "VAI SYLLABLE JEE\0" "VAI SYLLABLE JI\0" "VAI SYLLABLE JO\0" "VAI SYLLABLE JOO\0" "VAI SYLLABLE JU\0" "VAI SYLLABLE KA\0" "VAI SYLLABLE KAN\0" "VAI SYLLABLE KE\0" "VAI SYLLABLE KEE\0" "VAI SYLLABLE KI\0" "VAI SYLLABLE KO\0" "VAI SYLLABLE KOO\0" "VAI SYLLABLE KPA\0" "VAI SYLLABLE KPAN\0" "VAI SYLLABLE KPE\0" "VAI SYLLABLE KPEE\0" "VAI SYLLABLE KPEN\0" "VAI SYLLABLE KPI\0" "VAI SYLLABLE KPO\0" "VAI SYLLABLE KPOO\0" "VAI SYLLABLE KPU\0" "VAI SYLLABLE KU\0" "VAI SYLLABLE LA\0" "VAI SYLLABLE LE\0" "VAI SYLLABLE LEE\0" "VAI SYLLABLE LENGTHENER\0" "VAI SYLLABLE LI\0" "VAI SYLLABLE LO\0" "VAI SYLLABLE LOO\0" "VAI SYLLABLE LU\0" "VAI SYLLABLE MA\0" "VAI SYLLABLE MBA\0" "VAI SYLLABLE MBE\0" "VAI SYLLABLE MBEE\0" "VAI SYLLABLE MBI\0" "VAI SYLLABLE MBO\0" "VAI SYLLABLE MBOO\0" "VAI SYLLABLE MBU\0" "VAI SYLLABLE ME\0" "VAI SYLLABLE MEE\0" "VAI SYLLABLE MGBA\0" "VAI SYLLABLE MGBE\0" "VAI SYLLABLE MGBEE\0" "VAI SYLLABLE MGBI\0" "VAI SYLLABLE MGBO\0" "VAI SYLLABLE MGBOO\0" "VAI SYLLABLE MGBU\0" "VAI SYLLABLE MI\0" "VAI SYLLABLE MO\0" "VAI SYLLABLE MOO\0" "VAI SYLLABLE MU\0" "VAI SYLLABLE NA\0" "VAI SYLLABLE NDA\0" "VAI SYLLABLE NDE\0" "VAI SYLLABLE NDEE\0" "VAI SYLLABLE NDI\0" "VAI SYLLABLE NDO\0" "VAI SYLLABLE NDOLE DO\0" "VAI SYLLABLE NDOLE FA\0" "VAI SYLLABLE NDOLE KA\0" "VAI SYLLABLE NDOLE MA\0" "VAI SYLLABLE NDOLE SOO\0" "VAI SYLLABLE NDOO\0" "VAI SYLLABLE NDU\0" "VAI SYLLABLE NE\0" "VAI SYLLABLE NEE\0" "VAI SYLLABLE NG\0" "VAI SYLLABLE NGAN\0" "VAI SYLLABLE NGEN\0" "VAI SYLLABLE NGGA\0" "VAI SYLLABLE NGGE\0" "VAI SYLLABLE NGGEE\0" "VAI SYLLABLE NGGEN\0" "VAI SYLLABLE NGGI\0" "VAI SYLLABLE NGGO\0" "VAI SYLLABLE NGGOO\0" "VAI SYLLABLE NGGU\0" "VAI SYLLABLE NGON\0" "VAI SYLLABLE NI\0" "VAI SYLLABLE NJA\0" "VAI SYLLABLE NJE\0" "VAI SYLLABLE NJEE\0" "VAI SYLLABLE NJI\0" "VAI SYLLABLE NJO\0" "VAI SYLLABLE NJOO\0" "VAI SYLLABLE NJU\0" "VAI SYLLABLE NO\0" "VAI SYLLABLE NOO\0" "VAI SYLLABLE NU\0" "VAI SYLLABLE NYA\0" "VAI SYLLABLE NYE\0" "VAI SYLLABLE NYEE\0" "VAI SYLLABLE NYI\0" "VAI SYLLABLE NYO\0" "VAI SYLLABLE NYOO\0" "VAI SYLLABLE NYU\0" "VAI SYLLABLE O\0" "VAI SYLLABLE ON\0" "VAI SYLLABLE OO\0" "VAI SYLLABLE OON\0" "VAI SYLLABLE PA\0" "VAI SYLLABLE PE\0" "VAI SYLLABLE PEE\0" "VAI SYLLABLE PI\0" "VAI SYLLABLE PO\0" "VAI SYLLABLE POO\0" "VAI SYLLABLE PU\0" "VAI SYLLABLE RA\0" "VAI SYLLABLE RE\0" "VAI SYLLABLE REE\0" "VAI SYLLABLE RI\0" "VAI SYLLABLE RO\0" "VAI SYLLABLE ROO\0" "VAI SYLLABLE RU\0" "VAI SYLLABLE SA\0" "VAI SYLLABLE SE\0" "VAI SYLLABLE SEE\0" "VAI SYLLABLE SHA\0" "VAI SYLLABLE SHE\0" "VAI SYLLABLE SHEE\0" "VAI SYLLABLE SHI\0" "VAI SYLLABLE SHO\0" "VAI SYLLABLE SHOO\0" "VAI SYLLABLE SHU\0" "VAI SYLLABLE SI\0" "VAI SYLLABLE SO\0" "VAI SYLLABLE SOO\0" "VAI SYLLABLE SU\0" "VAI SYLLABLE TA\0" "VAI SYLLABLE TE\0" "VAI SYLLABLE TEE\0" "VAI SYLLABLE THA\0" "VAI SYLLABLE THE\0" "VAI SYLLABLE THEE\0" "VAI SYLLABLE THI\0" "VAI SYLLABLE THO\0" "VAI SYLLABLE THOO\0" "VAI SYLLABLE THU\0" "VAI SYLLABLE TI\0" "VAI SYLLABLE TO\0" "VAI SYLLABLE TOO\0" "VAI SYLLABLE TU\0" "VAI SYLLABLE U\0" "VAI SYLLABLE UN\0" "VAI SYLLABLE VA\0" "VAI SYLLABLE VE\0" "VAI SYLLABLE VEE\0" "VAI SYLLABLE VI\0" "VAI SYLLABLE VO\0" "VAI SYLLABLE VOO\0" "VAI SYLLABLE VU\0" "VAI SYLLABLE WA\0" "VAI SYLLABLE WAN\0" "VAI SYLLABLE WE\0" "VAI SYLLABLE WEE\0" "VAI SYLLABLE WEEN\0" "VAI SYLLABLE WEN\0" "VAI SYLLABLE WI\0" "VAI SYLLABLE WIN\0" "VAI SYLLABLE WO\0" "VAI SYLLABLE WON\0" "VAI SYLLABLE WOO\0" "VAI SYLLABLE WOON\0" "VAI SYLLABLE WU\0" "VAI SYLLABLE WUN\0" "VAI SYLLABLE YA\0" "VAI SYLLABLE YE\0" "VAI SYLLABLE YEE\0" "VAI SYLLABLE YI\0" "VAI SYLLABLE YO\0" "VAI SYLLABLE YOO\0" "VAI SYLLABLE YU\0" "VAI SYLLABLE ZA\0" "VAI SYLLABLE ZE\0" "VAI SYLLABLE ZEE\0" "VAI SYLLABLE ZHA\0" "VAI SYLLABLE ZHE\0" "VAI SYLLABLE ZHEE\0" "VAI SYLLABLE ZHI\0" "VAI SYLLABLE ZHO\0" "VAI SYLLABLE ZHOO\0" "VAI SYLLABLE ZHU\0" "VAI SYLLABLE ZI\0" "VAI SYLLABLE ZO\0" "VAI SYLLABLE ZOO\0" "VAI SYLLABLE ZU\0" "VAI SYMBOL BANG\0" "VAI SYMBOL DANG\0" "VAI SYMBOL DO-O\0" "VAI SYMBOL DOONG\0" "VAI SYMBOL FAA\0" "VAI SYMBOL FEENG\0" "VAI SYMBOL JONG\0" "VAI SYMBOL KEENG\0" "VAI SYMBOL KUNG\0" "VAI SYMBOL NII\0" "VAI SYMBOL TAA\0" "VAI SYMBOL TING\0" "VAI SYMBOL TONG\0" "VARIATION SELECTOR-1\0" "VARIATION SELECTOR-10\0" "VARIATION SELECTOR-100\0" "VARIATION SELECTOR-101\0" "VARIATION SELECTOR-102\0" "VARIATION SELECTOR-103\0" "VARIATION SELECTOR-104\0" "VARIATION SELECTOR-105\0" "VARIATION SELECTOR-106\0" "VARIATION SELECTOR-107\0" "VARIATION SELECTOR-108\0" "VARIATION SELECTOR-109\0" "VARIATION SELECTOR-11\0" "VARIATION SELECTOR-110\0" "VARIATION SELECTOR-111\0" "VARIATION SELECTOR-112\0" "VARIATION SELECTOR-113\0" "VARIATION SELECTOR-114\0" "VARIATION SELECTOR-115\0" "VARIATION SELECTOR-116\0" "VARIATION SELECTOR-117\0" "VARIATION SELECTOR-118\0" "VARIATION SELECTOR-119\0" "VARIATION SELECTOR-12\0" "VARIATION SELECTOR-120\0" "VARIATION SELECTOR-121\0" "VARIATION SELECTOR-122\0" "VARIATION SELECTOR-123\0" "VARIATION SELECTOR-124\0" "VARIATION SELECTOR-125\0" "VARIATION SELECTOR-126\0" "VARIATION SELECTOR-127\0" "VARIATION SELECTOR-128\0" "VARIATION SELECTOR-129\0" "VARIATION SELECTOR-13\0" "VARIATION SELECTOR-130\0" "VARIATION SELECTOR-131\0" "VARIATION SELECTOR-132\0" "VARIATION SELECTOR-133\0" "VARIATION SELECTOR-134\0" "VARIATION SELECTOR-135\0" "VARIATION SELECTOR-136\0" "VARIATION SELECTOR-137\0" "VARIATION SELECTOR-138\0" "VARIATION SELECTOR-139\0" "VARIATION SELECTOR-14\0" "VARIATION SELECTOR-140\0" "VARIATION SELECTOR-141\0" "VARIATION SELECTOR-142\0" "VARIATION SELECTOR-143\0" "VARIATION SELECTOR-144\0" "VARIATION SELECTOR-145\0" "VARIATION SELECTOR-146\0" "VARIATION SELECTOR-147\0" "VARIATION SELECTOR-148\0" "VARIATION SELECTOR-149\0" "VARIATION SELECTOR-15\0" "VARIATION SELECTOR-150\0" "VARIATION SELECTOR-151\0" "VARIATION SELECTOR-152\0" "VARIATION SELECTOR-153\0" "VARIATION SELECTOR-154\0" "VARIATION SELECTOR-155\0" "VARIATION SELECTOR-156\0" "VARIATION SELECTOR-157\0" "VARIATION SELECTOR-158\0" "VARIATION SELECTOR-159\0" "VARIATION SELECTOR-16\0" "VARIATION SELECTOR-160\0" "VARIATION SELECTOR-161\0" "VARIATION SELECTOR-162\0" "VARIATION SELECTOR-163\0" "VARIATION SELECTOR-164\0" "VARIATION SELECTOR-165\0" "VARIATION SELECTOR-166\0" "VARIATION SELECTOR-167\0" "VARIATION SELECTOR-168\0" "VARIATION SELECTOR-169\0" "VARIATION SELECTOR-17\0" "VARIATION SELECTOR-170\0" "VARIATION SELECTOR-171\0" "VARIATION SELECTOR-172\0" "VARIATION SELECTOR-173\0" "VARIATION SELECTOR-174\0" "VARIATION SELECTOR-175\0" "VARIATION SELECTOR-176\0" "VARIATION SELECTOR-177\0" "VARIATION SELECTOR-178\0" "VARIATION SELECTOR-179\0" "VARIATION SELECTOR-18\0" "VARIATION SELECTOR-180\0" "VARIATION SELECTOR-181\0" "VARIATION SELECTOR-182\0" "VARIATION SELECTOR-183\0" "VARIATION SELECTOR-184\0" "VARIATION SELECTOR-185\0" "VARIATION SELECTOR-186\0" "VARIATION SELECTOR-187\0" "VARIATION SELECTOR-188\0" "VARIATION SELECTOR-189\0" "VARIATION SELECTOR-19\0" "VARIATION SELECTOR-190\0" "VARIATION SELECTOR-191\0" "VARIATION SELECTOR-192\0" "VARIATION SELECTOR-193\0" "VARIATION SELECTOR-194\0" "VARIATION SELECTOR-195\0" "VARIATION SELECTOR-196\0" "VARIATION SELECTOR-197\0" "VARIATION SELECTOR-198\0" "VARIATION SELECTOR-199\0" "VARIATION SELECTOR-2\0" "VARIATION SELECTOR-20\0" "VARIATION SELECTOR-200\0" "VARIATION SELECTOR-201\0" "VARIATION SELECTOR-202\0" "VARIATION SELECTOR-203\0" "VARIATION SELECTOR-204\0" "VARIATION SELECTOR-205\0" "VARIATION SELECTOR-206\0" "VARIATION SELECTOR-207\0" "VARIATION SELECTOR-208\0" "VARIATION SELECTOR-209\0" "VARIATION SELECTOR-21\0" "VARIATION SELECTOR-210\0" "VARIATION SELECTOR-211\0" "VARIATION SELECTOR-212\0" "VARIATION SELECTOR-213\0" "VARIATION SELECTOR-214\0" "VARIATION SELECTOR-215\0" "VARIATION SELECTOR-216\0" "VARIATION SELECTOR-217\0" "VARIATION SELECTOR-218\0" "VARIATION SELECTOR-219\0" "VARIATION SELECTOR-22\0" "VARIATION SELECTOR-220\0" "VARIATION SELECTOR-221\0" "VARIATION SELECTOR-222\0" "VARIATION SELECTOR-223\0" "VARIATION SELECTOR-224\0" "VARIATION SELECTOR-225\0" "VARIATION SELECTOR-226\0" "VARIATION SELECTOR-227\0" "VARIATION SELECTOR-228\0" "VARIATION SELECTOR-229\0" "VARIATION SELECTOR-23\0" "VARIATION SELECTOR-230\0" "VARIATION SELECTOR-231\0" "VARIATION SELECTOR-232\0" "VARIATION SELECTOR-233\0" "VARIATION SELECTOR-234\0" "VARIATION SELECTOR-235\0" "VARIATION SELECTOR-236\0" "VARIATION SELECTOR-237\0" "VARIATION SELECTOR-238\0" "VARIATION SELECTOR-239\0" "VARIATION SELECTOR-24\0" "VARIATION SELECTOR-240\0" "VARIATION SELECTOR-241\0" "VARIATION SELECTOR-242\0" "VARIATION SELECTOR-243\0" "VARIATION SELECTOR-244\0" "VARIATION SELECTOR-245\0" "VARIATION SELECTOR-246\0" "VARIATION SELECTOR-247\0" "VARIATION SELECTOR-248\0" "VARIATION SELECTOR-249\0" "VARIATION SELECTOR-25\0" "VARIATION SELECTOR-250\0" "VARIATION SELECTOR-251\0" "VARIATION SELECTOR-252\0" "VARIATION SELECTOR-253\0" "VARIATION SELECTOR-254\0" "VARIATION SELECTOR-255\0" "VARIATION SELECTOR-256\0" "VARIATION SELECTOR-26\0" "VARIATION SELECTOR-27\0" "VARIATION SELECTOR-28\0" "VARIATION SELECTOR-29\0" "VARIATION SELECTOR-3\0" "VARIATION SELECTOR-30\0" "VARIATION SELECTOR-31\0" "VARIATION SELECTOR-32\0" "VARIATION SELECTOR-33\0" "VARIATION SELECTOR-34\0" "VARIATION SELECTOR-35\0" "VARIATION SELECTOR-36\0" "VARIATION SELECTOR-37\0" "VARIATION SELECTOR-38\0" "VARIATION SELECTOR-39\0" "VARIATION SELECTOR-4\0" "VARIATION SELECTOR-40\0" "VARIATION SELECTOR-41\0" "VARIATION SELECTOR-42\0" "VARIATION SELECTOR-43\0" "VARIATION SELECTOR-44\0" "VARIATION SELECTOR-45\0" "VARIATION SELECTOR-46\0" "VARIATION SELECTOR-47\0" "VARIATION SELECTOR-48\0" "VARIATION SELECTOR-49\0" "VARIATION SELECTOR-5\0" "VARIATION SELECTOR-50\0" "VARIATION SELECTOR-51\0" "VARIATION SELECTOR-52\0" "VARIATION SELECTOR-53\0" "VARIATION SELECTOR-54\0" "VARIATION SELECTOR-55\0" "VARIATION SELECTOR-56\0" "VARIATION SELECTOR-57\0" "VARIATION SELECTOR-58\0" "VARIATION SELECTOR-59\0" "VARIATION SELECTOR-6\0" "VARIATION SELECTOR-60\0" "VARIATION SELECTOR-61\0" "VARIATION SELECTOR-62\0" "VARIATION SELECTOR-63\0" "VARIATION SELECTOR-64\0" "VARIATION SELECTOR-65\0" "VARIATION SELECTOR-66\0" "VARIATION SELECTOR-67\0" "VARIATION SELECTOR-68\0" "VARIATION SELECTOR-69\0" "VARIATION SELECTOR-7\0" "VARIATION SELECTOR-70\0" "VARIATION SELECTOR-71\0" "VARIATION SELECTOR-72\0" "VARIATION SELECTOR-73\0" "VARIATION SELECTOR-74\0" "VARIATION SELECTOR-75\0" "VARIATION SELECTOR-76\0" "VARIATION SELECTOR-77\0" "VARIATION SELECTOR-78\0" "VARIATION SELECTOR-79\0" "VARIATION SELECTOR-8\0" "VARIATION SELECTOR-80\0" "VARIATION SELECTOR-81\0" "VARIATION SELECTOR-82\0" "VARIATION SELECTOR-83\0" "VARIATION SELECTOR-84\0" "VARIATION SELECTOR-85\0" "VARIATION SELECTOR-86\0" "VARIATION SELECTOR-87\0" "VARIATION SELECTOR-88\0" "VARIATION SELECTOR-89\0" "VARIATION SELECTOR-9\0" "VARIATION SELECTOR-90\0" "VARIATION SELECTOR-91\0" "VARIATION SELECTOR-92\0" "VARIATION SELECTOR-93\0" "VARIATION SELECTOR-94\0" "VARIATION SELECTOR-95\0" "VARIATION SELECTOR-96\0" "VARIATION SELECTOR-97\0" "VARIATION SELECTOR-98\0" "VARIATION SELECTOR-99\0" "VECTOR OR CROSS PRODUCT\0" "VEDIC SIGN ANUSVARA ANTARGOMUKHA\0" "VEDIC SIGN ANUSVARA BAHIRGOMUKHA\0" "VEDIC SIGN ANUSVARA UBHAYATO MUKHA\0" "VEDIC SIGN ANUSVARA VAMAGOMUKHA\0" "VEDIC SIGN ANUSVARA VAMAGOMUKHA WITH TAIL\0" "VEDIC SIGN ARDHAVISARGA\0" "VEDIC SIGN HEXIFORM LONG ANUSVARA\0" "VEDIC SIGN LONG ANUSVARA\0" "VEDIC SIGN NIHSHVASA\0" "VEDIC SIGN REVERSED VISARGA ANUDATTA\0" "VEDIC SIGN REVERSED VISARGA UDATTA\0" "VEDIC SIGN RTHANG LONG ANUSVARA\0" "VEDIC SIGN TIRYAK\0" "VEDIC SIGN VISARGA ANUDATTA\0" "VEDIC SIGN VISARGA ANUDATTA WITH TAIL\0" "VEDIC SIGN VISARGA SVARITA\0" "VEDIC SIGN VISARGA UDATTA\0" "VEDIC SIGN VISARGA UDATTA WITH TAIL\0" "VEDIC SIGN YAJURVEDIC MIDLINE SVARITA\0" "VEDIC TONE ATHARVAVEDIC INDEPENDENT SVARITA\0" "VEDIC TONE CANDRA BELOW\0" "VEDIC TONE DOT BELOW\0" "VEDIC TONE DOUBLE SVARITA\0" "VEDIC TONE KARSHANA\0" "VEDIC TONE KATHAKA ANUDATTA\0" "VEDIC TONE PRENKHA\0" "VEDIC TONE RIGVEDIC KASHMIRI INDEPENDENT SVARITA\0" "VEDIC TONE SHARA\0" "VEDIC TONE THREE DOTS BELOW\0" "VEDIC TONE TRIPLE SVARITA\0" "VEDIC TONE TWO DOTS BELOW\0" "VEDIC TONE YAJURVEDIC AGGRAVATED INDEPENDENT SVARITA\0" "VEDIC TONE YAJURVEDIC INDEPENDENT SVARITA\0" "VEDIC TONE YAJURVEDIC KATHAKA INDEPENDENT SVARITA\0" "VEDIC TONE YAJURVEDIC KATHAKA INDEPENDENT SVARITA SCHROEDER\0" "VERSICLE\0" "VERTICAL BAR BESIDE RIGHT TRIANGLE\0" "VERTICAL BAR DOUBLE LEFT TURNSTILE\0" "VERTICAL BAR TRIPLE RIGHT TURNSTILE\0" "VERTICAL BAR WITH HORIZONTAL STROKE\0" "VERTICAL ELLIPSIS\0" "VERTICAL FOUR DOTS\0" "VERTICAL IDEOGRAPHIC ITERATION MARK\0" "VERTICAL KANA REPEAT MARK\0" "VERTICAL KANA REPEAT MARK LOWER HALF\0" "VERTICAL KANA REPEAT MARK UPPER HALF\0" "VERTICAL KANA REPEAT WITH VOICED SOUND MARK\0" "VERTICAL KANA REPEAT WITH VOICED SOUND MARK UPPER HALF\0" "VERTICAL LINE\0" "VERTICAL LINE EXTENSION\0" "VERTICAL LINE WITH CIRCLE ABOVE\0" "VERTICAL LINE WITH CIRCLE BELOW\0" "VERTICAL LINE WITH MIDDLE DOT\0" "VERTICAL MALE WITH STROKE SIGN\0" "VERTICAL TILDE\0" "VERTICAL TRAFFIC LIGHT\0" "VERTICAL ZIGZAG LINE\0" "VERY MUCH GREATER-THAN\0" "VERY MUCH LESS-THAN\0" "VESTA\0" "VIBRATION MODE\0" "VICTORY HAND\0" "VIDEO CAMERA\0" "VIDEO GAME\0" "VIDEOCASSETTE\0" "VIEWDATA SQUARE\0" "VIOLIN\0" "VIRGO\0" "VOLCANO\0" "VOLUME INTEGRAL\0" "VULGAR FRACTION FIVE EIGHTHS\0" "VULGAR FRACTION FIVE SIXTHS\0" "VULGAR FRACTION FOUR FIFTHS\0" "VULGAR FRACTION ONE EIGHTH\0" "VULGAR FRACTION ONE FIFTH\0" "VULGAR FRACTION ONE HALF\0" "VULGAR FRACTION ONE NINTH\0" "VULGAR FRACTION ONE QUARTER\0" "VULGAR FRACTION ONE SEVENTH\0" "VULGAR FRACTION ONE SIXTH\0" "VULGAR FRACTION ONE TENTH\0" "VULGAR FRACTION ONE THIRD\0" "VULGAR FRACTION SEVEN EIGHTHS\0" "VULGAR FRACTION THREE EIGHTHS\0" "VULGAR FRACTION THREE FIFTHS\0" "VULGAR FRACTION THREE QUARTERS\0" "VULGAR FRACTION TWO FIFTHS\0" "VULGAR FRACTION TWO THIRDS\0" "VULGAR FRACTION ZERO THIRDS\0" "WANING CRESCENT MOON SYMBOL\0" "WANING GIBBOUS MOON SYMBOL\0" "WARNING SIGN\0" "WATCH\0" "WATER BUFFALO\0" "WATER CLOSET\0" "WATER WAVE\0" "WATERMELON\0" "WAVE ARROW POINTING DIRECTLY LEFT\0" "WAVE ARROW POINTING DIRECTLY RIGHT\0" "WAVE DASH\0" "WAVING HAND SIGN\0" "WAVY DASH\0" "WAVY LINE\0" "WAVY LOW LINE\0" "WAVY OVERLINE\0" "WAXING CRESCENT MOON SYMBOL\0" "WAXING GIBBOUS MOON SYMBOL\0" "WEARY CAT FACE\0" "WEARY FACE\0" "WEDDING\0" "WEDGE-TAILED RIGHTWARDS ARROW\0" "WEST SYRIAC CROSS\0" "WHALE\0" "WHEEL OF DHARMA\0" "WHEELCHAIR SYMBOL\0" "WHITE BULLET\0" "WHITE CHESS BISHOP\0" "WHITE CHESS KING\0" "WHITE CHESS KNIGHT\0" "WHITE CHESS PAWN\0" "WHITE CHESS QUEEN\0" "WHITE CHESS ROOK\0" "WHITE CIRCLE\0" "WHITE CIRCLE WITH DOT RIGHT\0" "WHITE CIRCLE WITH DOWN ARROW\0" "WHITE CIRCLE WITH LOWER LEFT QUADRANT\0" "WHITE CIRCLE WITH LOWER RIGHT QUADRANT\0" "WHITE CIRCLE WITH TWO DOTS\0" "WHITE CIRCLE WITH UPPER LEFT QUADRANT\0" "WHITE CIRCLE WITH UPPER RIGHT QUADRANT\0" "WHITE CLUB SUIT\0" "WHITE CONCAVE-SIDED DIAMOND\0" "WHITE CONCAVE-SIDED DIAMOND WITH LEFTWARDS TICK\0" "WHITE CONCAVE-SIDED DIAMOND WITH RIGHTWARDS TICK\0" "WHITE DIAMOND\0" "WHITE DIAMOND CONTAINING BLACK SMALL DIAMOND\0" "WHITE DIAMOND IN SQUARE\0" "WHITE DIAMOND SUIT\0" "WHITE DIAMOND WITH CENTRED DOT\0" "WHITE DOWN POINTING BACKHAND INDEX\0" "WHITE DOWN POINTING INDEX\0" "WHITE DOWN-POINTING SMALL TRIANGLE\0" "WHITE DOWN-POINTING TRIANGLE\0" "WHITE DRAUGHTS KING\0" "WHITE DRAUGHTS MAN\0" "WHITE EXCLAMATION MARK ORNAMENT\0" "WHITE FLAG\0" "WHITE FLAG WITH HORIZONTAL MIDDLE BLACK STRIPE\0" "WHITE FLORETTE\0" "WHITE FLOWER\0" "WHITE FOUR POINTED STAR\0" "WHITE FROWNING FACE\0" "WHITE HEART SUIT\0" "WHITE HEAVY CHECK MARK\0" "WHITE HEXAGON\0" "WHITE HORIZONTAL ELLIPSE\0" "WHITE HOURGLASS\0" "WHITE LARGE SQUARE\0" "WHITE LEFT LANE MERGE\0" "WHITE LEFT POINTING BACKHAND INDEX\0" "WHITE LEFT POINTING INDEX\0" "WHITE LEFT-POINTING POINTER\0" "WHITE LEFT-POINTING SMALL TRIANGLE\0" "WHITE LEFT-POINTING TRIANGLE\0" "WHITE MEDIUM DIAMOND\0" "WHITE MEDIUM LOZENGE\0" "WHITE MEDIUM SMALL SQUARE\0" "WHITE MEDIUM SQUARE\0" "WHITE MEDIUM STAR\0" "WHITE NIB\0" "WHITE PARALLELOGRAM\0" "WHITE PENTAGON\0" "WHITE QUESTION MARK ORNAMENT\0" "WHITE RECTANGLE\0" "WHITE RIGHT POINTING BACKHAND INDEX\0" "WHITE RIGHT POINTING INDEX\0" "WHITE RIGHT-POINTING PENTAGON\0" "WHITE RIGHT-POINTING POINTER\0" "WHITE RIGHT-POINTING SMALL TRIANGLE\0" "WHITE RIGHT-POINTING TRIANGLE\0" "WHITE SCISSORS\0" "WHITE SESAME DOT\0" "WHITE SHOGI PIECE\0" "WHITE SMALL LOZENGE\0" "WHITE SMALL SQUARE\0" "WHITE SMALL STAR\0" "WHITE SMILING FACE\0" "WHITE SPADE SUIT\0" "WHITE SQUARE\0" "WHITE SQUARE BUTTON\0" "WHITE SQUARE CONTAINING BLACK SMALL SQUARE\0" "WHITE SQUARE WITH CENTRE VERTICAL LINE\0" "WHITE SQUARE WITH LEFTWARDS TICK\0" "WHITE SQUARE WITH LOWER LEFT QUADRANT\0" "WHITE SQUARE WITH LOWER RIGHT QUADRANT\0" "WHITE SQUARE WITH RIGHTWARDS TICK\0" "WHITE SQUARE WITH ROUNDED CORNERS\0" "WHITE SQUARE WITH UPPER LEFT QUADRANT\0" "WHITE SQUARE WITH UPPER RIGHT QUADRANT\0" "WHITE SQUARE WITH VERTICAL BISECTING LINE\0" "WHITE STAR\0" "WHITE SUN WITH RAYS\0" "WHITE TELEPHONE\0" "WHITE TRAPEZIUM\0" "WHITE TRIANGLE CONTAINING SMALL WHITE TRIANGLE\0" "WHITE TWO-WAY LEFT WAY TRAFFIC\0" "WHITE UP POINTING BACKHAND INDEX\0" "WHITE UP POINTING INDEX\0" "WHITE UP-POINTING SMALL TRIANGLE\0" "WHITE UP-POINTING TRIANGLE\0" "WHITE UP-POINTING TRIANGLE WITH DOT\0" "WHITE VERTICAL BAR\0" "WHITE VERTICAL ELLIPSE\0" "WHITE VERTICAL RECTANGLE\0" "WHITE VERY SMALL SQUARE\0" "WHITE-FEATHERED RIGHTWARDS ARROW\0" "WIND CHIME\0" "WINE GLASS\0" "WINKING FACE\0" "WOLF FACE\0" "WOMAN\0" "WOMAN WITH BUNNY EARS\0" "WOMANS BOOTS\0" "WOMANS CLOTHES\0" "WOMANS HAT\0" "WOMANS SANDAL\0" "WOMENS SYMBOL\0" "WON SIGN\0" "WORD JOINER\0" "WORD SEPARATOR MIDDLE DOT\0" "WRAPPED PRESENT\0" "WREATH PRODUCT\0" "WRENCH\0" "WRITING HAND\0" "X IN A RECTANGLE BOX\0" "XOR\0" "YELLOW HEART\0" "YEN SIGN\0" "YI RADICAL BBUT\0" "YI RADICAL BUR\0" "YI RADICAL CHE\0" "YI RADICAL CIP\0" "YI RADICAL CUOP\0" "YI RADICAL CY\0" "YI RADICAL CYP\0" "YI RADICAL CYT\0" "YI RADICAL DDUR\0" "YI RADICAL DU\0" "YI RADICAL GA\0" "YI RADICAL GEP\0" "YI RADICAL GGOP\0" "YI RADICAL GGUO\0" "YI RADICAL GOT\0" "YI RADICAL HMO\0" "YI RADICAL HXIT\0" "YI RADICAL HXOP\0" "YI RADICAL HXUO\0" "YI RADICAL JJIE\0" "YI RADICAL JJUT\0" "YI RADICAL JJY\0" "YI RADICAL JO\0" "YI RADICAL KE\0" "YI RADICAL KIT\0" "YI RADICAL LI\0" "YI RADICAL LIE\0" "YI RADICAL LYR\0" "YI RADICAL MI\0" "YI RADICAL MOP\0" "YI RADICAL NBIE\0" "YI RADICAL NYIP\0" "YI RADICAL NYOP\0" "YI RADICAL NZUP\0" "YI RADICAL OP\0" "YI RADICAL PUT\0" "YI RADICAL PYT\0" "YI RADICAL QOT\0" "YI RADICAL SHAT\0" "YI RADICAL SHOP\0" "YI RADICAL SHUR\0" "YI RADICAL SHY\0" "YI RADICAL SSI\0" "YI RADICAL TAT\0" "YI RADICAL TU\0" "YI RADICAL VEP\0" "YI RADICAL VUR\0" "YI RADICAL WO\0" "YI RADICAL YIT\0" "YI RADICAL YO\0" "YI RADICAL ZA\0" "YI RADICAL ZOT\0" "YI RADICAL ZUP\0" "YI RADICAL ZUR\0" "YI RADICAL ZZIET\0" "YI SYLLABLE A\0" "YI SYLLABLE AP\0" "YI SYLLABLE AT\0" "YI SYLLABLE AX\0" "YI SYLLABLE BA\0" "YI SYLLABLE BAP\0" "YI SYLLABLE BAT\0" "YI SYLLABLE BAX\0" "YI SYLLABLE BBA\0" "YI SYLLABLE BBAP\0" "YI SYLLABLE BBAT\0" "YI SYLLABLE BBAX\0" "YI SYLLABLE BBE\0" "YI SYLLABLE BBEP\0" "YI SYLLABLE BBEX\0" "YI SYLLABLE BBI\0" "YI SYLLABLE BBIE\0" "YI SYLLABLE BBIEP\0" "YI SYLLABLE BBIET\0" "YI SYLLABLE BBIEX\0" "YI SYLLABLE BBIP\0" "YI SYLLABLE BBIT\0" "YI SYLLABLE BBIX\0" "YI SYLLABLE BBO\0" "YI SYLLABLE BBOP\0" "YI SYLLABLE BBOT\0" "YI SYLLABLE BBOX\0" "YI SYLLABLE BBU\0" "YI SYLLABLE BBUO\0" "YI SYLLABLE BBUOP\0" "YI SYLLABLE BBUOX\0" "YI SYLLABLE BBUP\0" "YI SYLLABLE BBUR\0" "YI SYLLABLE BBURX\0" "YI SYLLABLE BBUT\0" "YI SYLLABLE BBUX\0" "YI SYLLABLE BBY\0" "YI SYLLABLE BBYP\0" "YI SYLLABLE BBYT\0" "YI SYLLABLE BBYX\0" "YI SYLLABLE BE\0" "YI SYLLABLE BEP\0" "YI SYLLABLE BEX\0" "YI SYLLABLE BI\0" "YI SYLLABLE BIE\0" "YI SYLLABLE BIEP\0" "YI SYLLABLE BIET\0" "YI SYLLABLE BIEX\0" "YI SYLLABLE BIP\0" "YI SYLLABLE BIT\0" "YI SYLLABLE BIX\0" "YI SYLLABLE BO\0" "YI SYLLABLE BOP\0" "YI SYLLABLE BOT\0" "YI SYLLABLE BOX\0" "YI SYLLABLE BU\0" "YI SYLLABLE BUO\0" "YI SYLLABLE BUOP\0" "YI SYLLABLE BUOX\0" "YI SYLLABLE BUP\0" "YI SYLLABLE BUR\0" "YI SYLLABLE BURX\0" "YI SYLLABLE BUT\0" "YI SYLLABLE BUX\0" "YI SYLLABLE BY\0" "YI SYLLABLE BYP\0" "YI SYLLABLE BYR\0" "YI SYLLABLE BYRX\0" "YI SYLLABLE BYT\0" "YI SYLLABLE BYX\0" "YI SYLLABLE CA\0" "YI SYLLABLE CAP\0" "YI SYLLABLE CAT\0" "YI SYLLABLE CAX\0" "YI SYLLABLE CE\0" "YI SYLLABLE CEP\0" "YI SYLLABLE CEX\0" "YI SYLLABLE CHA\0" "YI SYLLABLE CHAP\0" "YI SYLLABLE CHAT\0" "YI SYLLABLE CHAX\0" "YI SYLLABLE CHE\0" "YI SYLLABLE CHEP\0" "YI SYLLABLE CHET\0" "YI SYLLABLE CHEX\0" "YI SYLLABLE CHO\0" "YI SYLLABLE CHOP\0" "YI SYLLABLE CHOT\0" "YI SYLLABLE CHOX\0" "YI SYLLABLE CHU\0" "YI SYLLABLE CHUO\0" "YI SYLLABLE CHUOP\0" "YI SYLLABLE CHUOT\0" "YI SYLLABLE CHUOX\0" "YI SYLLABLE CHUP\0" "YI SYLLABLE CHUR\0" "YI SYLLABLE CHURX\0" "YI SYLLABLE CHUX\0" "YI SYLLABLE CHY\0" "YI SYLLABLE CHYP\0" "YI SYLLABLE CHYR\0" "YI SYLLABLE CHYRX\0" "YI SYLLABLE CHYT\0" "YI SYLLABLE CHYX\0" "YI SYLLABLE CI\0" "YI SYLLABLE CIE\0" "YI SYLLABLE CIEP\0" "YI SYLLABLE CIET\0" "YI SYLLABLE CIEX\0" "YI SYLLABLE CIP\0" "YI SYLLABLE CIT\0" "YI SYLLABLE CIX\0" "YI SYLLABLE CO\0" "YI SYLLABLE COP\0" "YI SYLLABLE COT\0" "YI SYLLABLE COX\0" "YI SYLLABLE CU\0" "YI SYLLABLE CUO\0" "YI SYLLABLE CUOP\0" "YI SYLLABLE CUOX\0" "YI SYLLABLE CUP\0" "YI SYLLABLE CUR\0" "YI SYLLABLE CURX\0" "YI SYLLABLE CUT\0" "YI SYLLABLE CUX\0" "YI SYLLABLE CY\0" "YI SYLLABLE CYP\0" "YI SYLLABLE CYR\0" "YI SYLLABLE CYRX\0" "YI SYLLABLE CYT\0" "YI SYLLABLE CYX\0" "YI SYLLABLE DA\0" "YI SYLLABLE DAP\0" "YI SYLLABLE DAT\0" "YI SYLLABLE DAX\0" "YI SYLLABLE DDA\0" "YI SYLLABLE DDAP\0" "YI SYLLABLE DDAT\0" "YI SYLLABLE DDAX\0" "YI SYLLABLE DDE\0" "YI SYLLABLE DDEP\0" "YI SYLLABLE DDEX\0" "YI SYLLABLE DDI\0" "YI SYLLABLE DDIE\0" "YI SYLLABLE DDIEP\0" "YI SYLLABLE DDIEX\0" "YI SYLLABLE DDIP\0" "YI SYLLABLE DDIT\0" "YI SYLLABLE DDIX\0" "YI SYLLABLE DDO\0" "YI SYLLABLE DDOP\0" "YI SYLLABLE DDOT\0" "YI SYLLABLE DDOX\0" "YI SYLLABLE DDU\0" "YI SYLLABLE DDUO\0" "YI SYLLABLE DDUOP\0" "YI SYLLABLE DDUOX\0" "YI SYLLABLE DDUP\0" "YI SYLLABLE DDUR\0" "YI SYLLABLE DDURX\0" "YI SYLLABLE DDUT\0" "YI SYLLABLE DDUX\0" "YI SYLLABLE DE\0" "YI SYLLABLE DEP\0" "YI SYLLABLE DEX\0" "YI SYLLABLE DI\0" "YI SYLLABLE DIE\0" "YI SYLLABLE DIEP\0" "YI SYLLABLE DIEX\0" "YI SYLLABLE DIP\0" "YI SYLLABLE DIT\0" "YI SYLLABLE DIX\0" "YI SYLLABLE DO\0" "YI SYLLABLE DOP\0" "YI SYLLABLE DOT\0" "YI SYLLABLE DOX\0" "YI SYLLABLE DU\0" "YI SYLLABLE DUO\0" "YI SYLLABLE DUOX\0" "YI SYLLABLE DUP\0" "YI SYLLABLE DUR\0" "YI SYLLABLE DURX\0" "YI SYLLABLE DUT\0" "YI SYLLABLE DUX\0" "YI SYLLABLE E\0" "YI SYLLABLE EX\0" "YI SYLLABLE FA\0" "YI SYLLABLE FAP\0" "YI SYLLABLE FAT\0" "YI SYLLABLE FAX\0" "YI SYLLABLE FI\0" "YI SYLLABLE FIP\0" "YI SYLLABLE FIT\0" "YI SYLLABLE FIX\0" "YI SYLLABLE FO\0" "YI SYLLABLE FOP\0" "YI SYLLABLE FOX\0" "YI SYLLABLE FU\0" "YI SYLLABLE FUP\0" "YI SYLLABLE FUR\0" "YI SYLLABLE FURX\0" "YI SYLLABLE FUT\0" "YI SYLLABLE FUX\0" "YI SYLLABLE FY\0" "YI SYLLABLE FYP\0" "YI SYLLABLE FYT\0" "YI SYLLABLE FYX\0" "YI SYLLABLE GA\0" "YI SYLLABLE GAP\0" "YI SYLLABLE GAT\0" "YI SYLLABLE GAX\0" "YI SYLLABLE GE\0" "YI SYLLABLE GEP\0" "YI SYLLABLE GET\0" "YI SYLLABLE GEX\0" "YI SYLLABLE GGA\0" "YI SYLLABLE GGAP\0" "YI SYLLABLE GGAT\0" "YI SYLLABLE GGAX\0" "YI SYLLABLE GGE\0" "YI SYLLABLE GGEP\0" "YI SYLLABLE GGET\0" "YI SYLLABLE GGEX\0" "YI SYLLABLE GGI\0" "YI SYLLABLE GGIE\0" "YI SYLLABLE GGIEP\0" "YI SYLLABLE GGIEX\0" "YI SYLLABLE GGIT\0" "YI SYLLABLE GGIX\0" "YI SYLLABLE GGO\0" "YI SYLLABLE GGOP\0" "YI SYLLABLE GGOT\0" "YI SYLLABLE GGOX\0" "YI SYLLABLE GGU\0" "YI SYLLABLE GGUO\0" "YI SYLLABLE GGUOP\0" "YI SYLLABLE GGUOT\0" "YI SYLLABLE GGUOX\0" "YI SYLLABLE GGUP\0" "YI SYLLABLE GGUR\0" "YI SYLLABLE GGURX\0" "YI SYLLABLE GGUT\0" "YI SYLLABLE GGUX\0" "YI SYLLABLE GI\0" "YI SYLLABLE GIE\0" "YI SYLLABLE GIEP\0" "YI SYLLABLE GIET\0" "YI SYLLABLE GIEX\0" "YI SYLLABLE GIP\0" "YI SYLLABLE GIT\0" "YI SYLLABLE GIX\0" "YI SYLLABLE GO\0" "YI SYLLABLE GOP\0" "YI SYLLABLE GOT\0" "YI SYLLABLE GOX\0" "YI SYLLABLE GU\0" "YI SYLLABLE GUO\0" "YI SYLLABLE GUOP\0" "YI SYLLABLE GUOT\0" "YI SYLLABLE GUOX\0" "YI SYLLABLE GUP\0" "YI SYLLABLE GUR\0" "YI SYLLABLE GURX\0" "YI SYLLABLE GUT\0" "YI SYLLABLE GUX\0" "YI SYLLABLE HA\0" "YI SYLLABLE HAP\0" "YI SYLLABLE HAT\0" "YI SYLLABLE HAX\0" "YI SYLLABLE HE\0" "YI SYLLABLE HEP\0" "YI SYLLABLE HEX\0" "YI SYLLABLE HIE\0" "YI SYLLABLE HIEX\0" "YI SYLLABLE HIT\0" "YI SYLLABLE HLA\0" "YI SYLLABLE HLAP\0" "YI SYLLABLE HLAT\0" "YI SYLLABLE HLAX\0" "YI SYLLABLE HLE\0" "YI SYLLABLE HLEP\0" "YI SYLLABLE HLEX\0" "YI SYLLABLE HLI\0" "YI SYLLABLE HLIE\0" "YI SYLLABLE HLIEP\0" "YI SYLLABLE HLIEX\0" "YI SYLLABLE HLIP\0" "YI SYLLABLE HLIT\0" "YI SYLLABLE HLIX\0" "YI SYLLABLE HLO\0" "YI SYLLABLE HLOP\0" "YI SYLLABLE HLOX\0" "YI SYLLABLE HLU\0" "YI SYLLABLE HLUO\0" "YI SYLLABLE HLUOP\0" "YI SYLLABLE HLUOX\0" "YI SYLLABLE HLUP\0" "YI SYLLABLE HLUR\0" "YI SYLLABLE HLURX\0" "YI SYLLABLE HLUT\0" "YI SYLLABLE HLUX\0" "YI SYLLABLE HLY\0" "YI SYLLABLE HLYP\0" "YI SYLLABLE HLYR\0" "YI SYLLABLE HLYRX\0" "YI SYLLABLE HLYT\0" "YI SYLLABLE HLYX\0" "YI SYLLABLE HMA\0" "YI SYLLABLE HMAP\0" "YI SYLLABLE HMAT\0" "YI SYLLABLE HMAX\0" "YI SYLLABLE HMI\0" "YI SYLLABLE HMIE\0" "YI SYLLABLE HMIEP\0" "YI SYLLABLE HMIEX\0" "YI SYLLABLE HMIP\0" "YI SYLLABLE HMIT\0" "YI SYLLABLE HMIX\0" "YI SYLLABLE HMO\0" "YI SYLLABLE HMOP\0" "YI SYLLABLE HMOT\0" "YI SYLLABLE HMOX\0" "YI SYLLABLE HMU\0" "YI SYLLABLE HMUO\0" "YI SYLLABLE HMUOP\0" "YI SYLLABLE HMUOX\0" "YI SYLLABLE HMUP\0" "YI SYLLABLE HMUR\0" "YI SYLLABLE HMURX\0" "YI SYLLABLE HMUT\0" "YI SYLLABLE HMUX\0" "YI SYLLABLE HMY\0" "YI SYLLABLE HMYP\0" "YI SYLLABLE HMYR\0" "YI SYLLABLE HMYRX\0" "YI SYLLABLE HMYX\0" "YI SYLLABLE HNA\0" "YI SYLLABLE HNAP\0" "YI SYLLABLE HNAT\0" "YI SYLLABLE HNAX\0" "YI SYLLABLE HNE\0" "YI SYLLABLE HNEP\0" "YI SYLLABLE HNEX\0" "YI SYLLABLE HNI\0" "YI SYLLABLE HNIE\0" "YI SYLLABLE HNIEP\0" "YI SYLLABLE HNIET\0" "YI SYLLABLE HNIEX\0" "YI SYLLABLE HNIP\0" "YI SYLLABLE HNIT\0" "YI SYLLABLE HNIX\0" "YI SYLLABLE HNOP\0" "YI SYLLABLE HNOT\0" "YI SYLLABLE HNOX\0" "YI SYLLABLE HNUO\0" "YI SYLLABLE HNUOX\0" "YI SYLLABLE HNUT\0" "YI SYLLABLE HO\0" "YI SYLLABLE HOP\0" "YI SYLLABLE HOT\0" "YI SYLLABLE HOX\0" "YI SYLLABLE HUO\0" "YI SYLLABLE HUOP\0" "YI SYLLABLE HUOT\0" "YI SYLLABLE HUOX\0" "YI SYLLABLE HXA\0" "YI SYLLABLE HXAP\0" "YI SYLLABLE HXAT\0" "YI SYLLABLE HXAX\0" "YI SYLLABLE HXE\0" "YI SYLLABLE HXEP\0" "YI SYLLABLE HXEX\0" "YI SYLLABLE HXI\0" "YI SYLLABLE HXIE\0" "YI SYLLABLE HXIEP\0" "YI SYLLABLE HXIET\0" "YI SYLLABLE HXIEX\0" "YI SYLLABLE HXIP\0" "YI SYLLABLE HXIT\0" "YI SYLLABLE HXIX\0" "YI SYLLABLE HXO\0" "YI SYLLABLE HXOP\0" "YI SYLLABLE HXOT\0" "YI SYLLABLE HXOX\0" "YI SYLLABLE HXUO\0" "YI SYLLABLE HXUOP\0" "YI SYLLABLE HXUOT\0" "YI SYLLABLE HXUOX\0" "YI SYLLABLE I\0" "YI SYLLABLE IE\0" "YI SYLLABLE IEP\0" "YI SYLLABLE IET\0" "YI SYLLABLE IEX\0" "YI SYLLABLE IP\0" "YI SYLLABLE IT\0" "YI SYLLABLE IX\0" "YI SYLLABLE JI\0" "YI SYLLABLE JIE\0" "YI SYLLABLE JIEP\0" "YI SYLLABLE JIET\0" "YI SYLLABLE JIEX\0" "YI SYLLABLE JIP\0" "YI SYLLABLE JIT\0" "YI SYLLABLE JIX\0" "YI SYLLABLE JJI\0" "YI SYLLABLE JJIE\0" "YI SYLLABLE JJIEP\0" "YI SYLLABLE JJIET\0" "YI SYLLABLE JJIEX\0" "YI SYLLABLE JJIP\0" "YI SYLLABLE JJIT\0" "YI SYLLABLE JJIX\0" "YI SYLLABLE JJO\0" "YI SYLLABLE JJOP\0" "YI SYLLABLE JJOT\0" "YI SYLLABLE JJOX\0" "YI SYLLABLE JJU\0" "YI SYLLABLE JJUO\0" "YI SYLLABLE JJUOP\0" "YI SYLLABLE JJUOX\0" "YI SYLLABLE JJUP\0" "YI SYLLABLE JJUR\0" "YI SYLLABLE JJURX\0" "YI SYLLABLE JJUT\0" "YI SYLLABLE JJUX\0" "YI SYLLABLE JJY\0" "YI SYLLABLE JJYP\0" "YI SYLLABLE JJYT\0" "YI SYLLABLE JJYX\0" "YI SYLLABLE JO\0" "YI SYLLABLE JOP\0" "YI SYLLABLE JOT\0" "YI SYLLABLE JOX\0" "YI SYLLABLE JU\0" "YI SYLLABLE JUO\0" "YI SYLLABLE JUOP\0" "YI SYLLABLE JUOT\0" "YI SYLLABLE JUOX\0" "YI SYLLABLE JUP\0" "YI SYLLABLE JUR\0" "YI SYLLABLE JURX\0" "YI SYLLABLE JUT\0" "YI SYLLABLE JUX\0" "YI SYLLABLE JY\0" "YI SYLLABLE JYP\0" "YI SYLLABLE JYR\0" "YI SYLLABLE JYRX\0" "YI SYLLABLE JYT\0" "YI SYLLABLE JYX\0" "YI SYLLABLE KA\0" "YI SYLLABLE KAP\0" "YI SYLLABLE KAT\0" "YI SYLLABLE KAX\0" "YI SYLLABLE KE\0" "YI SYLLABLE KEP\0" "YI SYLLABLE KET\0" "YI SYLLABLE KEX\0" "YI SYLLABLE KI\0" "YI SYLLABLE KIE\0" "YI SYLLABLE KIEP\0" "YI SYLLABLE KIEX\0" "YI SYLLABLE KIP\0" "YI SYLLABLE KIT\0" "YI SYLLABLE KIX\0" "YI SYLLABLE KO\0" "YI SYLLABLE KOP\0" "YI SYLLABLE KOT\0" "YI SYLLABLE KOX\0" "YI SYLLABLE KU\0" "YI SYLLABLE KUO\0" "YI SYLLABLE KUOP\0" "YI SYLLABLE KUOX\0" "YI SYLLABLE KUP\0" "YI SYLLABLE KUR\0" "YI SYLLABLE KURX\0" "YI SYLLABLE KUT\0" "YI SYLLABLE KUX\0" "YI SYLLABLE LA\0" "YI SYLLABLE LAP\0" "YI SYLLABLE LAT\0" "YI SYLLABLE LAX\0" "YI SYLLABLE LE\0" "YI SYLLABLE LEP\0" "YI SYLLABLE LEX\0" "YI SYLLABLE LI\0" "YI SYLLABLE LIE\0" "YI SYLLABLE LIEP\0" "YI SYLLABLE LIET\0" "YI SYLLABLE LIEX\0" "YI SYLLABLE LIP\0" "YI SYLLABLE LIT\0" "YI SYLLABLE LIX\0" "YI SYLLABLE LO\0" "YI SYLLABLE LOP\0" "YI SYLLABLE LOT\0" "YI SYLLABLE LOX\0" "YI SYLLABLE LU\0" "YI SYLLABLE LUO\0" "YI SYLLABLE LUOP\0" "YI SYLLABLE LUOT\0" "YI SYLLABLE LUOX\0" "YI SYLLABLE LUP\0" "YI SYLLABLE LUR\0" "YI SYLLABLE LURX\0" "YI SYLLABLE LUT\0" "YI SYLLABLE LUX\0" "YI SYLLABLE LY\0" "YI SYLLABLE LYP\0" "YI SYLLABLE LYR\0" "YI SYLLABLE LYRX\0" "YI SYLLABLE LYT\0" "YI SYLLABLE LYX\0" "YI SYLLABLE MA\0" "YI SYLLABLE MAP\0" "YI SYLLABLE MAT\0" "YI SYLLABLE MAX\0" "YI SYLLABLE ME\0" "YI SYLLABLE MEX\0" "YI SYLLABLE MGA\0" "YI SYLLABLE MGAP\0" "YI SYLLABLE MGAT\0" "YI SYLLABLE MGAX\0" "YI SYLLABLE MGE\0" "YI SYLLABLE MGEP\0" "YI SYLLABLE MGEX\0" "YI SYLLABLE MGIE\0" "YI SYLLABLE MGIEX\0" "YI SYLLABLE MGO\0" "YI SYLLABLE MGOP\0" "YI SYLLABLE MGOT\0" "YI SYLLABLE MGOX\0" "YI SYLLABLE MGU\0" "YI SYLLABLE MGUO\0" "YI SYLLABLE MGUOP\0" "YI SYLLABLE MGUOX\0" "YI SYLLABLE MGUP\0" "YI SYLLABLE MGUR\0" "YI SYLLABLE MGURX\0" "YI SYLLABLE MGUT\0" "YI SYLLABLE MGUX\0" "YI SYLLABLE MI\0" "YI SYLLABLE MIE\0" "YI SYLLABLE MIEP\0" "YI SYLLABLE MIEX\0" "YI SYLLABLE MIP\0" "YI SYLLABLE MIT\0" "YI SYLLABLE MIX\0" "YI SYLLABLE MO\0" "YI SYLLABLE MOP\0" "YI SYLLABLE MOT\0" "YI SYLLABLE MOX\0" "YI SYLLABLE MU\0" "YI SYLLABLE MUO\0" "YI SYLLABLE MUOP\0" "YI SYLLABLE MUOT\0" "YI SYLLABLE MUOX\0" "YI SYLLABLE MUP\0" "YI SYLLABLE MUR\0" "YI SYLLABLE MURX\0" "YI SYLLABLE MUT\0" "YI SYLLABLE MUX\0" "YI SYLLABLE MY\0" "YI SYLLABLE MYP\0" "YI SYLLABLE MYT\0" "YI SYLLABLE MYX\0" "YI SYLLABLE NA\0" "YI SYLLABLE NAP\0" "YI SYLLABLE NAX\0" "YI SYLLABLE NBA\0" "YI SYLLABLE NBAP\0" "YI SYLLABLE NBAT\0" "YI SYLLABLE NBAX\0" "YI SYLLABLE NBI\0" "YI SYLLABLE NBIE\0" "YI SYLLABLE NBIEP\0" "YI SYLLABLE NBIEX\0" "YI SYLLABLE NBIP\0" "YI SYLLABLE NBIT\0" "YI SYLLABLE NBIX\0" "YI SYLLABLE NBO\0" "YI SYLLABLE NBOP\0" "YI SYLLABLE NBOT\0" "YI SYLLABLE NBOX\0" "YI SYLLABLE NBU\0" "YI SYLLABLE NBUP\0" "YI SYLLABLE NBUR\0" "YI SYLLABLE NBURX\0" "YI SYLLABLE NBUT\0" "YI SYLLABLE NBUX\0" "YI SYLLABLE NBY\0" "YI SYLLABLE NBYP\0" "YI SYLLABLE NBYR\0" "YI SYLLABLE NBYRX\0" "YI SYLLABLE NBYT\0" "YI SYLLABLE NBYX\0" "YI SYLLABLE NDA\0" "YI SYLLABLE NDAP\0" "YI SYLLABLE NDAT\0" "YI SYLLABLE NDAX\0" "YI SYLLABLE NDE\0" "YI SYLLABLE NDEP\0" "YI SYLLABLE NDEX\0" "YI SYLLABLE NDI\0" "YI SYLLABLE NDIE\0" "YI SYLLABLE NDIEX\0" "YI SYLLABLE NDIP\0" "YI SYLLABLE NDIT\0" "YI SYLLABLE NDIX\0" "YI SYLLABLE NDO\0" "YI SYLLABLE NDOP\0" "YI SYLLABLE NDOT\0" "YI SYLLABLE NDOX\0" "YI SYLLABLE NDU\0" "YI SYLLABLE NDUP\0" "YI SYLLABLE NDUR\0" "YI SYLLABLE NDURX\0" "YI SYLLABLE NDUT\0" "YI SYLLABLE NDUX\0" "YI SYLLABLE NE\0" "YI SYLLABLE NEP\0" "YI SYLLABLE NEX\0" "YI SYLLABLE NGA\0" "YI SYLLABLE NGAP\0" "YI SYLLABLE NGAT\0" "YI SYLLABLE NGAX\0" "YI SYLLABLE NGE\0" "YI SYLLABLE NGEP\0" "YI SYLLABLE NGEX\0" "YI SYLLABLE NGIE\0" "YI SYLLABLE NGIEP\0" "YI SYLLABLE NGIEX\0" "YI SYLLABLE NGO\0" "YI SYLLABLE NGOP\0" "YI SYLLABLE NGOT\0" "YI SYLLABLE NGOX\0" "YI SYLLABLE NGUO\0" "YI SYLLABLE NGUOT\0" "YI SYLLABLE NGUOX\0" "YI SYLLABLE NI\0" "YI SYLLABLE NIE\0" "YI SYLLABLE NIEP\0" "YI SYLLABLE NIEX\0" "YI SYLLABLE NIP\0" "YI SYLLABLE NIT\0" "YI SYLLABLE NIX\0" "YI SYLLABLE NJI\0" "YI SYLLABLE NJIE\0" "YI SYLLABLE NJIEP\0" "YI SYLLABLE NJIET\0" "YI SYLLABLE NJIEX\0" "YI SYLLABLE NJIP\0" "YI SYLLABLE NJIT\0" "YI SYLLABLE NJIX\0" "YI SYLLABLE NJO\0" "YI SYLLABLE NJOP\0" "YI SYLLABLE NJOT\0" "YI SYLLABLE NJOX\0" "YI SYLLABLE NJU\0" "YI SYLLABLE NJUO\0" "YI SYLLABLE NJUOX\0" "YI SYLLABLE NJUP\0" "YI SYLLABLE NJUR\0" "YI SYLLABLE NJURX\0" "YI SYLLABLE NJUX\0" "YI SYLLABLE NJY\0" "YI SYLLABLE NJYP\0" "YI SYLLABLE NJYR\0" "YI SYLLABLE NJYRX\0" "YI SYLLABLE NJYT\0" "YI SYLLABLE NJYX\0" "YI SYLLABLE NO\0" "YI SYLLABLE NOP\0" "YI SYLLABLE NOT\0" "YI SYLLABLE NOX\0" "YI SYLLABLE NRA\0" "YI SYLLABLE NRAP\0" "YI SYLLABLE NRAT\0" "YI SYLLABLE NRAX\0" "YI SYLLABLE NRE\0" "YI SYLLABLE NREP\0" "YI SYLLABLE NRET\0" "YI SYLLABLE NREX\0" "YI SYLLABLE NRO\0" "YI SYLLABLE NROP\0" "YI SYLLABLE NROX\0" "YI SYLLABLE NRU\0" "YI SYLLABLE NRUP\0" "YI SYLLABLE NRUR\0" "YI SYLLABLE NRURX\0" "YI SYLLABLE NRUT\0" "YI SYLLABLE NRUX\0" "YI SYLLABLE NRY\0" "YI SYLLABLE NRYP\0" "YI SYLLABLE NRYR\0" "YI SYLLABLE NRYRX\0" "YI SYLLABLE NRYT\0" "YI SYLLABLE NRYX\0" "YI SYLLABLE NU\0" "YI SYLLABLE NUO\0" "YI SYLLABLE NUOP\0" "YI SYLLABLE NUOX\0" "YI SYLLABLE NUP\0" "YI SYLLABLE NUR\0" "YI SYLLABLE NURX\0" "YI SYLLABLE NUT\0" "YI SYLLABLE NUX\0" "YI SYLLABLE NYI\0" "YI SYLLABLE NYIE\0" "YI SYLLABLE NYIEP\0" "YI SYLLABLE NYIET\0" "YI SYLLABLE NYIEX\0" "YI SYLLABLE NYIP\0" "YI SYLLABLE NYIT\0" "YI SYLLABLE NYIX\0" "YI SYLLABLE NYO\0" "YI SYLLABLE NYOP\0" "YI SYLLABLE NYOT\0" "YI SYLLABLE NYOX\0" "YI SYLLABLE NYU\0" "YI SYLLABLE NYUO\0" "YI SYLLABLE NYUOP\0" "YI SYLLABLE NYUOX\0" "YI SYLLABLE NYUP\0" "YI SYLLABLE NYUT\0" "YI SYLLABLE NYUX\0" "YI SYLLABLE NZA\0" "YI SYLLABLE NZAP\0" "YI SYLLABLE NZAT\0" "YI SYLLABLE NZAX\0" "YI SYLLABLE NZE\0" "YI SYLLABLE NZEX\0" "YI SYLLABLE NZI\0" "YI SYLLABLE NZIE\0" "YI SYLLABLE NZIEP\0" "YI SYLLABLE NZIEX\0" "YI SYLLABLE NZIP\0" "YI SYLLABLE NZIT\0" "YI SYLLABLE NZIX\0" "YI SYLLABLE NZOP\0" "YI SYLLABLE NZOX\0" "YI SYLLABLE NZU\0" "YI SYLLABLE NZUO\0" "YI SYLLABLE NZUOX\0" "YI SYLLABLE NZUP\0" "YI SYLLABLE NZUR\0" "YI SYLLABLE NZURX\0" "YI SYLLABLE NZUX\0" "YI SYLLABLE NZY\0" "YI SYLLABLE NZYP\0" "YI SYLLABLE NZYR\0" "YI SYLLABLE NZYRX\0" "YI SYLLABLE NZYT\0" "YI SYLLABLE NZYX\0" "YI SYLLABLE O\0" "YI SYLLABLE OP\0" "YI SYLLABLE OT\0" "YI SYLLABLE OX\0" "YI SYLLABLE PA\0" "YI SYLLABLE PAP\0" "YI SYLLABLE PAT\0" "YI SYLLABLE PAX\0" "YI SYLLABLE PI\0" "YI SYLLABLE PIE\0" "YI SYLLABLE PIEP\0" "YI SYLLABLE PIEX\0" "YI SYLLABLE PIP\0" "YI SYLLABLE PIT\0" "YI SYLLABLE PIX\0" "YI SYLLABLE PO\0" "YI SYLLABLE POP\0" "YI SYLLABLE POT\0" "YI SYLLABLE POX\0" "YI SYLLABLE PU\0" "YI SYLLABLE PUO\0" "YI SYLLABLE PUOP\0" "YI SYLLABLE PUOX\0" "YI SYLLABLE PUP\0" "YI SYLLABLE PUR\0" "YI SYLLABLE PURX\0" "YI SYLLABLE PUT\0" "YI SYLLABLE PUX\0" "YI SYLLABLE PY\0" "YI SYLLABLE PYP\0" "YI SYLLABLE PYR\0" "YI SYLLABLE PYRX\0" "YI SYLLABLE PYT\0" "YI SYLLABLE PYX\0" "YI SYLLABLE QI\0" "YI SYLLABLE QIE\0" "YI SYLLABLE QIEP\0" "YI SYLLABLE QIET\0" "YI SYLLABLE QIEX\0" "YI SYLLABLE QIP\0" "YI SYLLABLE QIT\0" "YI SYLLABLE QIX\0" "YI SYLLABLE QO\0" "YI SYLLABLE QOP\0" "YI SYLLABLE QOT\0" "YI SYLLABLE QOX\0" "YI SYLLABLE QU\0" "YI SYLLABLE QUO\0" "YI SYLLABLE QUOP\0" "YI SYLLABLE QUOT\0" "YI SYLLABLE QUOX\0" "YI SYLLABLE QUP\0" "YI SYLLABLE QUR\0" "YI SYLLABLE QURX\0" "YI SYLLABLE QUT\0" "YI SYLLABLE QUX\0" "YI SYLLABLE QY\0" "YI SYLLABLE QYP\0" "YI SYLLABLE QYR\0" "YI SYLLABLE QYRX\0" "YI SYLLABLE QYT\0" "YI SYLLABLE QYX\0" "YI SYLLABLE RA\0" "YI SYLLABLE RAP\0" "YI SYLLABLE RAT\0" "YI SYLLABLE RAX\0" "YI SYLLABLE RE\0" "YI SYLLABLE REP\0" "YI SYLLABLE REX\0" "YI SYLLABLE RO\0" "YI SYLLABLE ROP\0" "YI SYLLABLE ROT\0" "YI SYLLABLE ROX\0" "YI SYLLABLE RRA\0" "YI SYLLABLE RRAX\0" "YI SYLLABLE RRE\0" "YI SYLLABLE RREP\0" "YI SYLLABLE RRET\0" "YI SYLLABLE RREX\0" "YI SYLLABLE RRO\0" "YI SYLLABLE RROP\0" "YI SYLLABLE RROT\0" "YI SYLLABLE RROX\0" "YI SYLLABLE RRU\0" "YI SYLLABLE RRUO\0" "YI SYLLABLE RRUOX\0" "YI SYLLABLE RRUP\0" "YI SYLLABLE RRUR\0" "YI SYLLABLE RRURX\0" "YI SYLLABLE RRUT\0" "YI SYLLABLE RRUX\0" "YI SYLLABLE RRY\0" "YI SYLLABLE RRYP\0" "YI SYLLABLE RRYR\0" "YI SYLLABLE RRYRX\0" "YI SYLLABLE RRYT\0" "YI SYLLABLE RRYX\0" "YI SYLLABLE RU\0" "YI SYLLABLE RUO\0" "YI SYLLABLE RUOP\0" "YI SYLLABLE RUOX\0" "YI SYLLABLE RUP\0" "YI SYLLABLE RUR\0" "YI SYLLABLE RURX\0" "YI SYLLABLE RUT\0" "YI SYLLABLE RUX\0" "YI SYLLABLE RY\0" "YI SYLLABLE RYP\0" "YI SYLLABLE RYR\0" "YI SYLLABLE RYRX\0" "YI SYLLABLE RYT\0" "YI SYLLABLE RYX\0" "YI SYLLABLE SA\0" "YI SYLLABLE SAP\0" "YI SYLLABLE SAT\0" "YI SYLLABLE SAX\0" "YI SYLLABLE SE\0" "YI SYLLABLE SEP\0" "YI SYLLABLE SEX\0" "YI SYLLABLE SHA\0" "YI SYLLABLE SHAP\0" "YI SYLLABLE SHAT\0" "YI SYLLABLE SHAX\0" "YI SYLLABLE SHE\0" "YI SYLLABLE SHEP\0" "YI SYLLABLE SHET\0" "YI SYLLABLE SHEX\0" "YI SYLLABLE SHO\0" "YI SYLLABLE SHOP\0" "YI SYLLABLE SHOT\0" "YI SYLLABLE SHOX\0" "YI SYLLABLE SHU\0" "YI SYLLABLE SHUO\0" "YI SYLLABLE SHUOP\0" "YI SYLLABLE SHUOX\0" "YI SYLLABLE SHUP\0" "YI SYLLABLE SHUR\0" "YI SYLLABLE SHURX\0" "YI SYLLABLE SHUT\0" "YI SYLLABLE SHUX\0" "YI SYLLABLE SHY\0" "YI SYLLABLE SHYP\0" "YI SYLLABLE SHYR\0" "YI SYLLABLE SHYRX\0" "YI SYLLABLE SHYT\0" "YI SYLLABLE SHYX\0" "YI SYLLABLE SI\0" "YI SYLLABLE SIE\0" "YI SYLLABLE SIEP\0" "YI SYLLABLE SIEX\0" "YI SYLLABLE SIP\0" "YI SYLLABLE SIT\0" "YI SYLLABLE SIX\0" "YI SYLLABLE SO\0" "YI SYLLABLE SOP\0" "YI SYLLABLE SOT\0" "YI SYLLABLE SOX\0" "YI SYLLABLE SSA\0" "YI SYLLABLE SSAP\0" "YI SYLLABLE SSAT\0" "YI SYLLABLE SSAX\0" "YI SYLLABLE SSE\0" "YI SYLLABLE SSEP\0" "YI SYLLABLE SSEX\0" "YI SYLLABLE SSI\0" "YI SYLLABLE SSIE\0" "YI SYLLABLE SSIEP\0" "YI SYLLABLE SSIEX\0" "YI SYLLABLE SSIP\0" "YI SYLLABLE SSIT\0" "YI SYLLABLE SSIX\0" "YI SYLLABLE SSO\0" "YI SYLLABLE SSOP\0" "YI SYLLABLE SSOT\0" "YI SYLLABLE SSOX\0" "YI SYLLABLE SSU\0" "YI SYLLABLE SSUP\0" "YI SYLLABLE SSUT\0" "YI SYLLABLE SSUX\0" "YI SYLLABLE SSY\0" "YI SYLLABLE SSYP\0" "YI SYLLABLE SSYR\0" "YI SYLLABLE SSYRX\0" "YI SYLLABLE SSYT\0" "YI SYLLABLE SSYX\0" "YI SYLLABLE SU\0" "YI SYLLABLE SUO\0" "YI SYLLABLE SUOP\0" "YI SYLLABLE SUOX\0" "YI SYLLABLE SUP\0" "YI SYLLABLE SUR\0" "YI SYLLABLE SURX\0" "YI SYLLABLE SUT\0" "YI SYLLABLE SUX\0" "YI SYLLABLE SY\0" "YI SYLLABLE SYP\0" "YI SYLLABLE SYR\0" "YI SYLLABLE SYRX\0" "YI SYLLABLE SYT\0" "YI SYLLABLE SYX\0" "YI SYLLABLE TA\0" "YI SYLLABLE TAP\0" "YI SYLLABLE TAT\0" "YI SYLLABLE TAX\0" "YI SYLLABLE TE\0" "YI SYLLABLE TEP\0" "YI SYLLABLE TEX\0" "YI SYLLABLE TI\0" "YI SYLLABLE TIE\0" "YI SYLLABLE TIEP\0" "YI SYLLABLE TIEX\0" "YI SYLLABLE TIP\0" "YI SYLLABLE TIT\0" "YI SYLLABLE TIX\0" "YI SYLLABLE TO\0" "YI SYLLABLE TOP\0" "YI SYLLABLE TOT\0" "YI SYLLABLE TOX\0" "YI SYLLABLE TU\0" "YI SYLLABLE TUO\0" "YI SYLLABLE TUOP\0" "YI SYLLABLE TUOT\0" "YI SYLLABLE TUOX\0" "YI SYLLABLE TUP\0" "YI SYLLABLE TUR\0" "YI SYLLABLE TURX\0" "YI SYLLABLE TUT\0" "YI SYLLABLE TUX\0" "YI SYLLABLE UO\0" "YI SYLLABLE UOP\0" "YI SYLLABLE UOX\0" "YI SYLLABLE VA\0" "YI SYLLABLE VAP\0" "YI SYLLABLE VAT\0" "YI SYLLABLE VAX\0" "YI SYLLABLE VEP\0" "YI SYLLABLE VEX\0" "YI SYLLABLE VI\0" "YI SYLLABLE VIE\0" "YI SYLLABLE VIEP\0" "YI SYLLABLE VIET\0" "YI SYLLABLE VIEX\0" "YI SYLLABLE VIP\0" "YI SYLLABLE VIT\0" "YI SYLLABLE VIX\0" "YI SYLLABLE VO\0" "YI SYLLABLE VOP\0" "YI SYLLABLE VOT\0" "YI SYLLABLE VOX\0" "YI SYLLABLE VU\0" "YI SYLLABLE VUP\0" "YI SYLLABLE VUR\0" "YI SYLLABLE VURX\0" "YI SYLLABLE VUT\0" "YI SYLLABLE VUX\0" "YI SYLLABLE VY\0" "YI SYLLABLE VYP\0" "YI SYLLABLE VYR\0" "YI SYLLABLE VYRX\0" "YI SYLLABLE VYT\0" "YI SYLLABLE VYX\0" "YI SYLLABLE WA\0" "YI SYLLABLE WAP\0" "YI SYLLABLE WAT\0" "YI SYLLABLE WAX\0" "YI SYLLABLE WE\0" "YI SYLLABLE WEP\0" "YI SYLLABLE WEX\0" "YI SYLLABLE WO\0" "YI SYLLABLE WOP\0" "YI SYLLABLE WOX\0" "YI SYLLABLE WU\0" "YI SYLLABLE WUO\0" "YI SYLLABLE WUOP\0" "YI SYLLABLE WUOX\0" "YI SYLLABLE XI\0" "YI SYLLABLE XIE\0" "YI SYLLABLE XIEP\0" "YI SYLLABLE XIET\0" "YI SYLLABLE XIEX\0" "YI SYLLABLE XIP\0" "YI SYLLABLE XIT\0" "YI SYLLABLE XIX\0" "YI SYLLABLE XO\0" "YI SYLLABLE XOP\0" "YI SYLLABLE XOT\0" "YI SYLLABLE XOX\0" "YI SYLLABLE XUO\0" "YI SYLLABLE XUOX\0" "YI SYLLABLE XY\0" "YI SYLLABLE XYP\0" "YI SYLLABLE XYR\0" "YI SYLLABLE XYRX\0" "YI SYLLABLE XYT\0" "YI SYLLABLE XYX\0" "YI SYLLABLE YI\0" "YI SYLLABLE YIE\0" "YI SYLLABLE YIEP\0" "YI SYLLABLE YIET\0" "YI SYLLABLE YIEX\0" "YI SYLLABLE YIP\0" "YI SYLLABLE YIT\0" "YI SYLLABLE YIX\0" "YI SYLLABLE YO\0" "YI SYLLABLE YOP\0" "YI SYLLABLE YOT\0" "YI SYLLABLE YOX\0" "YI SYLLABLE YU\0" "YI SYLLABLE YUO\0" "YI SYLLABLE YUOP\0" "YI SYLLABLE YUOT\0" "YI SYLLABLE YUOX\0" "YI SYLLABLE YUP\0" "YI SYLLABLE YUR\0" "YI SYLLABLE YURX\0" "YI SYLLABLE YUT\0" "YI SYLLABLE YUX\0" "YI SYLLABLE YY\0" "YI SYLLABLE YYP\0" "YI SYLLABLE YYR\0" "YI SYLLABLE YYRX\0" "YI SYLLABLE YYT\0" "YI SYLLABLE YYX\0" "YI SYLLABLE ZA\0" "YI SYLLABLE ZAP\0" "YI SYLLABLE ZAT\0" "YI SYLLABLE ZAX\0" "YI SYLLABLE ZE\0" "YI SYLLABLE ZEP\0" "YI SYLLABLE ZEX\0" "YI SYLLABLE ZHA\0" "YI SYLLABLE ZHAP\0" "YI SYLLABLE ZHAT\0" "YI SYLLABLE ZHAX\0" "YI SYLLABLE ZHE\0" "YI SYLLABLE ZHEP\0" "YI SYLLABLE ZHET\0" "YI SYLLABLE ZHEX\0" "YI SYLLABLE ZHO\0" "YI SYLLABLE ZHOP\0" "YI SYLLABLE ZHOT\0" "YI SYLLABLE ZHOX\0" "YI SYLLABLE ZHU\0" "YI SYLLABLE ZHUO\0" "YI SYLLABLE ZHUOP\0" "YI SYLLABLE ZHUOX\0" "YI SYLLABLE ZHUP\0" "YI SYLLABLE ZHUR\0" "YI SYLLABLE ZHURX\0" "YI SYLLABLE ZHUT\0" "YI SYLLABLE ZHUX\0" "YI SYLLABLE ZHY\0" "YI SYLLABLE ZHYP\0" "YI SYLLABLE ZHYR\0" "YI SYLLABLE ZHYRX\0" "YI SYLLABLE ZHYT\0" "YI SYLLABLE ZHYX\0" "YI SYLLABLE ZI\0" "YI SYLLABLE ZIE\0" "YI SYLLABLE ZIEP\0" "YI SYLLABLE ZIEX\0" "YI SYLLABLE ZIP\0" "YI SYLLABLE ZIT\0" "YI SYLLABLE ZIX\0" "YI SYLLABLE ZO\0" "YI SYLLABLE ZOP\0" "YI SYLLABLE ZOT\0" "YI SYLLABLE ZOX\0" "YI SYLLABLE ZU\0" "YI SYLLABLE ZUO\0" "YI SYLLABLE ZUOP\0" "YI SYLLABLE ZUOX\0" "YI SYLLABLE ZUP\0" "YI SYLLABLE ZUR\0" "YI SYLLABLE ZURX\0" "YI SYLLABLE ZUT\0" "YI SYLLABLE ZUX\0" "YI SYLLABLE ZY\0" "YI SYLLABLE ZYP\0" "YI SYLLABLE ZYR\0" "YI SYLLABLE ZYRX\0" "YI SYLLABLE ZYT\0" "YI SYLLABLE ZYX\0" "YI SYLLABLE ZZA\0" "YI SYLLABLE ZZAP\0" "YI SYLLABLE ZZAT\0" "YI SYLLABLE ZZAX\0" "YI SYLLABLE ZZE\0" "YI SYLLABLE ZZEP\0" "YI SYLLABLE ZZEX\0" "YI SYLLABLE ZZI\0" "YI SYLLABLE ZZIE\0" "YI SYLLABLE ZZIEP\0" "YI SYLLABLE ZZIET\0" "YI SYLLABLE ZZIEX\0" "YI SYLLABLE ZZIP\0" "YI SYLLABLE ZZIT\0" "YI SYLLABLE ZZIX\0" "YI SYLLABLE ZZO\0" "YI SYLLABLE ZZOP\0" "YI SYLLABLE ZZOX\0" "YI SYLLABLE ZZU\0" "YI SYLLABLE ZZUP\0" "YI SYLLABLE ZZUR\0" "YI SYLLABLE ZZURX\0" "YI SYLLABLE ZZUX\0" "YI SYLLABLE ZZY\0" "YI SYLLABLE ZZYP\0" "YI SYLLABLE ZZYR\0" "YI SYLLABLE ZZYRX\0" "YI SYLLABLE ZZYT\0" "YI SYLLABLE ZZYX\0" "YIN YANG\0" "Z NOTATION BAG MEMBERSHIP\0" "Z NOTATION DOMAIN ANTIRESTRICTION\0" "Z NOTATION LEFT BINDING BRACKET\0" "Z NOTATION LEFT IMAGE BRACKET\0" "Z NOTATION RANGE ANTIRESTRICTION\0" "Z NOTATION RELATIONAL COMPOSITION\0" "Z NOTATION RIGHT BINDING BRACKET\0" "Z NOTATION RIGHT IMAGE BRACKET\0" "Z NOTATION SCHEMA COMPOSITION\0" "Z NOTATION SCHEMA PIPING\0" "Z NOTATION SCHEMA PROJECTION\0" "Z NOTATION SPOT\0" "Z NOTATION TYPE COLON\0" "ZERO WIDTH JOINER\0" "ZERO WIDTH NO-BREAK SPACE\0" "ZERO WIDTH NON-JOINER\0" "ZERO WIDTH SPACE\0" ; typedef struct _UnicodeName UnicodeName; static const struct _UnicodeName { FcChar32 index; unsigned long name_offset; } unicode_names[] = { {0x0000, 724}, {0x0001, 724}, {0x0002, 724}, {0x0003, 724}, {0x0004, 724}, {0x0005, 724}, {0x0006, 724}, {0x0007, 724}, {0x0008, 724}, {0x0009, 724}, {0x000A, 724}, {0x000B, 724}, {0x000C, 724}, {0x000D, 724}, {0x000E, 724}, {0x000F, 724}, {0x0010, 724}, {0x0011, 724}, {0x0012, 724}, {0x0013, 724}, {0x0014, 724}, {0x0015, 724}, {0x0016, 724}, {0x0017, 724}, {0x0018, 724}, {0x0019, 724}, {0x001A, 724}, {0x001B, 724}, {0x001C, 724}, {0x001D, 724}, {0x001E, 724}, {0x001F, 724}, {0x0020, 554776}, {0x0021, 288755}, {0x0022, 532622}, {0x0023, 508900}, {0x0024, 242373}, {0x0025, 523975}, {0x0026, 6498}, {0x0027, 9377}, {0x0028, 417445}, {0x0029, 536507}, {0x002A, 53008}, {0x002B, 529302}, {0x002C, 185829}, {0x002D, 350321}, {0x002E, 290754}, {0x002F, 554314}, {0x0030, 240332}, {0x0031, 240090}, {0x0032, 240286}, {0x0033, 240234}, {0x0034, 239992}, {0x0035, 239943}, {0x0036, 240188}, {0x0037, 240136}, {0x0038, 239891}, {0x0039, 240041}, {0x003A, 177981}, {0x003B, 547776}, {0x003C, 423770}, {0x003D, 276838}, {0x003E, 301351}, {0x003F, 532579}, {0x0040, 185835}, {0x0041, 378991}, {0x0042, 380590}, {0x0043, 380861}, {0x0044, 381277}, {0x0045, 381789}, {0x0046, 383147}, {0x0047, 383241}, {0x0048, 383686}, {0x0049, 384126}, {0x004A, 385024}, {0x004B, 385121}, {0x004C, 385573}, {0x004D, 386164}, {0x004E, 386403}, {0x004F, 386987}, {0x0050, 388779}, {0x0051, 389074}, {0x0052, 389194}, {0x0053, 389817}, {0x0054, 390459}, {0x0055, 391397}, {0x0056, 392706}, {0x0057, 392962}, {0x0058, 393265}, {0x0059, 393364}, {0x005A, 393843}, {0x005B, 418071}, {0x005C, 534955}, {0x005D, 536748}, {0x005E, 139521}, {0x005F, 432813}, {0x0060, 300411}, {0x0061, 396413}, {0x0062, 398027}, {0x0063, 398421}, {0x0064, 398951}, {0x0065, 399851}, {0x0066, 401436}, {0x0067, 401634}, {0x0068, 402092}, {0x0069, 402605}, {0x006A, 403492}, {0x006B, 403654}, {0x006C, 404144}, {0x006D, 405156}, {0x006E, 405482}, {0x006F, 406210}, {0x0070, 408007}, {0x0071, 408387}, {0x0072, 408598}, {0x0073, 409648}, {0x0074, 410685}, {0x0075, 412542}, {0x0076, 413909}, {0x0077, 414256}, {0x0078, 414554}, {0x0079, 414686}, {0x007A, 415174}, {0x007B, 416956}, {0x007C, 610683}, {0x007D, 536038}, {0x007E, 592522}, {0x007F, 724}, {0x0080, 724}, {0x0081, 724}, {0x0082, 724}, {0x0083, 724}, {0x0084, 724}, {0x0085, 724}, {0x0086, 724}, {0x0087, 724}, {0x0088, 724}, {0x0089, 724}, {0x008A, 724}, {0x008B, 724}, {0x008C, 724}, {0x008D, 724}, {0x008E, 724}, {0x008F, 724}, {0x0090, 724}, {0x0091, 724}, {0x0092, 724}, {0x0093, 724}, {0x0094, 724}, {0x0095, 724}, {0x0096, 724}, {0x0097, 724}, {0x0098, 724}, {0x0099, 724}, {0x009A, 724}, {0x009B, 724}, {0x009C, 724}, {0x009D, 724}, {0x009E, 724}, {0x009F, 724}, {0x00A0, 507228}, {0x00A1, 359126}, {0x00A2, 128767}, {0x00A3, 529863}, {0x00A4, 219757}, {0x00A5, 614934}, {0x00A6, 96600}, {0x00A7, 547720}, {0x00A8, 239615}, {0x00A9, 190349}, {0x00AA, 289786}, {0x00AB, 418907}, {0x00AC, 508507}, {0x00AD, 554262}, {0x00AE, 534130}, {0x00AF, 434334}, {0x00B0, 233321}, {0x00B1, 529634}, {0x00B2, 564351}, {0x00B3, 564333}, {0x00B4, 813}, {0x00B5, 476900}, {0x00B6, 527460}, {0x00B7, 476933}, {0x00B8, 128759}, {0x00B9, 564231}, {0x00BA, 438553}, {0x00BB, 537575}, {0x00BC, 611262}, {0x00BD, 611211}, {0x00BE, 611485}, {0x00BF, 359226}, {0x00C0, 379891}, {0x00C1, 379014}, {0x00C2, 379345}, {0x00C3, 380239}, {0x00C4, 379638}, {0x00C5, 380077}, {0x00C6, 380297}, {0x00C7, 380952}, {0x00C8, 382489}, {0x00C9, 381812}, {0x00CA, 381996}, {0x00CB, 382334}, {0x00CC, 384493}, {0x00CD, 384149}, {0x00CE, 384251}, {0x00CF, 384290}, {0x00D0, 383027}, {0x00D1, 386929}, {0x00D2, 387699}, {0x00D3, 387010}, {0x00D4, 387112}, {0x00D5, 388480}, {0x00D6, 387405}, {0x00D7, 488261}, {0x00D8, 388400}, {0x00D9, 392028}, {0x00DA, 391447}, {0x00DB, 391549}, {0x00DC, 391633}, {0x00DD, 393387}, {0x00DE, 390907}, {0x00DF, 410404}, {0x00E0, 397271}, {0x00E1, 396434}, {0x00E2, 396749}, {0x00E3, 397684}, {0x00E4, 397030}, {0x00E5, 397530}, {0x00E6, 397738}, {0x00E7, 398506}, {0x00E8, 400517}, {0x00E9, 399872}, {0x00EA, 400046}, {0x00EB, 400370}, {0x00EC, 402916}, {0x00ED, 402626}, {0x00EE, 402722}, {0x00EF, 402759}, {0x00F0, 401215}, {0x00F1, 406133}, {0x00F2, 406888}, {0x00F3, 406231}, {0x00F4, 406327}, {0x00F5, 407634}, {0x00F6, 406608}, {0x00F7, 241971}, {0x00F8, 407558}, {0x00F9, 413141}, {0x00FA, 412588}, {0x00FB, 412684}, {0x00FC, 412764}, {0x00FD, 414707}, {0x00FE, 411399}, {0x00FF, 414776}, {0x0100, 380007}, {0x0101, 397381}, {0x0102, 379048}, {0x0103, 396466}, {0x0104, 380042}, {0x0105, 397414}, {0x0106, 380884}, {0x0107, 398442}, {0x0108, 381034}, {0x0109, 398584}, {0x010A, 381073}, {0x010B, 398652}, {0x010C, 380918}, {0x010D, 398474}, {0x010E, 381300}, {0x010F, 398972}, {0x0110, 381660}, {0x0111, 399370}, {0x0112, 382605}, {0x0113, 400627}, {0x0114, 381846}, {0x0115, 399904}, {0x0116, 382372}, {0x0117, 400406}, {0x0118, 382730}, {0x0119, 400778}, {0x011A, 381880}, {0x011B, 399936}, {0x011C, 383402}, {0x011D, 401785}, {0x011E, 383298}, {0x011F, 401687}, {0x0120, 383441}, {0x0121, 401822}, {0x0122, 383366}, {0x0123, 401751}, {0x0124, 383819}, {0x0125, 402217}, {0x0126, 384010}, {0x0127, 402466}, {0x0128, 384714}, {0x0129, 403166}, {0x012A, 384609}, {0x012B, 403026}, {0x012C, 384183}, {0x012D, 402658}, {0x012E, 384644}, {0x012F, 403059}, {0x0130, 384376}, {0x0131, 399554}, {0x0132, 394233}, {0x0133, 415814}, {0x0134, 385047}, {0x0135, 403545}, {0x0136, 385212}, {0x0137, 403739}, {0x0138, 404121}, {0x0139, 385596}, {0x013A, 404165}, {0x013B, 385696}, {0x013C, 404290}, {0x013D, 385662}, {0x013E, 404258}, {0x013F, 385982}, {0x0140, 404593}, {0x0141, 386105}, {0x0142, 404799}, {0x0143, 386426}, {0x0144, 405547}, {0x0145, 386494}, {0x0146, 405611}, {0x0147, 386460}, {0x0148, 405579}, {0x0149, 405503}, {0x014A, 382953}, {0x014B, 401030}, {0x014C, 388153}, {0x014D, 407362}, {0x014E, 387044}, {0x014F, 406263}, {0x0150, 387617}, {0x0151, 406810}, {0x0152, 394259}, {0x0153, 415868}, {0x0154, 389248}, {0x0155, 408648}, {0x0156, 389316}, {0x0157, 408712}, {0x0158, 389282}, {0x0159, 408680}, {0x015A, 389840}, {0x015B, 409669}, {0x015C, 390040}, {0x015D, 409859}, {0x015E, 390004}, {0x015F, 409825}, {0x0160, 389922}, {0x0161, 409747}, {0x0162, 390516}, {0x0163, 410738}, {0x0164, 390482}, {0x0165, 410706}, {0x0166, 390872}, {0x0167, 411221}, {0x0168, 392559}, {0x0169, 413687}, {0x016A, 392401}, {0x016B, 413496}, {0x016C, 391481}, {0x016D, 412620}, {0x016E, 392520}, {0x016F, 413650}, {0x0170, 391946}, {0x0171, 413063}, {0x0172, 392485}, {0x0173, 413576}, {0x0174, 393019}, {0x0175, 414309}, {0x0176, 393421}, {0x0177, 414739}, {0x0178, 393460}, {0x0179, 393866}, {0x017A, 415195}, {0x017B, 394011}, {0x017C, 415363}, {0x017D, 393900}, {0x017E, 415227}, {0x017F, 404916}, {0x0180, 398266}, {0x0181, 380689}, {0x0182, 380796}, {0x0183, 398299}, {0x0184, 391061}, {0x0185, 411545}, {0x0186, 388727}, {0x0187, 381111}, {0x0188, 398688}, {0x0189, 380392}, {0x018A, 381491}, {0x018B, 381695}, {0x018C, 399434}, {0x018D, 411801}, {0x018E, 389752}, {0x018F, 390359}, {0x0190, 388699}, {0x0191, 383208}, {0x0192, 401493}, {0x0193, 383479}, {0x0194, 383625}, {0x0195, 402583}, {0x0196, 384974}, {0x0197, 384679}, {0x0198, 385368}, {0x0199, 403887}, {0x019A, 404197}, {0x019B, 404832}, {0x019C, 391313}, {0x019D, 386723}, {0x019E, 405932}, {0x019F, 388278}, {0x01A0, 387772}, {0x01A1, 406957}, {0x01A2, 388651}, {0x01A3, 407797}, {0x01A4, 388911}, {0x01A5, 408131}, {0x01A6, 396315}, {0x01A7, 391091}, {0x01A8, 411573}, {0x01A9, 382978}, {0x01AA, 394876}, {0x01AB, 411141}, {0x01AC, 390757}, {0x01AD, 411034}, {0x01AE, 390829}, {0x01AF, 392101}, {0x01B0, 413210}, {0x01B1, 392677}, {0x01B2, 392811}, {0x01B3, 393608}, {0x01B4, 414916}, {0x01B5, 394159}, {0x01B6, 415622}, {0x01B7, 383052}, {0x01B8, 383077}, {0x01B9, 401261}, {0x01BA, 401403}, {0x01BB, 396230}, {0x01BC, 391030}, {0x01BD, 411516}, {0x01BE, 394732}, {0x01BF, 396297}, {0x01C0, 394607}, {0x01C1, 394779}, {0x01C2, 394485}, {0x01C3, 394847}, {0x01C4, 381754}, {0x01C5, 381606}, {0x01C6, 399818}, {0x01C7, 386140}, {0x01C8, 386062}, {0x01C9, 404894}, {0x01CA, 386963}, {0x01CB, 386886}, {0x01CC, 406165}, {0x01CD, 379311}, {0x01CE, 396717}, {0x01CF, 384217}, {0x01D0, 402690}, {0x01D1, 387078}, {0x01D2, 406295}, {0x01D3, 391515}, {0x01D4, 412652}, {0x01D5, 391815}, {0x01D6, 412938}, {0x01D7, 391671}, {0x01D8, 412800}, {0x01D9, 391719}, {0x01DA, 412846}, {0x01DB, 391767}, {0x01DC, 412892}, {0x01DD, 411833}, {0x01DE, 379676}, {0x01DF, 397066}, {0x01E0, 379763}, {0x01E1, 397149}, {0x01E2, 380356}, {0x01E3, 397793}, {0x01E4, 383590}, {0x01E5, 402002}, {0x01E6, 383332}, {0x01E7, 401719}, {0x01E8, 385178}, {0x01E9, 403707}, {0x01EA, 388319}, {0x01EB, 407481}, {0x01EC, 388354}, {0x01ED, 407514}, {0x01EE, 383111}, {0x01EF, 401293}, {0x01F0, 403513}, {0x01F1, 381730}, {0x01F2, 381563}, {0x01F3, 399726}, {0x01F4, 383264}, {0x01F5, 401655}, {0x01F6, 384099}, {0x01F7, 393239}, {0x01F8, 386689}, {0x01F9, 405827}, {0x01FA, 380116}, {0x01FB, 397567}, {0x01FC, 380321}, {0x01FD, 397760}, {0x01FE, 388435}, {0x01FF, 407591}, {0x0200, 379850}, {0x0201, 397232}, {0x0202, 379964}, {0x0203, 397340}, {0x0204, 382448}, {0x0205, 400478}, {0x0206, 382562}, {0x0207, 400586}, {0x0208, 384452}, {0x0209, 402877}, {0x020A, 384566}, {0x020B, 402985}, {0x020C, 387658}, {0x020D, 406849}, {0x020E, 388029}, {0x020F, 407202}, {0x0210, 389477}, {0x0211, 408865}, {0x0212, 389518}, {0x0213, 408991}, {0x0214, 391987}, {0x0215, 413102}, {0x0216, 392358}, {0x0217, 413455}, {0x0218, 390079}, {0x0219, 409896}, {0x021A, 390597}, {0x021B, 410815}, {0x021C, 393817}, {0x021D, 415150}, {0x021E, 383749}, {0x021F, 402151}, {0x0220, 386800}, {0x0221, 399081}, {0x0222, 388755}, {0x0223, 407985}, {0x0224, 394087}, {0x0225, 415435}, {0x0226, 379725}, {0x0227, 397113}, {0x0228, 381914}, {0x0229, 399968}, {0x022A, 387443}, {0x022B, 406644}, {0x022C, 388606}, {0x022D, 407754}, {0x022E, 387492}, {0x022F, 406691}, {0x0230, 387530}, {0x0231, 406727}, {0x0232, 393713}, {0x0233, 415015}, {0x0234, 404367}, {0x0235, 405688}, {0x0236, 410853}, {0x0237, 399583}, {0x0238, 399467}, {0x0239, 408568}, {0x023A, 380204}, {0x023B, 381144}, {0x023C, 398719}, {0x023D, 385630}, {0x023E, 390637}, {0x023F, 410206}, {0x0240, 415655}, {0x0241, 383652}, {0x0242, 402060}, {0x0243, 380761}, {0x0244, 391420}, {0x0245, 391343}, {0x0246, 382765}, {0x0247, 400852}, {0x0248, 385086}, {0x0249, 403621}, {0x024A, 390415}, {0x024B, 408481}, {0x024C, 389643}, {0x024D, 409223}, {0x024E, 393748}, {0x024F, 415085}, {0x0250, 411712}, {0x0251, 397827}, {0x0252, 411769}, {0x0253, 398120}, {0x0254, 407913}, {0x0255, 398621}, {0x0256, 399403}, {0x0257, 399184}, {0x0258, 409385}, {0x0259, 410271}, {0x025A, 410296}, {0x025B, 407841}, {0x025C, 409415}, {0x025D, 409450}, {0x025E, 398817}, {0x025F, 399612}, {0x0260, 401858}, {0x0261, 410376}, {0x0262, 395256}, {0x0263, 402035}, {0x0264, 409287}, {0x0265, 411889}, {0x0266, 402398}, {0x0267, 402549}, {0x0268, 403133}, {0x0269, 403410}, {0x026A, 395353}, {0x026B, 404630}, {0x026C, 404227}, {0x026D, 404708}, {0x026E, 404870}, {0x026F, 412130}, {0x0270, 412158}, {0x0271, 405281}, {0x0272, 405859}, {0x0273, 406092}, {0x0274, 395577}, {0x0275, 398332}, {0x0276, 395635}, {0x0277, 398752}, {0x0278, 408364}, {0x0279, 412262}, {0x027A, 412328}, {0x027B, 412290}, {0x027C, 409069}, {0x027D, 409256}, {0x027E, 408904}, {0x027F, 409550}, {0x0280, 395758}, {0x0281, 395382}, {0x0282, 410056}, {0x0283, 401053}, {0x0284, 399653}, {0x0285, 410647}, {0x0286, 401076}, {0x0287, 412408}, {0x0288, 411180}, {0x0289, 412563}, {0x028A, 413843}, {0x028B, 414039}, {0x028C, 412436}, {0x028D, 412464}, {0x028E, 412492}, {0x028F, 396147}, {0x0290, 415581}, {0x0291, 415296}, {0x0292, 401238}, {0x0293, 401327}, {0x0294, 394633}, {0x0295, 394806}, {0x0296, 394697}, {0x0297, 396205}, {0x0298, 394546}, {0x0299, 395013}, {0x029A, 398784}, {0x029B, 395285}, {0x029C, 395324}, {0x029D, 403582}, {0x029E, 412074}, {0x029F, 395478}, {0x02A0, 408450}, {0x02A1, 394659}, {0x02A2, 394907}, {0x02A3, 399748}, {0x02A4, 399522}, {0x02A5, 399778}, {0x02A6, 411659}, {0x02A7, 411326}, {0x02A8, 411286}, {0x02A9, 401602}, {0x02AA, 405073}, {0x02AB, 405126}, {0x02AC, 394574}, {0x02AD, 394513}, {0x02AE, 411917}, {0x02AF, 411959}, {0x02B0, 481780}, {0x02B1, 481804}, {0x02B2, 481901}, {0x02B3, 482374}, {0x02B4, 483029}, {0x02B5, 483060}, {0x02B6, 481251}, {0x02B7, 483272}, {0x02B8, 483320}, {0x02B9, 480498}, {0x02BA, 478662}, {0x02BB, 483552}, {0x02BC, 477299}, {0x02BD, 480704}, {0x02BE, 480833}, {0x02BF, 479469}, {0x02C0, 479188}, {0x02C1, 480735}, {0x02C2, 479438}, {0x02C3, 480801}, {0x02C4, 483609}, {0x02C5, 478691}, {0x02C6, 478421}, {0x02C7, 128630}, {0x02C8, 483681}, {0x02C9, 480123}, {0x02CA, 477270}, {0x02CB, 479217}, {0x02CC, 480048}, {0x02CD, 479872}, {0x02CE, 479688}, {0x02CF, 479500}, {0x02D0, 483519}, {0x02D1, 479246}, {0x02D2, 478079}, {0x02D3, 478040}, {0x02D4, 483638}, {0x02D5, 478722}, {0x02D6, 480472}, {0x02D7, 480418}, {0x02D8, 96552}, {0x02D9, 245206}, {0x02DA, 540230}, {0x02DB, 509907}, {0x02DC, 553636}, {0x02DD, 245372}, {0x02DE, 480773}, {0x02DF, 478477}, {0x02E0, 481686}, {0x02E1, 481991}, {0x02E2, 482480}, {0x02E3, 483296}, {0x02E4, 482398}, {0x02E5, 478949}, {0x02E6, 479408}, {0x02E7, 480267}, {0x02E8, 479986}, {0x02E9, 479124}, {0x02EA, 483776}, {0x02EB, 483735}, {0x02EC, 483711}, {0x02ED, 483581}, {0x02EE, 478628}, {0x02EF, 479653}, {0x02F0, 480015}, {0x02F1, 479798}, {0x02F2, 479899}, {0x02F3, 479935}, {0x02F4, 480382}, {0x02F5, 480339}, {0x02F6, 480296}, {0x02F7, 479960}, {0x02F8, 480520}, {0x02F9, 477326}, {0x02FA, 478748}, {0x02FB, 477358}, {0x02FC, 478778}, {0x02FD, 480865}, {0x02FE, 480445}, {0x02FF, 479767}, {0x0300, 181859}, {0x0301, 178011}, {0x0302, 178537}, {0x0303, 185419}, {0x0304, 184310}, {0x0305, 184567}, {0x0306, 178352}, {0x0307, 180796}, {0x0308, 180750}, {0x0309, 182229}, {0x030A, 185131}, {0x030B, 180922}, {0x030C, 178481}, {0x030D, 185628}, {0x030E, 181402}, {0x030F, 181038}, {0x0310, 178459}, {0x0311, 182265}, {0x0312, 185507}, {0x0313, 178664}, {0x0314, 184710}, {0x0315, 178686}, {0x0316, 181882}, {0x0317, 178034}, {0x0318, 183988}, {0x0319, 185055}, {0x031A, 183661}, {0x031B, 182250}, {0x031C, 183862}, {0x031D, 185536}, {0x031E, 181517}, {0x031F, 184619}, {0x0320, 184474}, {0x0321, 184586}, {0x0322, 184645}, {0x0323, 180842}, {0x0324, 180770}, {0x0325, 185152}, {0x0326, 178714}, {0x0327, 178519}, {0x0328, 184527}, {0x0329, 185658}, {0x032A, 178436}, {0x032B, 182353}, {0x032C, 178497}, {0x032D, 178565}, {0x032E, 178368}, {0x032F, 182290}, {0x0330, 185435}, {0x0331, 184327}, {0x0332, 184291}, {0x0333, 181138}, {0x0334, 185457}, {0x0335, 185252}, {0x0336, 184224}, {0x0337, 185220}, {0x0338, 184193}, {0x0339, 184993}, {0x033A, 182321}, {0x033B, 185343}, {0x033C, 185196}, {0x033D, 185741}, {0x033E, 185688}, {0x033F, 181218}, {0x0340, 181911}, {0x0341, 178063}, {0x0342, 182144}, {0x0343, 182020}, {0x0344, 181988}, {0x0345, 182172}, {0x0346, 178413}, {0x0347, 181761}, {0x0348, 181439}, {0x0349, 183688}, {0x034A, 184501}, {0x034B, 182202}, {0x034C, 178140}, {0x034D, 183955}, {0x034E, 185560}, {0x034F, 181833}, {0x0350, 184797}, {0x0351, 183831}, {0x0352, 181789}, {0x0353, 185759}, {0x0354, 183800}, {0x0355, 184929}, {0x0356, 184880}, {0x0357, 184961}, {0x0358, 180816}, {0x0359, 178327}, {0x035A, 181284}, {0x035B, 185777}, {0x035C, 180975}, {0x035D, 180952}, {0x035E, 181164}, {0x035F, 181188}, {0x0360, 181312}, {0x0361, 181068}, {0x0362, 181244}, {0x0363, 182701}, {0x0364, 182929}, {0x0365, 183107}, {0x0366, 183337}, {0x0367, 183537}, {0x0368, 182828}, {0x0369, 182898}, {0x036A, 183076}, {0x036B, 183275}, {0x036C, 183368}, {0x036D, 183506}, {0x036E, 183568}, {0x036F, 183599}, {0x0370, 306345}, {0x0371, 315300}, {0x0372, 304734}, {0x0373, 313511}, {0x0374, 311743}, {0x0375, 311623}, {0x0376, 308605}, {0x0377, 317925}, {0x037A, 320705}, {0x037B, 319277}, {0x037C, 312120}, {0x037D, 319229}, {0x037E, 312017}, {0x0384, 319572}, {0x0385, 309748}, {0x0386, 304619}, {0x0387, 303432}, {0x0388, 305193}, {0x0389, 306246}, {0x038A, 306878}, {0x038C, 308525}, {0x038E, 309257}, {0x038F, 308103}, {0x0390, 315665}, {0x0391, 303569}, {0x0392, 304769}, {0x0393, 306318}, {0x0394, 304820}, {0x0395, 304847}, {0x0396, 309402}, {0x0397, 305273}, {0x0398, 308882}, {0x0399, 306371}, {0x039A, 306990}, {0x039B, 307017}, {0x039C, 307044}, {0x039D, 307068}, {0x039E, 309378}, {0x039F, 308179}, {0x03A0, 308670}, {0x03A1, 308719}, {0x03A3, 308830}, {0x03A4, 308857}, {0x03A5, 308909}, {0x03A6, 308645}, {0x03A7, 304795}, {0x03A8, 308694}, {0x03A9, 307092}, {0x03AA, 306580}, {0x03AB, 309133}, {0x03AC, 313271}, {0x03AD, 313973}, {0x03AE, 315082}, {0x03AF, 316049}, {0x03B0, 318657}, {0x03B1, 312159}, {0x03B2, 313544}, {0x03B3, 315275}, {0x03B4, 313591}, {0x03B5, 313643}, {0x03B6, 319205}, {0x03B7, 314049}, {0x03B8, 318267}, {0x03B9, 315324}, {0x03BA, 316155}, {0x03BB, 316205}, {0x03BC, 316230}, {0x03BD, 316252}, {0x03BE, 319183}, {0x03BF, 317519}, {0x03C0, 317986}, {0x03C1, 318031}, {0x03C2, 315244}, {0x03C3, 318193}, {0x03C4, 318244}, {0x03C5, 318292}, {0x03C6, 317963}, {0x03C7, 313568}, {0x03C8, 318008}, {0x03C9, 316274}, {0x03CA, 315523}, {0x03CB, 318506}, {0x03CC, 317849}, {0x03CD, 319068}, {0x03CE, 317349}, {0x03CF, 303544}, {0x03D0, 303485}, {0x03D1, 319504}, {0x03D2, 319738}, {0x03D3, 319652}, {0x03D4, 319693}, {0x03D5, 311880}, {0x03D6, 311897}, {0x03D7, 311251}, {0x03D8, 311325}, {0x03D9, 313478}, {0x03DA, 311569}, {0x03DB, 318218}, {0x03DC, 311352}, {0x03DD, 313616}, {0x03DE, 311373}, {0x03DF, 316180}, {0x03E0, 311392}, {0x03E1, 318122}, {0x03E2, 187923}, {0x03E3, 189978}, {0x03E4, 186798}, {0x03E5, 188925}, {0x03E6, 187015}, {0x03E7, 189126}, {0x03E8, 186933}, {0x03E9, 189050}, {0x03EA, 186877}, {0x03EB, 188998}, {0x03EC, 187950}, {0x03ED, 190003}, {0x03EE, 186600}, {0x03EF, 188739}, {0x03F0, 311268}, {0x03F1, 312074}, {0x03F2, 311676}, {0x03F3, 311589}, {0x03F4, 309555}, {0x03F5, 311648}, {0x03F6, 312037}, {0x03F7, 308805}, {0x03F8, 318170}, {0x03F9, 309428}, {0x03FA, 308780}, {0x03FB, 318147}, {0x03FC, 312091}, {0x03FD, 309512}, {0x03FE, 303503}, {0x03FF, 309462}, {0x0400, 223463}, {0x0401, 223501}, {0x0402, 221850}, {0x0403, 223021}, {0x0404, 226321}, {0x0405, 221979}, {0x0406, 221540}, {0x0407, 226611}, {0x0408, 223889}, {0x0409, 224561}, {0x040A, 224698}, {0x040B, 226030}, {0x040C, 224148}, {0x040D, 223323}, {0x040E, 225587}, {0x040F, 222037}, {0x0410, 220954}, {0x0411, 221373}, {0x0412, 226358}, {0x0413, 222776}, {0x0414, 221823}, {0x0415, 223398}, {0x0416, 226834}, {0x0417, 226692}, {0x0418, 223256}, {0x0419, 225513}, {0x041A, 223916}, {0x041B, 222218}, {0x041C, 222363}, {0x041D, 222427}, {0x041E, 224726}, {0x041F, 224891}, {0x0420, 222614}, {0x0421, 222678}, {0x0422, 225889}, {0x0423, 226145}, {0x0424, 222191}, {0x0425, 223049}, {0x0426, 226002}, {0x0427, 221618}, {0x0428, 225382}, {0x0429, 225410}, {0x042A, 223194}, {0x042B, 226495}, {0x042C, 225744}, {0x042D, 222124}, {0x042E, 226665}, {0x042F, 226412}, {0x0430, 227234}, {0x0431, 227631}, {0x0432, 232359}, {0x0433, 228952}, {0x0434, 228057}, {0x0435, 229540}, {0x0436, 232805}, {0x0437, 232671}, {0x0438, 229406}, {0x0439, 231564}, {0x043A, 230030}, {0x043B, 228426}, {0x043C, 228563}, {0x043D, 228623}, {0x043E, 230792}, {0x043F, 230978}, {0x0440, 228800}, {0x0441, 228860}, {0x0442, 231918}, {0x0443, 232158}, {0x0444, 228401}, {0x0445, 229211}, {0x0446, 232025}, {0x0447, 227862}, {0x0448, 231441}, {0x0449, 231467}, {0x044A, 229348}, {0x044B, 232486}, {0x044C, 231781}, {0x044D, 228338}, {0x044E, 232646}, {0x044F, 232409}, {0x0450, 229601}, {0x0451, 229637}, {0x0452, 228082}, {0x0453, 229185}, {0x0454, 232324}, {0x0455, 228203}, {0x0456, 227788}, {0x0457, 232596}, {0x0458, 230005}, {0x0459, 230637}, {0x045A, 230766}, {0x045B, 232051}, {0x045C, 230250}, {0x045D, 229469}, {0x045E, 231634}, {0x045F, 228257}, {0x0460, 224793}, {0x0461, 230855}, {0x0462, 226467}, {0x0463, 232460}, {0x0464, 223684}, {0x0465, 229810}, {0x0466, 224526}, {0x0467, 230604}, {0x0468, 223719}, {0x0469, 229843}, {0x046A, 221400}, {0x046B, 227656}, {0x046C, 223592}, {0x046D, 229722}, {0x046E, 224470}, {0x046F, 230552}, {0x0470, 225004}, {0x0471, 231085}, {0x0472, 222747}, {0x0473, 228925}, {0x0474, 223800}, {0x0475, 229920}, {0x0476, 223832}, {0x0477, 229950}, {0x0478, 226294}, {0x0479, 232299}, {0x047A, 225233}, {0x047B, 231300}, {0x047C, 224823}, {0x047D, 230883}, {0x047E, 224864}, {0x047F, 230922}, {0x0480, 224440}, {0x0481, 230524}, {0x0482, 233068}, {0x0483, 180130}, {0x0484, 179928}, {0x0485, 178764}, {0x0486, 180017}, {0x0487, 179989}, {0x0488, 178839}, {0x0489, 179895}, {0x048A, 225545}, {0x048B, 231594}, {0x048C, 225344}, {0x048D, 231405}, {0x048E, 222641}, {0x048F, 228825}, {0x0490, 222981}, {0x0491, 229147}, {0x0492, 222892}, {0x0493, 229062}, {0x0494, 222847}, {0x0495, 229019}, {0x0496, 226901}, {0x0497, 232868}, {0x0498, 226719}, {0x0499, 232696}, {0x049A, 223943}, {0x049B, 230055}, {0x049C, 224061}, {0x049D, 230167}, {0x049E, 224022}, {0x049F, 230130}, {0x04A0, 221338}, {0x04A1, 227598}, {0x04A2, 222454}, {0x04A3, 228648}, {0x04A4, 227047}, {0x04A5, 233006}, {0x04A6, 224960}, {0x04A7, 231043}, {0x04A8, 221187}, {0x04A9, 227455}, {0x04AA, 222705}, {0x04AB, 228885}, {0x04AC, 225916}, {0x04AD, 231943}, {0x04AE, 225778}, {0x04AF, 231813}, {0x04B0, 225813}, {0x04B1, 231846}, {0x04B2, 223076}, {0x04B3, 229236}, {0x04B4, 227080}, {0x04B5, 233037}, {0x04B6, 221646}, {0x04B7, 227888}, {0x04B8, 221732}, {0x04B9, 227970}, {0x04BA, 225440}, {0x04BB, 231495}, {0x04BC, 221058}, {0x04BD, 227332}, {0x04BE, 221096}, {0x04BF, 227368}, {0x04C0, 227159}, {0x04C1, 226862}, {0x04C2, 232831}, {0x04C3, 223985}, {0x04C4, 230095}, {0x04C5, 222326}, {0x04C6, 228528}, {0x04C7, 222496}, {0x04C8, 228688}, {0x04C9, 222577}, {0x04CA, 228765}, {0x04CB, 224109}, {0x04CC, 230213}, {0x04CD, 222390}, {0x04CE, 228588}, {0x04CF, 230947}, {0x04D0, 220980}, {0x04D1, 227258}, {0x04D2, 221017}, {0x04D3, 227293}, {0x04D4, 227016}, {0x04D5, 232977}, {0x04D6, 223425}, {0x04D7, 229565}, {0x04D8, 225269}, {0x04D9, 231334}, {0x04DA, 225299}, {0x04DB, 231362}, {0x04DC, 226944}, {0x04DD, 232909}, {0x04DE, 226761}, {0x04DF, 232736}, {0x04E0, 221149}, {0x04E1, 227419}, {0x04E2, 223360}, {0x04E3, 229504}, {0x04E4, 223282}, {0x04E5, 229430}, {0x04E6, 224752}, {0x04E7, 230816}, {0x04E8, 221257}, {0x04E9, 227521}, {0x04EA, 221290}, {0x04EB, 227552}, {0x04EC, 222150}, {0x04ED, 228362}, {0x04EE, 226256}, {0x04EF, 232263}, {0x04F0, 226171}, {0x04F1, 232182}, {0x04F2, 226212}, {0x04F3, 232221}, {0x04F4, 221689}, {0x04F5, 227929}, {0x04F6, 222804}, {0x04F7, 228978}, {0x04F8, 226567}, {0x04F9, 232554}, {0x04FA, 222932}, {0x04FB, 229100}, {0x04FC, 223118}, {0x04FD, 229276}, {0x04FE, 223155}, {0x04FF, 229311}, {0x0500, 224176}, {0x0501, 230276}, {0x0502, 224208}, {0x0503, 230306}, {0x0504, 224407}, {0x0505, 230493}, {0x0506, 224241}, {0x0507, 230337}, {0x0508, 224275}, {0x0509, 230369}, {0x050A, 224308}, {0x050B, 230400}, {0x050C, 224341}, {0x050D, 230431}, {0x050E, 224374}, {0x050F, 230462}, {0x0510, 225169}, {0x0511, 231240}, {0x0512, 222245}, {0x0513, 228451}, {0x0514, 224498}, {0x0515, 230578}, {0x0516, 225205}, {0x0517, 231274}, {0x0518, 226439}, {0x0519, 232434}, {0x051A, 225032}, {0x051B, 231111}, {0x051C, 226385}, {0x051D, 232384}, {0x051E, 221224}, {0x051F, 227490}, {0x0520, 222282}, {0x0521, 228486}, {0x0522, 222533}, {0x0523, 228723}, {0x0524, 224918}, {0x0525, 231003}, {0x0526, 225469}, {0x0527, 231522}, {0x0531, 50362}, {0x0532, 50390}, {0x0533, 50695}, {0x0534, 50529}, {0x0535, 50556}, {0x0536, 51365}, {0x0537, 50584}, {0x0538, 50611}, {0x0539, 51199}, {0x053A, 51392}, {0x053B, 50750}, {0x053C, 50890}, {0x053D, 51281}, {0x053E, 50418}, {0x053F, 50862}, {0x0540, 50723}, {0x0541, 50778}, {0x0542, 50666}, {0x0543, 50473}, {0x0544, 50919}, {0x0545, 51309}, {0x0546, 50947}, {0x0547, 51142}, {0x0548, 51254}, {0x0549, 50445}, {0x054A, 51002}, {0x054B, 50805}, {0x054C, 51059}, {0x054D, 51114}, {0x054E, 51226}, {0x054F, 51170}, {0x0550, 51086}, {0x0551, 50502}, {0x0552, 51336}, {0x0553, 51030}, {0x0554, 50834}, {0x0555, 50975}, {0x0556, 50638}, {0x0559, 51519}, {0x055A, 50342}, {0x055B, 51435}, {0x055C, 51458}, {0x055D, 51420}, {0x055E, 51559}, {0x055F, 50315}, {0x0561, 51582}, {0x0562, 51608}, {0x0563, 51891}, {0x0564, 51737}, {0x0565, 51762}, {0x0566, 52513}, {0x0567, 51788}, {0x0568, 51813}, {0x0569, 52359}, {0x056A, 52538}, {0x056B, 51942}, {0x056C, 52072}, {0x056D, 52435}, {0x056E, 51634}, {0x056F, 52046}, {0x0570, 51917}, {0x0571, 51968}, {0x0572, 51864}, {0x0573, 51685}, {0x0574, 52099}, {0x0575, 52461}, {0x0576, 52125}, {0x0577, 52306}, {0x0578, 52410}, {0x0579, 51659}, {0x057A, 52176}, {0x057B, 51993}, {0x057C, 52229}, {0x057D, 52280}, {0x057E, 52384}, {0x057F, 52332}, {0x0580, 52254}, {0x0581, 51712}, {0x0582, 52486}, {0x0583, 52202}, {0x0584, 52020}, {0x0585, 52151}, {0x0586, 51838}, {0x0587, 52564}, {0x0589, 51484}, {0x058A, 51503}, {0x0591, 342834}, {0x0592, 343165}, {0x0593, 343185}, {0x0594, 343384}, {0x0595, 343358}, {0x0596, 343288}, {0x0597, 343145}, {0x0598, 343410}, {0x0599, 343058}, {0x059A, 343338}, {0x059B, 343268}, {0x059C, 342856}, {0x059D, 342877}, {0x059E, 342905}, {0x059F, 343119}, {0x05A0, 343210}, {0x05A1, 343079}, {0x05A2, 342768}, {0x05A3, 343020}, {0x05A4, 342948}, {0x05A5, 342971}, {0x05A6, 342992}, {0x05A7, 342795}, {0x05A8, 343099}, {0x05A9, 343239}, {0x05AA, 343309}, {0x05AB, 343040}, {0x05AC, 342929}, {0x05AD, 342815}, {0x05AE, 343430}, {0x05AF, 345470}, {0x05B0, 345869}, {0x05B1, 345598}, {0x05B2, 345547}, {0x05B3, 345572}, {0x05B4, 345623}, {0x05B5, 345931}, {0x05B6, 345850}, {0x05B7, 345747}, {0x05B8, 345766}, {0x05B9, 345642}, {0x05BA, 345661}, {0x05BB, 345812}, {0x05BC, 345518}, {0x05BD, 345728}, {0x05BE, 346005}, {0x05BF, 345832}, {0x05C0, 346061}, {0x05C1, 345888}, {0x05C2, 345910}, {0x05C3, 346086}, {0x05C4, 345496}, {0x05C5, 345448}, {0x05C6, 346030}, {0x05C7, 345786}, {0x05D0, 343450}, {0x05D1, 343646}, {0x05D2, 343966}, {0x05D3, 343722}, {0x05D4, 344018}, {0x05D5, 344880}, {0x05D6, 345229}, {0x05D7, 344063}, {0x05D8, 344780}, {0x05D9, 345152}, {0x05DA, 343774}, {0x05DB, 344081}, {0x05DC, 344157}, {0x05DD, 343834}, {0x05DE, 344209}, {0x05DF, 343858}, {0x05E0, 344257}, {0x05E1, 344476}, {0x05E2, 343627}, {0x05E3, 343882}, {0x05E4, 344305}, {0x05E5, 343940}, {0x05E6, 344828}, {0x05E7, 344378}, {0x05E8, 344426}, {0x05E9, 344530}, {0x05EA, 344732}, {0x05F0, 345308}, {0x05F1, 345378}, {0x05F2, 345343}, {0x05F3, 345950}, {0x05F4, 345976}, {0x0600, 47794}, {0x0601, 48230}, {0x0602, 9964}, {0x0603, 48171}, {0x0606, 49954}, {0x0607, 50217}, {0x0608, 47902}, {0x0609, 50242}, {0x060A, 50270}, {0x060B, 2341}, {0x060C, 9552}, {0x060D, 9676}, {0x060E, 47856}, {0x060F, 48092}, {0x0610, 48189}, {0x0611, 48064}, {0x0612, 48140}, {0x0613, 48110}, {0x0614, 48313}, {0x0615, 48802}, {0x0616, 48462}, {0x0617, 48918}, {0x0618, 48354}, {0x0619, 48335}, {0x061A, 48941}, {0x061B, 47979}, {0x061E, 49778}, {0x061F, 47881}, {0x0620, 16881}, {0x0621, 15508}, {0x0622, 11198}, {0x0623, 10932}, {0x0624, 23668}, {0x0625, 11065}, {0x0626, 24393}, {0x0627, 10518}, {0x0628, 11558}, {0x0629, 22021}, {0x062A, 21911}, {0x062B, 22495}, {0x062C, 16378}, {0x062D, 14923}, {0x062E, 17276}, {0x062F, 12475}, {0x0630, 22413}, {0x0631, 19611}, {0x0632, 24933}, {0x0633, 20601}, {0x0634, 21146}, {0x0635, 20383}, {0x0636, 12217}, {0x0637, 21386}, {0x0638, 24793}, {0x0639, 10192}, {0x063A, 14593}, {0x063B, 17236}, {0x063C, 17135}, {0x063D, 13870}, {0x063E, 13956}, {0x063F, 13910}, {0x0640, 49701}, {0x0641, 14000}, {0x0642, 19398}, {0x0643, 16602}, {0x0644, 17621}, {0x0645, 17932}, {0x0646, 18430}, {0x0647, 15562}, {0x0648, 23432}, {0x0649, 10600}, {0x064A, 23864}, {0x064B, 9893}, {0x064C, 9630}, {0x064D, 10129}, {0x064E, 9801}, {0x064F, 9565}, {0x0650, 10064}, {0x0651, 47996}, {0x0652, 49088}, {0x0653, 47750}, {0x0654, 10004}, {0x0655, 10023}, {0x0656, 49066}, {0x0657, 10042}, {0x0658, 47770}, {0x0659, 49938}, {0x065A, 49882}, {0x065B, 49841}, {0x065C, 49813}, {0x065D, 47913}, {0x065E, 9866}, {0x065F, 49914}, {0x0660, 50193}, {0x0661, 50074}, {0x0662, 50170}, {0x0663, 50145}, {0x0664, 50026}, {0x0665, 50002}, {0x0666, 50122}, {0x0667, 50097}, {0x0668, 49977}, {0x0669, 50050}, {0x066A, 47813}, {0x066B, 9698}, {0x066C, 49751}, {0x066D, 9939}, {0x066E, 13064}, {0x066F, 13116}, {0x0670, 21331}, {0x0671, 10706}, {0x0672, 11331}, {0x0673, 11372}, {0x0674, 16265}, {0x0675, 16290}, {0x0676, 16320}, {0x0677, 23013}, {0x0678, 16349}, {0x0679, 22640}, {0x067A, 22785}, {0x067B, 11413}, {0x067C, 22185}, {0x067D, 22213}, {0x067E, 19108}, {0x067F, 22263}, {0x0680, 12067}, {0x0681, 15125}, {0x0682, 15461}, {0x0683, 18887}, {0x0684, 13221}, {0x0685, 15326}, {0x0686, 21566}, {0x0687, 21751}, {0x0688, 12982}, {0x0689, 12753}, {0x068A, 12554}, {0x068B, 12587}, {0x068C, 12390}, {0x068D, 12894}, {0x068E, 13142}, {0x068F, 12781}, {0x0690, 12634}, {0x0691, 20301}, {0x0692, 19966}, {0x0693, 19878}, {0x0694, 19690}, {0x0695, 19997}, {0x0696, 19723}, {0x0697, 20064}, {0x0698, 16523}, {0x0699, 19770}, {0x069A, 20746}, {0x069B, 20993}, {0x069C, 21034}, {0x069D, 20563}, {0x069E, 20523}, {0x069F, 21526}, {0x06A0, 10332}, {0x06A1, 13090}, {0x06A2, 14173}, {0x06A3, 14140}, {0x06A4, 23292}, {0x06A5, 14212}, {0x06A6, 19248}, {0x06A7, 19538}, {0x06A8, 19571}, {0x06A9, 16908}, {0x06AA, 21362}, {0x06AB, 16775}, {0x06AC, 16742}, {0x06AD, 18145}, {0x06AE, 16803}, {0x06AF, 14347}, {0x06B0, 14487}, {0x06B1, 18280}, {0x06B2, 14555}, {0x06B3, 14778}, {0x06B4, 14515}, {0x06B5, 17821}, {0x06B6, 17788}, {0x06B7, 17852}, {0x06B8, 17892}, {0x06B9, 18678}, {0x06BA, 18479}, {0x06BB, 20151}, {0x06BC, 18712}, {0x06BD, 18807}, {0x06BE, 15580}, {0x06BF, 21716}, {0x06C0, 16141}, {0x06C1, 15809}, {0x06C2, 15974}, {0x06C3, 22084}, {0x06C4, 23798}, {0x06C5, 17421}, {0x06C6, 19032}, {0x06C7, 22940}, {0x06C8, 24717}, {0x06C9, 17521}, {0x06CA, 23826}, {0x06CB, 23216}, {0x06CC, 13496}, {0x06CD, 24649}, {0x06CE, 24618}, {0x06CF, 23511}, {0x06D0, 13366}, {0x06D1, 24677}, {0x06D2, 23882}, {0x06D3, 24120}, {0x06D4, 9987}, {0x06D5, 10175}, {0x06D6, 48570}, {0x06D7, 48512}, {0x06D8, 48652}, {0x06D9, 48435}, {0x06DA, 48412}, {0x06DB, 48824}, {0x06DC, 48779}, {0x06DD, 9782}, {0x06DE, 49038}, {0x06DF, 48748}, {0x06E0, 48853}, {0x06E1, 48373}, {0x06E2, 48688}, {0x06E3, 48982}, {0x06E4, 48628}, {0x06E5, 49004}, {0x06E6, 49021}, {0x06E7, 48896}, {0x06E8, 48725}, {0x06E9, 47833}, {0x06EA, 9753}, {0x06EB, 9723}, {0x06EC, 47935}, {0x06ED, 48960}, {0x06EE, 12719}, {0x06EF, 19844}, {0x06F0, 289095}, {0x06F1, 288931}, {0x06F2, 289063}, {0x06F3, 289029}, {0x06F4, 288865}, {0x06F5, 288832}, {0x06F6, 288997}, {0x06F7, 288963}, {0x06F8, 288798}, {0x06F9, 288898}, {0x06FA, 21296}, {0x06FB, 12357}, {0x06FC, 14743}, {0x06FD, 48248}, {0x06FE, 48277}, {0x06FF, 16107}, {0x0700, 567144}, {0x0701, 568532}, {0x0702, 568443}, {0x0703, 568470}, {0x0704, 568384}, {0x0705, 567366}, {0x0706, 567015}, {0x0707, 567040}, {0x0708, 568495}, {0x0709, 568407}, {0x070A, 567066}, {0x070B, 567279}, {0x070C, 567253}, {0x070D, 567226}, {0x070F, 566975}, {0x0710, 567390}, {0x0711, 567999}, {0x0712, 567410}, {0x0713, 567528}, {0x0714, 567548}, {0x0715, 567429}, {0x0716, 567450}, {0x0717, 567577}, {0x0718, 568096}, {0x0719, 568155}, {0x071A, 567594}, {0x071B, 568049}, {0x071C, 568068}, {0x071D, 568114}, {0x071E, 568133}, {0x071F, 567613}, {0x0720, 567632}, {0x0721, 567653}, {0x0722, 567671}, {0x0723, 567877}, {0x0724, 567500}, {0x0725, 567484}, {0x0726, 567689}, {0x0727, 567812}, {0x0728, 567857}, {0x0729, 567793}, {0x072A, 567838}, {0x072B, 567899}, {0x072C, 568031}, {0x072D, 567706}, {0x072E, 567764}, {0x072F, 567734}, {0x0730, 568239}, {0x0731, 568259}, {0x0732, 568279}, {0x0733, 568671}, {0x0734, 568691}, {0x0735, 568711}, {0x0736, 568317}, {0x0737, 568336}, {0x0738, 567113}, {0x0739, 567085}, {0x073A, 567302}, {0x073B, 567321}, {0x073C, 567340}, {0x073D, 567168}, {0x073E, 567187}, {0x073F, 568371}, {0x0740, 567206}, {0x0741, 568300}, {0x0742, 568355}, {0x0743, 568609}, {0x0744, 568640}, {0x0745, 568561}, {0x0746, 568585}, {0x0747, 568187}, {0x0748, 568213}, {0x0749, 568174}, {0x074A, 567000}, {0x074D, 567971}, {0x074E, 567943}, {0x074F, 567918}, {0x0750, 11829}, {0x0751, 11698}, {0x0752, 11882}, {0x0753, 11939}, {0x0754, 12015}, {0x0755, 11752}, {0x0756, 11798}, {0x0757, 15423}, {0x0758, 15366}, {0x0759, 12831}, {0x075A, 12673}, {0x075B, 20034}, {0x075C, 20857}, {0x075D, 10431}, {0x075E, 10372}, {0x075F, 10469}, {0x0760, 14309}, {0x0761, 14252}, {0x0762, 17058}, {0x0763, 17093}, {0x0764, 17177}, {0x0765, 18077}, {0x0766, 18111}, {0x0767, 18848}, {0x0768, 18741}, {0x0769, 18775}, {0x076A, 17761}, {0x076B, 20102}, {0x076C, 19809}, {0x076D, 21096}, {0x076E, 15273}, {0x076F, 15213}, {0x0770, 20932}, {0x0771, 19906}, {0x0772, 15160}, {0x0773, 10870}, {0x0774, 10806}, {0x0775, 13803}, {0x0776, 13734}, {0x0777, 13666}, {0x0778, 23607}, {0x0779, 23544}, {0x077A, 24052}, {0x077B, 23982}, {0x077C, 15063}, {0x077D, 20794}, {0x077E, 20897}, {0x077F, 16843}, {0x0780, 582582}, {0x0781, 582885}, {0x0782, 582763}, {0x0783, 582826}, {0x0784, 582390}, {0x0785, 582701}, {0x0786, 582642}, {0x0787, 582370}, {0x0788, 583029}, {0x0789, 582725}, {0x078A, 582497}, {0x078B, 582476}, {0x078C, 582953}, {0x078D, 582681}, {0x078E, 582517}, {0x078F, 582558}, {0x0790, 582865}, {0x0791, 582453}, {0x0792, 583105}, {0x0793, 582930}, {0x0794, 583069}, {0x0795, 582783}, {0x0796, 582619}, {0x0797, 582408}, {0x0798, 583010}, {0x0799, 582600}, {0x079A, 582662}, {0x079B, 582972}, {0x079C, 583087}, {0x079D, 582909}, {0x079E, 582844}, {0x079F, 582432}, {0x07A0, 582993}, {0x07A1, 583128}, {0x07A2, 582351}, {0x07A3, 582537}, {0x07A4, 582806}, {0x07A5, 583049}, {0x07A6, 582272}, {0x07A7, 582255}, {0x07A8, 582336}, {0x07A9, 582302}, {0x07AA, 583207}, {0x07AB, 583177}, {0x07AC, 582287}, {0x07AD, 582319}, {0x07AE, 583162}, {0x07AF, 583145}, {0x07B0, 583194}, {0x07B1, 582745}, {0x07C0, 506472}, {0x07C1, 506398}, {0x07C2, 506458}, {0x07C3, 506442}, {0x07C4, 506368}, {0x07C5, 506353}, {0x07C6, 506428}, {0x07C7, 506412}, {0x07C8, 506337}, {0x07C9, 506383}, {0x07CA, 506548}, {0x07CB, 506639}, {0x07CC, 506696}, {0x07CD, 506626}, {0x07CE, 507006}, {0x07CF, 506921}, {0x07D0, 506908}, {0x07D1, 506604}, {0x07D2, 506823}, {0x07D3, 506561}, {0x07D4, 506935}, {0x07D5, 506992}, {0x07D6, 506709}, {0x07D7, 506575}, {0x07D8, 506590}, {0x07D9, 506949}, {0x07DA, 506963}, {0x07DB, 506978}, {0x07DC, 506667}, {0x07DD, 506653}, {0x07DE, 506781}, {0x07DF, 506795}, {0x07E0, 506850}, {0x07E1, 506809}, {0x07E2, 506871}, {0x07E3, 506836}, {0x07E4, 506682}, {0x07E5, 507019}, {0x07E6, 507033}, {0x07E7, 506886}, {0x07E8, 506743}, {0x07E9, 506723}, {0x07EA, 506762}, {0x07EB, 506236}, {0x07EC, 506266}, {0x07ED, 506295}, {0x07EE, 506081}, {0x07EF, 506116}, {0x07F0, 506145}, {0x07F1, 506173}, {0x07F2, 506204}, {0x07F3, 506050}, {0x07F4, 506508}, {0x07F5, 507047}, {0x07F6, 507093}, {0x07F7, 507071}, {0x07F8, 506327}, {0x07F9, 506487}, {0x07FA, 506533}, {0x0800, 544016}, {0x0801, 544059}, {0x0802, 544123}, {0x0803, 544080}, {0x0804, 544186}, {0x0805, 544038}, {0x0806, 544472}, {0x0807, 544166}, {0x0808, 544405}, {0x0809, 544451}, {0x080A, 544206}, {0x080B, 544228}, {0x080C, 544251}, {0x080D, 544272}, {0x080E, 544358}, {0x080F, 544146}, {0x0810, 544103}, {0x0811, 544426}, {0x0812, 544293}, {0x0813, 544314}, {0x0814, 544336}, {0x0815, 544383}, {0x0816, 544545}, {0x0817, 544563}, {0x0818, 544609}, {0x0819, 544493}, {0x081A, 544634}, {0x081B, 544515}, {0x081C, 545302}, {0x081D, 545199}, {0x081E, 545441}, {0x081F, 545273}, {0x0820, 545175}, {0x0821, 545409}, {0x0822, 545245}, {0x0823, 545152}, {0x0824, 544703}, {0x0825, 545474}, {0x0826, 545358}, {0x0827, 545530}, {0x0828, 544675}, {0x0829, 545330}, {0x082A, 545222}, {0x082B, 545386}, {0x082C, 545503}, {0x082D, 544586}, {0x0830, 544944}, {0x0831, 544737}, {0x0832, 544766}, {0x0833, 544882}, {0x0834, 544853}, {0x0835, 545002}, {0x0836, 543988}, {0x0837, 544908}, {0x0838, 545124}, {0x0839, 544974}, {0x083A, 545097}, {0x083B, 545070}, {0x083C, 544823}, {0x083D, 545035}, {0x083E, 544794}, {0x0840, 438345}, {0x0841, 437973}, {0x0842, 438009}, {0x0843, 437991}, {0x0844, 438027}, {0x0845, 438421}, {0x0846, 438303}, {0x0847, 438384}, {0x0848, 438284}, {0x0849, 438082}, {0x084A, 438064}, {0x084B, 438102}, {0x084C, 438120}, {0x084D, 438138}, {0x084E, 438210}, {0x084F, 438366}, {0x0850, 438156}, {0x0851, 438247}, {0x0852, 438174}, {0x0853, 438192}, {0x0854, 438228}, {0x0855, 438266}, {0x0856, 438321}, {0x0857, 438402}, {0x0858, 438045}, {0x0859, 437924}, {0x085A, 438464}, {0x085B, 437949}, {0x085E, 438444}, {0x0900, 238712}, {0x0901, 238471}, {0x0902, 238421}, {0x0903, 238855}, {0x0904, 237914}, {0x0905, 236674}, {0x0906, 236694}, {0x0907, 237310}, {0x0908, 237330}, {0x0909, 238102}, {0x090A, 238143}, {0x090B, 238264}, {0x090C, 238207}, {0x090D, 236891}, {0x090E, 237940}, {0x090F, 237102}, {0x0910, 236715}, {0x0911, 236918}, {0x0912, 237966}, {0x0913, 237679}, {0x0914, 236736}, {0x0915, 237416}, {0x0916, 237437}, {0x0917, 237143}, {0x0918, 237186}, {0x0919, 237590}, {0x091A, 236843}, {0x091B, 236945}, {0x091C, 237351}, {0x091D, 237372}, {0x091E, 237657}, {0x091F, 238057}, {0x0920, 238079}, {0x0921, 236988}, {0x0922, 237057}, {0x0923, 237612}, {0x0924, 238014}, {0x0925, 238035}, {0x0926, 236967}, {0x0927, 237080}, {0x0928, 237569}, {0x0929, 237634}, {0x092A, 237742}, {0x092B, 237763}, {0x092C, 236778}, {0x092D, 236821}, {0x092E, 237548}, {0x092F, 238321}, {0x0930, 237806}, {0x0931, 237849}, {0x0932, 237482}, {0x0933, 237503}, {0x0934, 237525}, {0x0935, 238186}, {0x0936, 237892}, {0x0937, 237992}, {0x0938, 237871}, {0x0939, 237262}, {0x093A, 239236}, {0x093B, 239261}, {0x093C, 238749}, {0x093D, 238446}, {0x093E, 238941}, {0x093F, 239163}, {0x0940, 239187}, {0x0941, 239385}, {0x0942, 239434}, {0x0943, 239550}, {0x0944, 239582}, {0x0945, 239041}, {0x0946, 239325}, {0x0947, 239139}, {0x0948, 238966}, {0x0949, 239108}, {0x094A, 239355}, {0x094B, 239212}, {0x094C, 238991}, {0x094D, 238832}, {0x094E, 239287}, {0x094F, 239016}, {0x0950, 238407}, {0x0951, 238911}, {0x0952, 238879}, {0x0953, 236628}, {0x0954, 236304}, {0x0955, 239072}, {0x0956, 239409}, {0x0957, 239459}, {0x0958, 237785}, {0x0959, 237459}, {0x095A, 237208}, {0x095B, 238364}, {0x095C, 237033}, {0x095D, 237827}, {0x095E, 237122}, {0x095F, 238342}, {0x0960, 238292}, {0x0961, 238235}, {0x0962, 239485}, {0x0963, 239517}, {0x0964, 236345}, {0x0965, 236582}, {0x0966, 236560}, {0x0967, 236451}, {0x0968, 236539}, {0x0969, 236516}, {0x096A, 236407}, {0x096B, 236385}, {0x096C, 236495}, {0x096D, 236472}, {0x096E, 236362}, {0x096F, 236429}, {0x0970, 236275}, {0x0971, 238679}, {0x0972, 236864}, {0x0973, 237699}, {0x0974, 237720}, {0x0975, 236757}, {0x0976, 238122}, {0x0977, 238164}, {0x0979, 238385}, {0x097A, 237283}, {0x097B, 237164}, {0x097C, 237394}, {0x097D, 237231}, {0x097E, 237010}, {0x097F, 236799}, {0x0981, 77941}, {0x0982, 77897}, {0x0983, 78005}, {0x0985, 76828}, {0x0986, 76845}, {0x0987, 77121}, {0x0988, 77138}, {0x0989, 77685}, {0x098A, 77702}, {0x098B, 77771}, {0x098C, 77720}, {0x098F, 77049}, {0x0990, 76863}, {0x0993, 77366}, {0x0994, 76881}, {0x0995, 77193}, {0x0996, 77211}, {0x0997, 77066}, {0x0998, 77084}, {0x0999, 77309}, {0x099A, 76936}, {0x099B, 76954}, {0x099C, 77156}, {0x099D, 77174}, {0x099E, 77347}, {0x099F, 77646}, {0x09A0, 77665}, {0x09A1, 76991}, {0x09A2, 77010}, {0x09A3, 77328}, {0x09A4, 77609}, {0x09A5, 77627}, {0x09A6, 76973}, {0x09A7, 77030}, {0x09A8, 77291}, {0x09AA, 77383}, {0x09AB, 77401}, {0x09AC, 76899}, {0x09AD, 76917}, {0x09AE, 77273}, {0x09AF, 77822}, {0x09B0, 77420}, {0x09B2, 77255}, {0x09B6, 77571}, {0x09B7, 77590}, {0x09B8, 77553}, {0x09B9, 77103}, {0x09BC, 77966}, {0x09BD, 77919}, {0x09BE, 78026}, {0x09BF, 78113}, {0x09C0, 78134}, {0x09C1, 78177}, {0x09C2, 78198}, {0x09C3, 78279}, {0x09C4, 78308}, {0x09C7, 78092}, {0x09C8, 78048}, {0x09CB, 78156}, {0x09CC, 78070}, {0x09CD, 77985}, {0x09CE, 77230}, {0x09D7, 76360}, {0x09DC, 77534}, {0x09DD, 77515}, {0x09DF, 77840}, {0x09E0, 77796}, {0x09E1, 77745}, {0x09E2, 78220}, {0x09E3, 78249}, {0x09E6, 76775}, {0x09E7, 76681}, {0x09E8, 76757}, {0x09E9, 76737}, {0x09EA, 76643}, {0x09EB, 76624}, {0x09EC, 76719}, {0x09ED, 76699}, {0x09EE, 76604}, {0x09EF, 76662}, {0x09F0, 77476}, {0x09F1, 77438}, {0x09F2, 77859}, {0x09F3, 77878}, {0x09F4, 76452}, {0x09F5, 76573}, {0x09F6, 76540}, {0x09F7, 76420}, {0x09F8, 76483}, {0x09F9, 76383}, {0x09FA, 76813}, {0x09FB, 76794}, {0x0A01, 323822}, {0x0A02, 323847}, {0x0A03, 323928}, {0x0A05, 322889}, {0x0A06, 322907}, {0x0A07, 323239}, {0x0A08, 323257}, {0x0A09, 323728}, {0x0A0A, 323746}, {0x0A0F, 323122}, {0x0A10, 322926}, {0x0A13, 323512}, {0x0A14, 322945}, {0x0A15, 323315}, {0x0A16, 323334}, {0x0A17, 323160}, {0x0A18, 323179}, {0x0A19, 323452}, {0x0A1A, 323003}, {0x0A1B, 323022}, {0x0A1C, 323276}, {0x0A1D, 323295}, {0x0A1E, 323492}, {0x0A1F, 323687}, {0x0A20, 323707}, {0x0A21, 323061}, {0x0A22, 323081}, {0x0A23, 323472}, {0x0A24, 323648}, {0x0A25, 323667}, {0x0A26, 323042}, {0x0A27, 323102}, {0x0A28, 323433}, {0x0A2A, 323531}, {0x0A2B, 323550}, {0x0A2C, 322964}, {0x0A2D, 322983}, {0x0A2E, 323414}, {0x0A2F, 323784}, {0x0A30, 323570}, {0x0A32, 323375}, {0x0A33, 323394}, {0x0A35, 323765}, {0x0A36, 323628}, {0x0A38, 323609}, {0x0A39, 323220}, {0x0A3C, 323867}, {0x0A3E, 323999}, {0x0A3F, 324091}, {0x0A40, 324113}, {0x0A41, 324159}, {0x0A42, 324181}, {0x0A47, 324068}, {0x0A48, 324022}, {0x0A4B, 324136}, {0x0A4C, 324045}, {0x0A4D, 323907}, {0x0A51, 323887}, {0x0A59, 323354}, {0x0A5A, 323199}, {0x0A5B, 323803}, {0x0A5C, 323589}, {0x0A5E, 323141}, {0x0A66, 322838}, {0x0A67, 322739}, {0x0A68, 322819}, {0x0A69, 322798}, {0x0A6A, 322699}, {0x0A6B, 322679}, {0x0A6C, 322779}, {0x0A6D, 322758}, {0x0A6E, 322658}, {0x0A6F, 322719}, {0x0A70, 323971}, {0x0A71, 322643}, {0x0A72, 322876}, {0x0A73, 323986}, {0x0A74, 322858}, {0x0A75, 323950}, {0x0A81, 322123}, {0x0A82, 322077}, {0x0A83, 322190}, {0x0A85, 321088}, {0x0A86, 321106}, {0x0A87, 321397}, {0x0A88, 321415}, {0x0A89, 321864}, {0x0A8A, 321882}, {0x0A8B, 321973}, {0x0A8C, 321920}, {0x0A8D, 322212}, {0x0A8F, 321321}, {0x0A90, 321125}, {0x0A91, 322236}, {0x0A93, 321649}, {0x0A94, 321144}, {0x0A95, 321473}, {0x0A96, 321492}, {0x0A97, 321339}, {0x0A98, 321358}, {0x0A99, 321589}, {0x0A9A, 321202}, {0x0A9B, 321221}, {0x0A9C, 321434}, {0x0A9D, 321453}, {0x0A9E, 321629}, {0x0A9F, 321823}, {0x0AA0, 321843}, {0x0AA1, 321260}, {0x0AA2, 321280}, {0x0AA3, 321609}, {0x0AA4, 321784}, {0x0AA5, 321803}, {0x0AA6, 321241}, {0x0AA7, 321301}, {0x0AA8, 321570}, {0x0AAA, 321667}, {0x0AAB, 321686}, {0x0AAC, 321163}, {0x0AAD, 321182}, {0x0AAE, 321551}, {0x0AAF, 322026}, {0x0AB0, 321706}, {0x0AB2, 321512}, {0x0AB3, 321531}, {0x0AB5, 321901}, {0x0AB6, 321744}, {0x0AB7, 321764}, {0x0AB8, 321725}, {0x0AB9, 321378}, {0x0ABC, 322149}, {0x0ABD, 322100}, {0x0ABE, 322260}, {0x0ABF, 322409}, {0x0AC0, 322431}, {0x0AC1, 322476}, {0x0AC2, 322498}, {0x0AC3, 322582}, {0x0AC4, 322612}, {0x0AC5, 322329}, {0x0AC7, 322387}, {0x0AC8, 322283}, {0x0AC9, 322358}, {0x0ACB, 322454}, {0x0ACC, 322306}, {0x0ACD, 322169}, {0x0AD0, 322045}, {0x0AE0, 321999}, {0x0AE1, 321946}, {0x0AE2, 322521}, {0x0AE3, 322551}, {0x0AE6, 321068}, {0x0AE7, 320969}, {0x0AE8, 321049}, {0x0AE9, 321028}, {0x0AEA, 320929}, {0x0AEB, 320909}, {0x0AEC, 321009}, {0x0AED, 320988}, {0x0AEE, 320888}, {0x0AEF, 320949}, {0x0AF1, 322057}, {0x0B01, 517754}, {0x0B02, 517714}, {0x0B03, 517812}, {0x0B05, 516834}, {0x0B06, 516849}, {0x0B07, 517095}, {0x0B08, 517110}, {0x0B09, 517524}, {0x0B0A, 517539}, {0x0B0B, 517618}, {0x0B0C, 517571}, {0x0B0F, 517031}, {0x0B10, 516865}, {0x0B13, 517308}, {0x0B14, 516881}, {0x0B15, 517159}, {0x0B16, 517175}, {0x0B17, 517046}, {0x0B18, 517062}, {0x0B19, 517257}, {0x0B1A, 516930}, {0x0B1B, 516946}, {0x0B1C, 517126}, {0x0B1D, 517142}, {0x0B1E, 517291}, {0x0B1F, 517489}, {0x0B20, 517506}, {0x0B21, 516979}, {0x0B22, 516996}, {0x0B23, 517274}, {0x0B24, 517456}, {0x0B25, 517472}, {0x0B26, 516963}, {0x0B27, 517014}, {0x0B28, 517241}, {0x0B2A, 517323}, {0x0B2B, 517339}, {0x0B2C, 516897}, {0x0B2D, 516913}, {0x0B2E, 517225}, {0x0B2F, 517681}, {0x0B30, 517356}, {0x0B32, 517192}, {0x0B33, 517208}, {0x0B35, 517555}, {0x0B36, 517422}, {0x0B37, 517439}, {0x0B38, 517406}, {0x0B39, 517079}, {0x0B3C, 517777}, {0x0B3D, 517734}, {0x0B3E, 517831}, {0x0B3F, 517910}, {0x0B40, 517929}, {0x0B41, 517968}, {0x0B42, 517987}, {0x0B43, 518062}, {0x0B44, 518089}, {0x0B47, 517891}, {0x0B48, 517851}, {0x0B4B, 517949}, {0x0B4C, 517871}, {0x0B4D, 517794}, {0x0B56, 516441}, {0x0B57, 516462}, {0x0B5C, 517389}, {0x0B5D, 517372}, {0x0B5F, 517697}, {0x0B60, 517641}, {0x0B61, 517594}, {0x0B62, 518007}, {0x0B63, 518034}, {0x0B66, 516636}, {0x0B67, 516552}, {0x0B68, 516620}, {0x0B69, 516602}, {0x0B6A, 516518}, {0x0B6B, 516501}, {0x0B6C, 516586}, {0x0B6D, 516568}, {0x0B6E, 516483}, {0x0B6F, 516535}, {0x0B70, 516821}, {0x0B71, 517665}, {0x0B72, 516703}, {0x0B73, 516679}, {0x0B74, 516759}, {0x0B75, 516730}, {0x0B76, 516653}, {0x0B77, 516789}, {0x0B82, 577752}, {0x0B83, 577790}, {0x0B85, 577056}, {0x0B86, 577071}, {0x0B87, 577182}, {0x0B88, 577197}, {0x0B89, 577560}, {0x0B8A, 577575}, {0x0B8E, 577135}, {0x0B8F, 577150}, {0x0B90, 577087}, {0x0B92, 577397}, {0x0B93, 577412}, {0x0B94, 577103}, {0x0B95, 577229}, {0x0B99, 577328}, {0x0B9A, 577119}, {0x0B9C, 577213}, {0x0B9E, 577380}, {0x0B9F, 577543}, {0x0BA3, 577345}, {0x0BA4, 577527}, {0x0BA8, 577312}, {0x0BA9, 577362}, {0x0BAA, 577428}, {0x0BAE, 577296}, {0x0BAF, 577607}, {0x0BB0, 577444}, {0x0BB1, 577460}, {0x0BB2, 577245}, {0x0BB3, 577261}, {0x0BB4, 577278}, {0x0BB5, 577591}, {0x0BB6, 577493}, {0x0BB7, 577510}, {0x0BB8, 577477}, {0x0BB9, 577166}, {0x0BBE, 577809}, {0x0BBF, 577908}, {0x0BC0, 577927}, {0x0BC1, 577986}, {0x0BC2, 578005}, {0x0BC6, 577869}, {0x0BC7, 577888}, {0x0BC8, 577829}, {0x0BCA, 577947}, {0x0BCB, 577966}, {0x0BCC, 577849}, {0x0BCD, 577772}, {0x0BD0, 577726}, {0x0BD7, 576815}, {0x0BE6, 577039}, {0x0BE7, 576955}, {0x0BE8, 577023}, {0x0BE9, 577005}, {0x0BEA, 576921}, {0x0BEB, 576904}, {0x0BEC, 576989}, {0x0BED, 576971}, {0x0BEE, 576886}, {0x0BEF, 576938}, {0x0BF0, 577709}, {0x0BF1, 577640}, {0x0BF2, 577665}, {0x0BF3, 576854}, {0x0BF4, 577623}, {0x0BF5, 578025}, {0x0BF6, 576869}, {0x0BF7, 576836}, {0x0BF8, 576795}, {0x0BF9, 577735}, {0x0BFA, 577691}, {0x0C01, 579847}, {0x0C02, 579805}, {0x0C03, 579908}, {0x0C05, 578856}, {0x0C06, 578872}, {0x0C07, 579168}, {0x0C08, 579184}, {0x0C09, 579640}, {0x0C0A, 579656}, {0x0C0B, 579739}, {0x0C0C, 579690}, {0x0C0E, 579083}, {0x0C0F, 579099}, {0x0C10, 578889}, {0x0C12, 579394}, {0x0C13, 579410}, {0x0C14, 578906}, {0x0C15, 579236}, {0x0C16, 579253}, {0x0C17, 579116}, {0x0C18, 579133}, {0x0C19, 579340}, {0x0C1A, 578958}, {0x0C1B, 578975}, {0x0C1C, 579201}, {0x0C1D, 579218}, {0x0C1E, 579376}, {0x0C1F, 579603}, {0x0C20, 579621}, {0x0C21, 579010}, {0x0C22, 579028}, {0x0C23, 579358}, {0x0C24, 579550}, {0x0C25, 579567}, {0x0C26, 578993}, {0x0C27, 579047}, {0x0C28, 579323}, {0x0C2A, 579427}, {0x0C2B, 579444}, {0x0C2C, 578923}, {0x0C2D, 578940}, {0x0C2E, 579306}, {0x0C2F, 579788}, {0x0C30, 579462}, {0x0C31, 579479}, {0x0C32, 579271}, {0x0C33, 579288}, {0x0C35, 579673}, {0x0C36, 579514}, {0x0C37, 579532}, {0x0C38, 579497}, {0x0C39, 579151}, {0x0C3D, 579826}, {0x0C3E, 579928}, {0x0C3F, 580032}, {0x0C40, 580052}, {0x0C41, 580114}, {0x0C42, 580134}, {0x0C43, 580212}, {0x0C44, 580240}, {0x0C46, 579991}, {0x0C47, 580011}, {0x0C48, 579949}, {0x0C4A, 580073}, {0x0C4B, 580093}, {0x0C4C, 579970}, {0x0C4D, 579889}, {0x0C55, 578837}, {0x0C56, 578284}, {0x0C58, 579585}, {0x0C59, 579065}, {0x0C60, 579763}, {0x0C61, 579714}, {0x0C62, 580155}, {0x0C63, 580183}, {0x0C66, 578468}, {0x0C67, 578379}, {0x0C68, 578451}, {0x0C69, 578432}, {0x0C6A, 578343}, {0x0C6B, 578325}, {0x0C6C, 578415}, {0x0C6D, 578396}, {0x0C6E, 578306}, {0x0C6F, 578361}, {0x0C78, 578787}, {0x0C79, 578536}, {0x0C7A, 578738}, {0x0C7B, 578637}, {0x0C7C, 578486}, {0x0C7D, 578688}, {0x0C7E, 578585}, {0x0C7F, 579871}, {0x0C82, 368626}, {0x0C83, 368759}, {0x0C85, 367644}, {0x0C86, 367661}, {0x0C87, 367973}, {0x0C88, 367990}, {0x0C89, 368453}, {0x0C8A, 368470}, {0x0C8B, 368557}, {0x0C8C, 368506}, {0x0C8E, 367865}, {0x0C8F, 367882}, {0x0C90, 367679}, {0x0C92, 368212}, {0x0C93, 368229}, {0x0C94, 367697}, {0x0C95, 368045}, {0x0C96, 368063}, {0x0C97, 367918}, {0x0C98, 367936}, {0x0C99, 368155}, {0x0C9A, 367752}, {0x0C9B, 367770}, {0x0C9C, 368008}, {0x0C9D, 368026}, {0x0C9E, 368193}, {0x0C9F, 368414}, {0x0CA0, 368433}, {0x0CA1, 367807}, {0x0CA2, 367826}, {0x0CA3, 368174}, {0x0CA4, 368377}, {0x0CA5, 368395}, {0x0CA6, 367789}, {0x0CA7, 367846}, {0x0CA8, 368137}, {0x0CAA, 368247}, {0x0CAB, 368265}, {0x0CAC, 367715}, {0x0CAD, 367733}, {0x0CAE, 368119}, {0x0CAF, 368608}, {0x0CB0, 368284}, {0x0CB1, 368302}, {0x0CB2, 368082}, {0x0CB3, 368100}, {0x0CB5, 368488}, {0x0CB6, 368339}, {0x0CB7, 368358}, {0x0CB8, 368321}, {0x0CB9, 367955}, {0x0CBC, 368695}, {0x0CBD, 368648}, {0x0CBE, 368780}, {0x0CBF, 368889}, {0x0CC0, 368910}, {0x0CC1, 368975}, {0x0CC2, 368996}, {0x0CC3, 369077}, {0x0CC4, 369106}, {0x0CC6, 368846}, {0x0CC7, 368867}, {0x0CC8, 368802}, {0x0CCA, 368932}, {0x0CCB, 368953}, {0x0CCC, 368824}, {0x0CCD, 368739}, {0x0CD5, 367624}, {0x0CD6, 367411}, {0x0CDE, 367900}, {0x0CE0, 368582}, {0x0CE1, 368531}, {0x0CE2, 369018}, {0x0CE3, 369047}, {0x0CE6, 367605}, {0x0CE7, 367511}, {0x0CE8, 367587}, {0x0CE9, 367567}, {0x0CEA, 367473}, {0x0CEB, 367454}, {0x0CEC, 367549}, {0x0CED, 367529}, {0x0CEE, 367434}, {0x0CEF, 367492}, {0x0CF1, 368670}, {0x0CF2, 368714}, {0x0D02, 437268}, {0x0D03, 437338}, {0x0D05, 435871}, {0x0D06, 435890}, {0x0D07, 436401}, {0x0D08, 436420}, {0x0D09, 436999}, {0x0D0A, 437018}, {0x0D0B, 437113}, {0x0D0C, 437058}, {0x0D0E, 436301}, {0x0D0F, 436320}, {0x0D10, 435910}, {0x0D12, 436710}, {0x0D13, 436729}, {0x0D14, 435930}, {0x0D15, 436481}, {0x0D16, 436501}, {0x0D17, 436340}, {0x0D18, 436360}, {0x0D19, 436625}, {0x0D1A, 435991}, {0x0D1B, 436011}, {0x0D1C, 436440}, {0x0D1D, 436460}, {0x0D1E, 436689}, {0x0D1F, 436934}, {0x0D20, 436955}, {0x0D21, 436211}, {0x0D22, 436232}, {0x0D23, 436646}, {0x0D24, 436893}, {0x0D25, 436913}, {0x0D26, 436191}, {0x0D27, 436254}, {0x0D28, 436605}, {0x0D29, 436667}, {0x0D2A, 436749}, {0x0D2B, 436769}, {0x0D2C, 435950}, {0x0D2D, 435970}, {0x0D2E, 436585}, {0x0D2F, 437168}, {0x0D30, 436790}, {0x0D31, 436810}, {0x0D32, 436522}, {0x0D33, 436542}, {0x0D34, 436563}, {0x0D35, 437038}, {0x0D36, 436851}, {0x0D37, 436872}, {0x0D38, 436831}, {0x0D39, 436381}, {0x0D3A, 436977}, {0x0D3D, 437292}, {0x0D3E, 437361}, {0x0D3F, 437480}, {0x0D40, 437503}, {0x0D41, 437574}, {0x0D42, 437597}, {0x0D43, 437684}, {0x0D44, 437715}, {0x0D46, 437433}, {0x0D47, 437456}, {0x0D48, 437385}, {0x0D4A, 437527}, {0x0D4B, 437550}, {0x0D4C, 437409}, {0x0D4D, 437316}, {0x0D4E, 436275}, {0x0D57, 435523}, {0x0D60, 437140}, {0x0D61, 437085}, {0x0D62, 437621}, {0x0D63, 437652}, {0x0D66, 435757}, {0x0D67, 435653}, {0x0D68, 435737}, {0x0D69, 435715}, {0x0D6A, 435611}, {0x0D6B, 435590}, {0x0D6C, 435695}, {0x0D6D, 435673}, {0x0D6E, 435568}, {0x0D6F, 435632}, {0x0D70, 437247}, {0x0D71, 437188}, {0x0D72, 437217}, {0x0D73, 435806}, {0x0D74, 435778}, {0x0D75, 435837}, {0x0D79, 435548}, {0x0D7A, 436137}, {0x0D7B, 436111}, {0x0D7C, 436164}, {0x0D7D, 436058}, {0x0D7E, 436084}, {0x0D7F, 436032}, {0x0D82, 551315}, {0x0D83, 551339}, {0x0D85, 550011}, {0x0D86, 549525}, {0x0D87, 549572}, {0x0D88, 549548}, {0x0D89, 550338}, {0x0D8A, 550217}, {0x0D8B, 551193}, {0x0D8C, 551170}, {0x0D8D, 550314}, {0x0D8E, 550289}, {0x0D8F, 550265}, {0x0D90, 550240}, {0x0D91, 550149}, {0x0D92, 550126}, {0x0D93, 549595}, {0x0D94, 550891}, {0x0D95, 550868}, {0x0D96, 549988}, {0x0D9A, 549823}, {0x0D9B, 550605}, {0x0D9C, 549755}, {0x0D9D, 550535}, {0x0D9E, 550360}, {0x0D9F, 550999}, {0x0DA0, 549652}, {0x0DA1, 550429}, {0x0DA2, 549789}, {0x0DA3, 550570}, {0x0DA4, 551061}, {0x0DA5, 551095}, {0x0DA6, 551030}, {0x0DA7, 549925}, {0x0DA8, 550710}, {0x0DA9, 549720}, {0x0DAA, 550499}, {0x0DAB, 550802}, {0x0DAC, 550967}, {0x0DAD, 549891}, {0x0DAE, 550675}, {0x0DAF, 549686}, {0x0DB0, 550464}, {0x0DB1, 550064}, {0x0DB3, 550936}, {0x0DB4, 549857}, {0x0DB5, 550640}, {0x0DB6, 549618}, {0x0DB7, 550394}, {0x0DB8, 550746}, {0x0DB9, 549960}, {0x0DBA, 551238}, {0x0DBB, 550913}, {0x0DBD, 550033}, {0x0DC0, 551215}, {0x0DC1, 551139}, {0x0DC2, 550835}, {0x0DC3, 550095}, {0x0DC4, 550194}, {0x0DC5, 550769}, {0x0DC6, 550171}, {0x0DCA, 551292}, {0x0DCF, 551362}, {0x0DD0, 551662}, {0x0DD1, 551392}, {0x0DD2, 551698}, {0x0DD3, 551500}, {0x0DD4, 551732}, {0x0DD6, 551565}, {0x0DD8, 551599}, {0x0DD9, 551797}, {0x0DDA, 551533}, {0x0DDB, 551767}, {0x0DDC, 551824}, {0x0DDD, 551866}, {0x0DDE, 551913}, {0x0DDF, 551631}, {0x0DF2, 551427}, {0x0DF3, 551464}, {0x0DF4, 551261}, {0x0E01, 583677}, {0x0E02, 583530}, {0x0E03, 583578}, {0x0E04, 583603}, {0x0E05, 583554}, {0x0E06, 583628}, {0x0E07, 583985}, {0x0E08, 583273}, {0x0E09, 583322}, {0x0E0A, 583297}, {0x0E0B, 584663}, {0x0E0C, 583347}, {0x0E0D, 585005}, {0x0E0E, 583371}, {0x0E0F, 584890}, {0x0E10, 584816}, {0x0E11, 584733}, {0x0E12, 584763}, {0x0E13, 584032}, {0x0E14, 583395}, {0x0E15, 584914}, {0x0E16, 584865}, {0x0E17, 584790}, {0x0E18, 584840}, {0x0E19, 584054}, {0x0E1A, 583248}, {0x0E1B, 584220}, {0x0E1C, 584168}, {0x0E1D, 583417}, {0x0E1E, 584144}, {0x0E1F, 583438}, {0x0E20, 584193}, {0x0E21, 583964}, {0x0E22, 584983}, {0x0E23, 584242}, {0x0E24, 584264}, {0x0E25, 583750}, {0x0E26, 583773}, {0x0E27, 584936}, {0x0E28, 584640}, {0x0E29, 584617}, {0x0E2A, 584684}, {0x0E2B, 583483}, {0x0E2C, 583726}, {0x0E2D, 584075}, {0x0E2E, 583505}, {0x0E2F, 584096}, {0x0E30, 584282}, {0x0E31, 583841}, {0x0E32, 584304}, {0x0E33, 584413}, {0x0E34, 584458}, {0x0E35, 584480}, {0x0E36, 584547}, {0x0E37, 584570}, {0x0E38, 584525}, {0x0E39, 584594}, {0x0E3A, 584121}, {0x0E3F, 585028}, {0x0E40, 584436}, {0x0E41, 584327}, {0x0E42, 584503}, {0x0E43, 584382}, {0x0E44, 584350}, {0x0E45, 583699}, {0x0E46, 583940}, {0x0E47, 583915}, {0x0E48, 583819}, {0x0E49, 583869}, {0x0E4A, 583892}, {0x0E4B, 583791}, {0x0E4C, 584706}, {0x0E4D, 584008}, {0x0E4E, 584959}, {0x0E4F, 583460}, {0x0E50, 585198}, {0x0E51, 585119}, {0x0E52, 585183}, {0x0E53, 585166}, {0x0E54, 585087}, {0x0E55, 585071}, {0x0E56, 585151}, {0x0E57, 585134}, {0x0E58, 585054}, {0x0E59, 585103}, {0x0E5A, 583222}, {0x0E5B, 583655}, {0x0E81, 377824}, {0x0E82, 377785}, {0x0E84, 377805}, {0x0E87, 377890}, {0x0E88, 377683}, {0x0E8A, 378019}, {0x0E8D, 377919}, {0x0E94, 377697}, {0x0E95, 378076}, {0x0E96, 378037}, {0x0E97, 378057}, {0x0E99, 377905}, {0x0E9A, 377669}, {0x0E9B, 377986}, {0x0E9C, 377947}, {0x0E9D, 377730}, {0x0E9E, 377967}, {0x0E9F, 377711}, {0x0EA1, 377876}, {0x0EA2, 378104}, {0x0EA3, 377838}, {0x0EA5, 377857}, {0x0EA7, 378090}, {0x0EAA, 378000}, {0x0EAB, 377748}, {0x0EAD, 377934}, {0x0EAE, 377767}, {0x0EAF, 377626}, {0x0EB0, 378246}, {0x0EB1, 378405}, {0x0EB2, 378263}, {0x0EB3, 378299}, {0x0EB4, 378370}, {0x0EB5, 378387}, {0x0EB6, 378503}, {0x0EB7, 378520}, {0x0EB8, 378468}, {0x0EB9, 378485}, {0x0EBB, 378428}, {0x0EBC, 378132}, {0x0EBD, 378154}, {0x0EC0, 378335}, {0x0EC1, 378352}, {0x0EC2, 378451}, {0x0EC3, 378317}, {0x0EC4, 378281}, {0x0EC6, 377659}, {0x0EC8, 378197}, {0x0EC9, 378213}, {0x0ECA, 378230}, {0x0ECB, 378177}, {0x0ECC, 377454}, {0x0ECD, 378118}, {0x0ED0, 377611}, {0x0ED1, 377537}, {0x0ED2, 377597}, {0x0ED3, 377581}, {0x0ED4, 377507}, {0x0ED5, 377492}, {0x0ED6, 377567}, {0x0ED7, 377551}, {0x0ED8, 377476}, {0x0ED9, 377522}, {0x0EDC, 377649}, {0x0EDD, 377639}, {0x0F00, 590500}, {0x0F01, 587854}, {0x0F02, 587811}, {0x0F03, 587767}, {0x0F04, 588018}, {0x0F05, 587671}, {0x0F06, 587561}, {0x0F07, 588505}, {0x0F08, 588382}, {0x0F09, 587447}, {0x0F0A, 587354}, {0x0F0B, 588055}, {0x0F0C, 587708}, {0x0F0D, 588406}, {0x0F0E, 588224}, {0x0F0F, 588481}, {0x0F10, 588271}, {0x0F11, 588348}, {0x0F12, 588320}, {0x0F13, 587518}, {0x0F14, 587743}, {0x0F15, 587232}, {0x0F16, 587265}, {0x0F17, 585727}, {0x0F18, 585652}, {0x0F19, 585688}, {0x0F1A, 588750}, {0x0F1B, 588778}, {0x0F1C, 588807}, {0x0F1D, 588867}, {0x0F1E, 588894}, {0x0F1F, 588835}, {0x0F20, 586333}, {0x0F21, 586239}, {0x0F22, 586315}, {0x0F23, 586295}, {0x0F24, 585961}, {0x0F25, 585942}, {0x0F26, 586277}, {0x0F27, 586257}, {0x0F28, 585922}, {0x0F29, 586220}, {0x0F2A, 586077}, {0x0F2B, 586173}, {0x0F2C, 586148}, {0x0F2D, 586029}, {0x0F2E, 586005}, {0x0F2F, 586125}, {0x0F30, 586100}, {0x0F31, 585980}, {0x0F32, 586053}, {0x0F33, 586196}, {0x0F34, 587385}, {0x0F35, 588157}, {0x0F36, 587474}, {0x0F37, 588189}, {0x0F38, 587601}, {0x0F39, 588458}, {0x0F3A, 587920}, {0x0F3B, 587892}, {0x0F3C, 587326}, {0x0F3D, 587298}, {0x0F3E, 589078}, {0x0F3F, 588677}, {0x0F40, 586727}, {0x0F41, 586745}, {0x0F42, 586654}, {0x0F43, 586672}, {0x0F44, 586857}, {0x0F45, 586473}, {0x0F46, 586491}, {0x0F47, 586709}, {0x0F49, 586895}, {0x0F4A, 587120}, {0x0F4B, 587139}, {0x0F4C, 586528}, {0x0F4D, 586547}, {0x0F4E, 586876}, {0x0F4F, 587044}, {0x0F50, 587062}, {0x0F51, 586510}, {0x0F52, 586567}, {0x0F53, 586839}, {0x0F54, 586914}, {0x0F55, 586932}, {0x0F56, 586436}, {0x0F57, 586454}, {0x0F58, 586821}, {0x0F59, 587081}, {0x0F5A, 587100}, {0x0F5B, 586586}, {0x0F5C, 586605}, {0x0F5D, 587159}, {0x0F5E, 587213}, {0x0F5F, 587195}, {0x0F60, 586401}, {0x0F61, 587177}, {0x0F62, 586951}, {0x0F63, 586803}, {0x0F64, 587006}, {0x0F65, 587025}, {0x0F66, 586988}, {0x0F67, 586691}, {0x0F68, 586419}, {0x0F69, 586783}, {0x0F6A, 586625}, {0x0F6B, 586764}, {0x0F6C, 586969}, {0x0F71, 590772}, {0x0F72, 590837}, {0x0F73, 590858}, {0x0F74, 590984}, {0x0F75, 591005}, {0x0F76, 591086}, {0x0F77, 591115}, {0x0F78, 591027}, {0x0F79, 591056}, {0x0F7A, 590794}, {0x0F7B, 590815}, {0x0F7C, 590880}, {0x0F7D, 590901}, {0x0F7E, 588981}, {0x0F7F, 589009}, {0x0F80, 590923}, {0x0F81, 590953}, {0x0F82, 588722}, {0x0F83, 589032}, {0x0F84, 587948}, {0x0F85, 588300}, {0x0F86, 588654}, {0x0F87, 589054}, {0x0F88, 588629}, {0x0F89, 588700}, {0x0F8A, 588540}, {0x0F8B, 588569}, {0x0F8C, 588598}, {0x0F8D, 590433}, {0x0F8E, 590468}, {0x0F8F, 590392}, {0x0F90, 589675}, {0x0F91, 589703}, {0x0F92, 589562}, {0x0F93, 589590}, {0x0F94, 589846}, {0x0F95, 589213}, {0x0F96, 589241}, {0x0F97, 589647}, {0x0F99, 589904}, {0x0F9A, 590220}, {0x0F9B, 590249}, {0x0F9C, 589298}, {0x0F9D, 589327}, {0x0F9E, 589875}, {0x0F9F, 590104}, {0x0FA0, 590132}, {0x0FA1, 589270}, {0x0FA2, 589357}, {0x0FA3, 589818}, {0x0FA4, 589933}, {0x0FA5, 589961}, {0x0FA6, 589156}, {0x0FA7, 589184}, {0x0FA8, 589790}, {0x0FA9, 590161}, {0x0FAA, 590190}, {0x0FAB, 589386}, {0x0FAC, 589415}, {0x0FAD, 590279}, {0x0FAE, 590363}, {0x0FAF, 590335}, {0x0FB0, 589101}, {0x0FB1, 590307}, {0x0FB2, 589990}, {0x0FB3, 589762}, {0x0FB4, 590046}, {0x0FB5, 590075}, {0x0FB6, 590018}, {0x0FB7, 589619}, {0x0FB8, 589129}, {0x0FB9, 589732}, {0x0FBA, 589484}, {0x0FBB, 589523}, {0x0FBC, 589445}, {0x0FBE, 586352}, {0x0FBF, 586370}, {0x0FC0, 585811}, {0x0FC1, 585848}, {0x0FC2, 585775}, {0x0FC3, 585885}, {0x0FC4, 590520}, {0x0FC5, 590716}, {0x0FC6, 590667}, {0x0FC7, 590739}, {0x0FC8, 590693}, {0x0FC9, 590543}, {0x0FCA, 590633}, {0x0FCB, 590599}, {0x0FCC, 590565}, {0x0FCE, 588949}, {0x0FCF, 588922}, {0x0FD0, 587410}, {0x0FD1, 588121}, {0x0FD2, 588247}, {0x0FD3, 587969}, {0x0FD4, 587622}, {0x0FD5, 537416}, {0x0FD6, 418753}, {0x0FD7, 537441}, {0x0FD8, 418777}, {0x0FD9, 588088}, {0x0FDA, 588424}, {0x1000, 496623}, {0x1001, 496641}, {0x1002, 496472}, {0x1003, 496490}, {0x1004, 497332}, {0x1005, 496230}, {0x1006, 496248}, {0x1007, 496586}, {0x1008, 496604}, {0x1009, 497390}, {0x100A, 497370}, {0x100B, 497961}, {0x100C, 497980}, {0x100D, 496285}, {0x100E, 496304}, {0x100F, 497351}, {0x1010, 497924}, {0x1011, 497942}, {0x1012, 496267}, {0x1013, 496324}, {0x1014, 497314}, {0x1015, 497426}, {0x1016, 497444}, {0x1017, 496193}, {0x1018, 496211}, {0x1019, 497183}, {0x101A, 498229}, {0x101B, 497463}, {0x101C, 497146}, {0x101D, 498137}, {0x101E, 497513}, {0x101F, 496533}, {0x1020, 497164}, {0x1021, 496134}, {0x1022, 497580}, {0x1023, 496551}, {0x1024, 496568}, {0x1025, 498000}, {0x1026, 498017}, {0x1027, 496343}, {0x1028, 497247}, {0x1029, 497409}, {0x102A, 496175}, {0x102B, 500098}, {0x102C, 499592}, {0x102D, 499771}, {0x102E, 499792}, {0x102F, 500125}, {0x1030, 500146}, {0x1031, 499691}, {0x1032, 499614}, {0x1033, 499897}, {0x1034, 499923}, {0x1035, 499712}, {0x1036, 498614}, {0x1037, 498654}, {0x1038, 499068}, {0x1039, 499048}, {0x103A, 498636}, {0x103B, 495762}, {0x103C, 495696}, {0x103D, 495729}, {0x103E, 495663}, {0x103F, 496509}, {0x1040, 496115}, {0x1041, 496021}, {0x1042, 496097}, {0x1043, 496077}, {0x1044, 495983}, {0x1045, 495964}, {0x1046, 496059}, {0x1047, 496039}, {0x1048, 495944}, {0x1049, 496002}, {0x104A, 498731}, {0x104B, 498821}, {0x104C, 499441}, {0x104D, 499392}, {0x104E, 499279}, {0x104F, 499417}, {0x1050, 497561}, {0x1051, 497905}, {0x1052, 498086}, {0x1053, 498111}, {0x1054, 498035}, {0x1055, 498060}, {0x1056, 500227}, {0x1057, 500256}, {0x1058, 500168}, {0x1059, 500197}, {0x105A, 497291}, {0x105B, 497268}, {0x105C, 497201}, {0x105D, 497224}, {0x105E, 495869}, {0x105F, 495832}, {0x1060, 495795}, {0x1061, 497531}, {0x1062, 499948}, {0x1063, 499521}, {0x1064, 499556}, {0x1065, 498192}, {0x1066, 498155}, {0x1067, 500286}, {0x1068, 500326}, {0x1069, 499089}, {0x106A, 499127}, {0x106B, 499165}, {0x106C, 499203}, {0x106D, 499241}, {0x106E, 496398}, {0x106F, 496435}, {0x1070, 496360}, {0x1071, 499739}, {0x1072, 499842}, {0x1073, 499870}, {0x1074, 499814}, {0x1075, 497740}, {0x1076, 497763}, {0x1077, 497694}, {0x1078, 497625}, {0x1079, 497882}, {0x107A, 497810}, {0x107B, 497648}, {0x107C, 497787}, {0x107D, 497834}, {0x107E, 497671}, {0x107F, 497602}, {0x1080, 497858}, {0x1081, 497717}, {0x1082, 495906}, {0x1083, 499981}, {0x1084, 500008}, {0x1085, 500034}, {0x1086, 500066}, {0x1087, 498948}, {0x1088, 498973}, {0x1089, 498998}, {0x108A, 499023}, {0x108B, 498882}, {0x108C, 498915}, {0x108D, 498842}, {0x108E, 497481}, {0x108F, 498787}, {0x1090, 498590}, {0x1091, 498471}, {0x1092, 498567}, {0x1093, 498542}, {0x1094, 498423}, {0x1095, 498399}, {0x1096, 498519}, {0x1097, 498494}, {0x1098, 498374}, {0x1099, 498447}, {0x109A, 498677}, {0x109B, 498704}, {0x109C, 499636}, {0x109D, 499663}, {0x109E, 499497}, {0x109F, 499465}, {0x10A0, 293763}, {0x10A1, 293790}, {0x10A2, 293987}, {0x10A3, 293932}, {0x10A4, 293960}, {0x10A5, 294688}, {0x10A6, 294771}, {0x10A7, 294605}, {0x10A8, 294183}, {0x10A9, 294267}, {0x10AA, 294324}, {0x10AB, 294352}, {0x10AC, 294380}, {0x10AD, 294408}, {0x10AE, 294435}, {0x10AF, 294799}, {0x10B0, 294520}, {0x10B1, 294548}, {0x10B2, 294633}, {0x10B3, 294661}, {0x10B4, 294463}, {0x10B5, 294295}, {0x10B6, 294015}, {0x10B7, 294492}, {0x10B8, 294576}, {0x10B9, 293875}, {0x10BA, 293818}, {0x10BB, 294239}, {0x10BC, 293904}, {0x10BD, 293846}, {0x10BE, 294743}, {0x10BF, 294210}, {0x10C0, 294044}, {0x10C1, 294100}, {0x10C2, 294127}, {0x10C3, 294716}, {0x10C4, 294072}, {0x10C5, 294155}, {0x10D0, 294848}, {0x10D1, 294867}, {0x10D2, 295049}, {0x10D3, 294969}, {0x10D4, 295011}, {0x10D5, 295577}, {0x10D6, 295655}, {0x10D7, 295491}, {0x10D8, 295189}, {0x10D9, 295249}, {0x10DA, 295290}, {0x10DB, 295310}, {0x10DC, 295330}, {0x10DD, 295350}, {0x10DE, 295369}, {0x10DF, 295675}, {0x10E0, 295430}, {0x10E1, 295450}, {0x10E2, 295511}, {0x10E3, 295558}, {0x10E4, 295389}, {0x10E5, 295269}, {0x10E6, 295069}, {0x10E7, 295410}, {0x10E8, 295470}, {0x10E9, 294928}, {0x10EA, 294887}, {0x10EB, 295229}, {0x10EC, 294949}, {0x10ED, 294907}, {0x10EE, 295616}, {0x10EF, 295208}, {0x10F0, 295090}, {0x10F1, 295130}, {0x10F2, 295149}, {0x10F3, 295597}, {0x10F4, 295110}, {0x10F5, 295169}, {0x10F6, 295030}, {0x10F7, 295636}, {0x10F8, 294989}, {0x10F9, 295531}, {0x10FA, 294828}, {0x10FB, 295696}, {0x10FC, 479159}, {0x1100, 329077}, {0x1101, 331051}, {0x1102, 329265}, {0x1103, 331332}, {0x1104, 331247}, {0x1105, 330076}, {0x1106, 329130}, {0x1107, 329564}, {0x1108, 331106}, {0x1109, 330490}, {0x110A, 331160}, {0x110B, 328529}, {0x110C, 328407}, {0x110D, 330937}, {0x110E, 328161}, {0x110F, 329053}, {0x1110, 331308}, {0x1111, 329480}, {0x1112, 328480}, {0x1113, 329343}, {0x1114, 331079}, {0x1115, 329427}, {0x1116, 329372}, {0x1117, 331384}, {0x1118, 330277}, {0x1119, 331133}, {0x111A, 330126}, {0x111B, 328988}, {0x111C, 329181}, {0x111D, 328896}, {0x111E, 329702}, {0x111F, 329731}, {0x1120, 330047}, {0x1121, 329789}, {0x1122, 329849}, {0x1123, 329951}, {0x1124, 329883}, {0x1125, 329985}, {0x1126, 329816}, {0x1127, 329616}, {0x1128, 329586}, {0x1129, 330017}, {0x112A, 329759}, {0x112B, 328958}, {0x112C, 329018}, {0x112D, 330650}, {0x112E, 330705}, {0x112F, 330909}, {0x1130, 330822}, {0x1131, 330678}, {0x1132, 330761}, {0x1133, 330788}, {0x1134, 330849}, {0x1135, 330594}, {0x1136, 330540}, {0x1137, 330511}, {0x1138, 330621}, {0x1139, 330880}, {0x113A, 330732}, {0x113B, 330567}, {0x113C, 328309}, {0x113D, 328373}, {0x113E, 328054}, {0x113F, 328124}, {0x1140, 329456}, {0x1141, 328637}, {0x1142, 328867}, {0x1143, 328666}, {0x1144, 328754}, {0x1145, 328810}, {0x1146, 328694}, {0x1147, 331024}, {0x1148, 328581}, {0x1149, 328551}, {0x114A, 328837}, {0x114B, 328724}, {0x114C, 331557}, {0x114D, 328429}, {0x114E, 328279}, {0x114F, 328338}, {0x1150, 328021}, {0x1151, 328086}, {0x1152, 328215}, {0x1153, 328185}, {0x1154, 328247}, {0x1155, 327986}, {0x1156, 329534}, {0x1157, 328926}, {0x1158, 330997}, {0x1159, 331529}, {0x115A, 329100}, {0x115B, 329400}, {0x115C, 329287}, {0x115D, 329315}, {0x115E, 331472}, {0x115F, 328457}, {0x1160, 336293}, {0x1161, 335781}, {0x1162, 335864}, {0x1163, 337191}, {0x1164, 337278}, {0x1165, 336052}, {0x1166, 336033}, {0x1167, 337319}, {0x1168, 337299}, {0x1169, 336648}, {0x116A, 337089}, {0x116B, 337109}, {0x116C, 336865}, {0x116D, 337452}, {0x116E, 336913}, {0x116F, 337150}, {0x1170, 337130}, {0x1171, 337171}, {0x1172, 337655}, {0x1173, 336139}, {0x1174, 337410}, {0x1175, 336317}, {0x1176, 335822}, {0x1177, 335843}, {0x1178, 337211}, {0x1179, 337255}, {0x117A, 336095}, {0x117B, 336117}, {0x117C, 336072}, {0x117D, 337340}, {0x117E, 337363}, {0x117F, 336688}, {0x1180, 336667}, {0x1181, 336820}, {0x1182, 336710}, {0x1183, 336754}, {0x1184, 337584}, {0x1185, 337607}, {0x1186, 337631}, {0x1187, 337562}, {0x1188, 337540}, {0x1189, 336932}, {0x118A, 336953}, {0x118B, 336975}, {0x118C, 337044}, {0x118D, 337023}, {0x118E, 337675}, {0x118F, 337742}, {0x1190, 337720}, {0x1191, 337854}, {0x1192, 337831}, {0x1193, 337809}, {0x1194, 337765}, {0x1195, 336271}, {0x1196, 336226}, {0x1197, 337430}, {0x1198, 336336}, {0x1199, 336490}, {0x119A, 336425}, {0x119B, 336469}, {0x119C, 336382}, {0x119D, 336357}, {0x119E, 335884}, {0x119F, 335957}, {0x11A0, 336008}, {0x11A1, 335983}, {0x11A2, 336885}, {0x11A3, 335800}, {0x11A4, 337233}, {0x11A5, 337386}, {0x11A6, 336775}, {0x11A7, 336797}, {0x11A8, 332144}, {0x11A9, 334962}, {0x11AA, 332352}, {0x11AB, 332806}, {0x11AC, 332860}, {0x11AD, 332889}, {0x11AE, 335323}, {0x11AF, 333642}, {0x11B0, 333762}, {0x11B1, 333863}, {0x11B2, 334088}, {0x11B3, 334259}, {0x11B4, 334355}, {0x11B5, 334057}, {0x11B6, 333665}, {0x11B7, 332417}, {0x11B8, 333311}, {0x11B9, 333549}, {0x11BA, 334560}, {0x11BB, 335139}, {0x11BC, 331874}, {0x11BD, 331649}, {0x11BE, 331624}, {0x11BF, 332119}, {0x11C0, 335298}, {0x11C1, 333192}, {0x11C2, 331735}, {0x11C3, 332322}, {0x11C4, 332381}, {0x11C5, 332918}, {0x11C6, 333067}, {0x11C7, 333008}, {0x11C8, 332948}, {0x11C9, 333036}, {0x11CA, 335409}, {0x11CB, 335470}, {0x11CC, 333828}, {0x11CD, 333997}, {0x11CE, 334386}, {0x11CF, 334416}, {0x11D0, 335075}, {0x11D1, 333927}, {0x11D2, 333963}, {0x11D3, 334189}, {0x11D4, 334117}, {0x11D5, 333694}, {0x11D6, 334322}, {0x11D7, 334026}, {0x11D8, 333731}, {0x11D9, 334452}, {0x11DA, 332529}, {0x11DB, 332682}, {0x11DC, 332619}, {0x11DD, 332711}, {0x11DE, 332773}, {0x11DF, 332588}, {0x11E0, 332440}, {0x11E1, 332500}, {0x11E2, 331993}, {0x11E3, 333483}, {0x11E4, 333452}, {0x11E5, 333394}, {0x11E6, 332057}, {0x11E7, 334704}, {0x11E8, 334877}, {0x11E9, 334819}, {0x11EA, 334791}, {0x11EB, 333097}, {0x11EC, 331928}, {0x11ED, 331958}, {0x11EE, 334934}, {0x11EF, 331897}, {0x11F0, 335626}, {0x11F1, 335750}, {0x11F2, 335716}, {0x11F3, 333217}, {0x11F4, 332024}, {0x11F5, 331787}, {0x11F6, 331845}, {0x11F7, 331758}, {0x11F8, 331816}, {0x11F9, 335597}, {0x11FA, 332262}, {0x11FB, 332292}, {0x11FC, 332168}, {0x11FD, 332230}, {0x11FE, 332200}, {0x11FF, 335019}, {0x1200, 281395}, {0x1201, 281724}, {0x1202, 281660}, {0x1203, 281416}, {0x1204, 281459}, {0x1205, 281438}, {0x1206, 281681}, {0x1207, 281702}, {0x1208, 282650}, {0x1209, 282800}, {0x120A, 282736}, {0x120B, 282671}, {0x120C, 282714}, {0x120D, 282693}, {0x120E, 282757}, {0x120F, 282821}, {0x1210, 281481}, {0x1211, 281615}, {0x1212, 281571}, {0x1213, 281503}, {0x1214, 281548}, {0x1215, 281526}, {0x1216, 281593}, {0x1217, 281637}, {0x1218, 282843}, {0x1219, 282993}, {0x121A, 282929}, {0x121B, 282864}, {0x121C, 282907}, {0x121D, 282886}, {0x121E, 282950}, {0x121F, 283014}, {0x1220, 285807}, {0x1221, 285941}, {0x1222, 285897}, {0x1223, 285829}, {0x1224, 285874}, {0x1225, 285852}, {0x1226, 285919}, {0x1227, 285963}, {0x1228, 284913}, {0x1229, 285063}, {0x122A, 284999}, {0x122B, 284934}, {0x122C, 284977}, {0x122D, 284956}, {0x122E, 285020}, {0x122F, 285084}, {0x1230, 285128}, {0x1231, 285764}, {0x1232, 285544}, {0x1233, 285149}, {0x1234, 285320}, {0x1235, 285171}, {0x1236, 285565}, {0x1237, 285785}, {0x1238, 285342}, {0x1239, 285499}, {0x123A, 285432}, {0x123B, 285364}, {0x123C, 285409}, {0x123D, 285387}, {0x123E, 285454}, {0x123F, 285521}, {0x1240, 284201}, {0x1241, 284624}, {0x1242, 284560}, {0x1243, 284222}, {0x1244, 284265}, {0x1245, 284244}, {0x1246, 284581}, {0x1247, 284602}, {0x1248, 284645}, {0x124A, 284735}, {0x124B, 284667}, {0x124C, 284712}, {0x124D, 284690}, {0x1250, 284287}, {0x1251, 284421}, {0x1252, 284377}, {0x1253, 284309}, {0x1254, 284354}, {0x1255, 284332}, {0x1256, 284399}, {0x1258, 284443}, {0x125A, 284537}, {0x125B, 284466}, {0x125C, 284513}, {0x125D, 284490}, {0x1260, 278198}, {0x1261, 278504}, {0x1262, 278440}, {0x1263, 278219}, {0x1264, 278418}, {0x1265, 278397}, {0x1266, 278461}, {0x1267, 278525}, {0x1268, 286879}, {0x1269, 287007}, {0x126A, 286965}, {0x126B, 286900}, {0x126C, 286943}, {0x126D, 286922}, {0x126E, 286986}, {0x126F, 287028}, {0x1270, 285986}, {0x1271, 286657}, {0x1272, 286274}, {0x1273, 286007}, {0x1274, 286050}, {0x1275, 286029}, {0x1276, 286295}, {0x1277, 286678}, {0x1278, 278614}, {0x1279, 279455}, {0x127A, 279391}, {0x127B, 278635}, {0x127C, 279167}, {0x127D, 279146}, {0x127E, 279412}, {0x127F, 279476}, {0x1280, 287221}, {0x1281, 287371}, {0x1282, 287307}, {0x1283, 287242}, {0x1284, 287285}, {0x1285, 287264}, {0x1286, 287328}, {0x1287, 287349}, {0x1288, 287392}, {0x128A, 287482}, {0x128B, 287414}, {0x128C, 287459}, {0x128D, 287437}, {0x1290, 283125}, {0x1291, 283275}, {0x1292, 283211}, {0x1293, 283146}, {0x1294, 283189}, {0x1295, 283168}, {0x1296, 283232}, {0x1297, 283296}, {0x1298, 283318}, {0x1299, 283475}, {0x129A, 283408}, {0x129B, 283340}, {0x129C, 283385}, {0x129D, 283363}, {0x129E, 283430}, {0x129F, 283497}, {0x12A0, 280807}, {0x12A1, 281006}, {0x12A2, 280921}, {0x12A3, 280835}, {0x12A4, 280892}, {0x12A5, 280864}, {0x12A6, 280949}, {0x12A7, 281034}, {0x12A8, 281938}, {0x12A9, 282088}, {0x12AA, 282024}, {0x12AB, 281959}, {0x12AC, 282002}, {0x12AD, 281981}, {0x12AE, 282045}, {0x12AF, 282066}, {0x12B0, 282109}, {0x12B2, 282199}, {0x12B3, 282131}, {0x12B4, 282176}, {0x12B5, 282154}, {0x12B8, 282221}, {0x12B9, 282355}, {0x12BA, 282311}, {0x12BB, 282243}, {0x12BC, 282288}, {0x12BD, 282266}, {0x12BE, 282333}, {0x12C0, 282377}, {0x12C2, 282471}, {0x12C3, 282400}, {0x12C4, 282447}, {0x12C5, 282424}, {0x12C8, 287050}, {0x12C9, 287200}, {0x12CA, 287136}, {0x12CB, 287071}, {0x12CC, 287114}, {0x12CD, 287093}, {0x12CE, 287157}, {0x12CF, 287178}, {0x12D0, 283651}, {0x12D1, 283839}, {0x12D2, 283777}, {0x12D3, 283682}, {0x12D4, 283745}, {0x12D5, 283714}, {0x12D6, 283808}, {0x12D8, 287831}, {0x12D9, 288160}, {0x12DA, 288096}, {0x12DB, 287852}, {0x12DC, 287895}, {0x12DD, 287874}, {0x12DE, 288117}, {0x12DF, 288181}, {0x12E0, 287917}, {0x12E1, 288051}, {0x12E2, 288007}, {0x12E3, 287939}, {0x12E4, 287984}, {0x12E5, 287962}, {0x12E6, 288029}, {0x12E7, 288073}, {0x12E8, 287660}, {0x12E9, 287810}, {0x12EA, 287746}, {0x12EB, 287681}, {0x12EC, 287724}, {0x12ED, 287703}, {0x12EE, 287767}, {0x12EF, 287788}, {0x12F0, 279498}, {0x12F1, 279990}, {0x12F2, 279926}, {0x12F3, 279519}, {0x12F4, 279904}, {0x12F5, 279883}, {0x12F6, 279947}, {0x12F7, 280011}, {0x12F8, 279541}, {0x12F9, 279838}, {0x12FA, 279771}, {0x12FB, 279563}, {0x12FC, 279608}, {0x12FD, 279586}, {0x12FE, 279793}, {0x12FF, 279860}, {0x1300, 281745}, {0x1301, 281895}, {0x1302, 281831}, {0x1303, 281766}, {0x1304, 281809}, {0x1305, 281788}, {0x1306, 281852}, {0x1307, 281916}, {0x1308, 280427}, {0x1309, 281106}, {0x130A, 280786}, {0x130B, 280448}, {0x130C, 280491}, {0x130D, 280470}, {0x130E, 281063}, {0x130F, 281084}, {0x1310, 281127}, {0x1312, 281217}, {0x1313, 281149}, {0x1314, 281194}, {0x1315, 281172}, {0x1318, 280513}, {0x1319, 280647}, {0x131A, 280603}, {0x131B, 280535}, {0x131C, 280580}, {0x131D, 280558}, {0x131E, 280625}, {0x131F, 280692}, {0x1320, 286072}, {0x1321, 286229}, {0x1322, 286162}, {0x1323, 286094}, {0x1324, 286139}, {0x1325, 286117}, {0x1326, 286184}, {0x1327, 286251}, {0x1328, 279189}, {0x1329, 279346}, {0x132A, 279279}, {0x132B, 279211}, {0x132C, 279256}, {0x132D, 279234}, {0x132E, 279301}, {0x132F, 279368}, {0x1330, 283606}, {0x1331, 283982}, {0x1332, 283915}, {0x1333, 283628}, {0x1334, 283892}, {0x1335, 283870}, {0x1336, 283937}, {0x1337, 284004}, {0x1338, 286338}, {0x1339, 286472}, {0x133A, 286428}, {0x133B, 286360}, {0x133C, 286405}, {0x133D, 286383}, {0x133E, 286450}, {0x133F, 286494}, {0x1340, 286700}, {0x1341, 286857}, {0x1342, 286790}, {0x1343, 286722}, {0x1344, 286767}, {0x1345, 286745}, {0x1346, 286812}, {0x1347, 286834}, {0x1348, 280167}, {0x1349, 280295}, {0x134A, 280253}, {0x134B, 280188}, {0x134C, 280231}, {0x134D, 280210}, {0x134E, 280274}, {0x134F, 280316}, {0x1350, 283520}, {0x1351, 284091}, {0x1352, 284027}, {0x1353, 283541}, {0x1354, 283584}, {0x1355, 283563}, {0x1356, 284048}, {0x1357, 284112}, {0x1358, 285106}, {0x1359, 283103}, {0x135A, 280405}, {0x135D, 277489}, {0x135E, 277576}, {0x135F, 277541}, {0x1360, 278157}, {0x1361, 288633}, {0x1362, 277808}, {0x1363, 277613}, {0x1364, 278179}, {0x1365, 277474}, {0x1366, 278111}, {0x1367, 278134}, {0x1368, 278082}, {0x1369, 277709}, {0x136A, 277789}, {0x136B, 277768}, {0x136C, 277669}, {0x136D, 277649}, {0x136E, 277749}, {0x136F, 277728}, {0x1370, 277628}, {0x1371, 277689}, {0x1372, 277987}, {0x1373, 278059}, {0x1374, 278036}, {0x1375, 277872}, {0x1376, 277850}, {0x1377, 277965}, {0x1378, 277941}, {0x1379, 277827}, {0x137A, 277918}, {0x137B, 277894}, {0x137C, 278007}, {0x1380, 285256}, {0x1381, 283081}, {0x1382, 283058}, {0x1383, 283036}, {0x1384, 285192}, {0x1385, 278592}, {0x1386, 278569}, {0x1387, 278547}, {0x1388, 285224}, {0x1389, 280383}, {0x138A, 280360}, {0x138B, 280338}, {0x138C, 285288}, {0x138D, 284179}, {0x138E, 284156}, {0x138F, 284134}, {0x1390, 288607}, {0x1391, 288386}, {0x1392, 288547}, {0x1393, 288574}, {0x1394, 288444}, {0x1395, 288496}, {0x1396, 288359}, {0x1397, 288470}, {0x1398, 288412}, {0x1399, 288522}, {0x13A0, 130486}, {0x13A1, 130638}, {0x13A2, 130904}, {0x13A3, 131284}, {0x13A4, 131851}, {0x13A5, 131869}, {0x13A6, 130656}, {0x13A7, 130922}, {0x13A8, 130675}, {0x13A9, 130694}, {0x13AA, 130713}, {0x13AB, 130732}, {0x13AC, 130751}, {0x13AD, 130770}, {0x13AE, 130789}, {0x13AF, 130808}, {0x13B0, 130847}, {0x13B1, 130866}, {0x13B2, 130885}, {0x13B3, 130941}, {0x13B4, 130960}, {0x13B5, 130979}, {0x13B6, 130998}, {0x13B7, 131017}, {0x13B8, 131036}, {0x13B9, 131055}, {0x13BA, 131074}, {0x13BB, 131093}, {0x13BC, 131112}, {0x13BD, 131131}, {0x13BE, 131150}, {0x13BF, 130827}, {0x13C0, 131169}, {0x13C1, 131189}, {0x13C2, 131208}, {0x13C3, 131227}, {0x13C4, 131246}, {0x13C5, 131265}, {0x13C6, 131302}, {0x13C7, 131322}, {0x13C8, 131342}, {0x13C9, 131362}, {0x13CA, 131382}, {0x13CB, 131402}, {0x13CC, 131440}, {0x13CD, 131422}, {0x13CE, 131459}, {0x13CF, 131478}, {0x13D0, 131497}, {0x13D1, 131516}, {0x13D2, 131535}, {0x13D3, 130504}, {0x13D4, 131554}, {0x13D5, 130523}, {0x13D6, 131573}, {0x13D7, 130542}, {0x13D8, 131592}, {0x13D9, 130581}, {0x13DA, 130600}, {0x13DB, 130619}, {0x13DC, 130561}, {0x13DD, 131611}, {0x13DE, 131631}, {0x13DF, 131651}, {0x13E0, 131671}, {0x13E1, 131691}, {0x13E2, 131711}, {0x13E3, 131731}, {0x13E4, 131751}, {0x13E5, 131771}, {0x13E6, 131791}, {0x13E7, 131811}, {0x13E8, 131831}, {0x13E9, 131887}, {0x13EA, 131906}, {0x13EB, 131925}, {0x13EC, 131944}, {0x13ED, 131963}, {0x13EE, 131982}, {0x13EF, 132001}, {0x13F0, 132020}, {0x13F1, 132039}, {0x13F2, 132058}, {0x13F3, 132077}, {0x13F4, 132096}, {0x1400, 115582}, {0x1401, 114672}, {0x1402, 107819}, {0x1403, 115608}, {0x1404, 115629}, {0x1405, 118814}, {0x1406, 119216}, {0x1407, 127105}, {0x1408, 109476}, {0x1409, 110244}, {0x140A, 107776}, {0x140B, 107797}, {0x140C, 123348}, {0x140D, 125931}, {0x140E, 126387}, {0x140F, 125963}, {0x1410, 126409}, {0x1411, 125995}, {0x1412, 126432}, {0x1413, 126028}, {0x1414, 126454}, {0x1415, 126060}, {0x1416, 117754}, {0x1417, 123280}, {0x1418, 125866}, {0x1419, 123302}, {0x141A, 125898}, {0x141B, 117723}, {0x141C, 107865}, {0x141D, 127255}, {0x141E, 115528}, {0x141F, 114901}, {0x1420, 115102}, {0x1421, 114932}, {0x1422, 115391}, {0x1423, 115235}, {0x1424, 115276}, {0x1425, 114974}, {0x1426, 115012}, {0x1427, 115133}, {0x1428, 115306}, {0x1429, 115169}, {0x142A, 115067}, {0x142B, 114722}, {0x142C, 115651}, {0x142D, 119194}, {0x142E, 107916}, {0x142F, 119373}, {0x1430, 119326}, {0x1431, 119395}, {0x1432, 119417}, {0x1433, 119440}, {0x1434, 119462}, {0x1435, 127134}, {0x1436, 109996}, {0x1437, 110027}, {0x1438, 119281}, {0x1439, 119303}, {0x143A, 119555}, {0x143B, 124762}, {0x143C, 119578}, {0x143D, 124795}, {0x143E, 119601}, {0x143F, 124828}, {0x1440, 119625}, {0x1441, 124862}, {0x1442, 119648}, {0x1443, 124895}, {0x1444, 119508}, {0x1445, 124695}, {0x1446, 119531}, {0x1447, 124728}, {0x1448, 127164}, {0x1449, 119260}, {0x144A, 124664}, {0x144B, 109967}, {0x144C, 121971}, {0x144D, 121924}, {0x144E, 122502}, {0x144F, 122524}, {0x1450, 122693}, {0x1451, 122715}, {0x1452, 127225}, {0x1453, 108969}, {0x1454, 109072}, {0x1455, 121879}, {0x1456, 121901}, {0x1457, 123071}, {0x1458, 125699}, {0x1459, 123094}, {0x145A, 125732}, {0x145B, 123117}, {0x145C, 125765}, {0x145D, 123141}, {0x145E, 125799}, {0x145F, 123164}, {0x1460, 125832}, {0x1461, 123024}, {0x1462, 125632}, {0x1463, 123047}, {0x1464, 125665}, {0x1465, 117691}, {0x1466, 121858}, {0x1467, 122761}, {0x1468, 122978}, {0x1469, 123001}, {0x146A, 122738}, {0x146B, 115786}, {0x146C, 115739}, {0x146D, 115808}, {0x146E, 115830}, {0x146F, 115853}, {0x1470, 115875}, {0x1471, 126985}, {0x1472, 115694}, {0x1473, 115716}, {0x1474, 115991}, {0x1475, 123705}, {0x1476, 116014}, {0x1477, 123738}, {0x1478, 116037}, {0x1479, 123771}, {0x147A, 116061}, {0x147B, 123805}, {0x147C, 116084}, {0x147D, 123838}, {0x147E, 115920}, {0x147F, 123638}, {0x1480, 115943}, {0x1481, 123671}, {0x1482, 117373}, {0x1483, 115673}, {0x1484, 115898}, {0x1485, 121541}, {0x1486, 121577}, {0x1487, 121613}, {0x1488, 121505}, {0x1489, 114368}, {0x148A, 108758}, {0x148B, 114418}, {0x148C, 114440}, {0x148D, 114463}, {0x148E, 114485}, {0x148F, 126955}, {0x1490, 108713}, {0x1491, 108735}, {0x1492, 114555}, {0x1493, 123437}, {0x1494, 114578}, {0x1495, 123470}, {0x1496, 114601}, {0x1497, 123503}, {0x1498, 114625}, {0x1499, 123537}, {0x149A, 114648}, {0x149B, 123570}, {0x149C, 114508}, {0x149D, 123370}, {0x149E, 114531}, {0x149F, 123403}, {0x14A0, 117341}, {0x14A1, 108692}, {0x14A2, 120905}, {0x14A3, 116773}, {0x14A4, 116726}, {0x14A5, 116873}, {0x14A6, 116895}, {0x14A7, 116918}, {0x14A8, 116940}, {0x14A9, 127045}, {0x14AA, 116681}, {0x14AB, 116703}, {0x14AC, 117043}, {0x14AD, 124397}, {0x14AE, 117066}, {0x14AF, 124430}, {0x14B0, 117089}, {0x14B1, 124463}, {0x14B2, 117113}, {0x14B3, 124497}, {0x14B4, 117136}, {0x14B5, 124530}, {0x14B6, 116996}, {0x14B7, 124330}, {0x14B8, 117019}, {0x14B9, 124363}, {0x14BA, 117405}, {0x14BB, 116660}, {0x14BC, 124299}, {0x14BD, 116851}, {0x14BE, 107938}, {0x14BF, 120695}, {0x14C0, 117840}, {0x14C1, 117317}, {0x14C2, 118096}, {0x14C3, 118118}, {0x14C4, 118311}, {0x14C5, 118333}, {0x14C6, 127075}, {0x14C7, 117272}, {0x14C8, 117294}, {0x14C9, 118697}, {0x14CA, 124631}, {0x14CB, 118650}, {0x14CC, 124564}, {0x14CD, 118673}, {0x14CE, 124597}, {0x14CF, 117437}, {0x14D0, 117160}, {0x14D1, 111753}, {0x14D2, 118074}, {0x14D3, 116221}, {0x14D4, 116174}, {0x14D5, 116406}, {0x14D6, 116428}, {0x14D7, 116451}, {0x14D8, 116473}, {0x14D9, 127015}, {0x14DA, 116129}, {0x14DB, 116151}, {0x14DC, 116543}, {0x14DD, 124132}, {0x14DE, 116566}, {0x14DF, 124165}, {0x14E0, 116589}, {0x14E1, 124198}, {0x14E2, 116613}, {0x14E3, 124232}, {0x14E4, 116636}, {0x14E5, 124265}, {0x14E6, 116496}, {0x14E7, 124065}, {0x14E8, 116519}, {0x14E9, 124098}, {0x14EA, 116108}, {0x14EB, 123872}, {0x14EC, 116795}, {0x14ED, 120963}, {0x14EE, 120414}, {0x14EF, 121415}, {0x14F0, 121437}, {0x14F1, 121460}, {0x14F2, 121482}, {0x14F3, 127195}, {0x14F4, 120369}, {0x14F5, 120391}, {0x14F6, 121741}, {0x14F7, 125430}, {0x14F8, 121764}, {0x14F9, 125463}, {0x14FA, 121787}, {0x14FB, 125496}, {0x14FC, 121811}, {0x14FD, 125530}, {0x14FE, 121834}, {0x14FF, 125563}, {0x1500, 121694}, {0x1501, 125363}, {0x1502, 121717}, {0x1503, 125396}, {0x1504, 117659}, {0x1505, 120348}, {0x1506, 107970}, {0x1507, 121672}, {0x1508, 108502}, {0x1509, 116963}, {0x150A, 117532}, {0x150B, 117469}, {0x150C, 117595}, {0x150D, 117627}, {0x150E, 117563}, {0x150F, 117500}, {0x1510, 121078}, {0x1511, 121101}, {0x1512, 121124}, {0x1513, 121148}, {0x1514, 121171}, {0x1515, 121007}, {0x1516, 121030}, {0x1517, 121268}, {0x1518, 125191}, {0x1519, 121292}, {0x151A, 125225}, {0x151B, 121316}, {0x151C, 125259}, {0x151D, 121341}, {0x151E, 125294}, {0x151F, 121365}, {0x1520, 125328}, {0x1521, 121219}, {0x1522, 125122}, {0x1523, 121243}, {0x1524, 125156}, {0x1525, 120985}, {0x1526, 127405}, {0x1527, 127358}, {0x1528, 127427}, {0x1529, 127449}, {0x152A, 127472}, {0x152B, 127494}, {0x152C, 127283}, {0x152D, 127313}, {0x152E, 127335}, {0x152F, 127587}, {0x1530, 126191}, {0x1531, 127610}, {0x1532, 126224}, {0x1533, 127633}, {0x1534, 126257}, {0x1535, 127657}, {0x1536, 126291}, {0x1537, 127680}, {0x1538, 126324}, {0x1539, 127540}, {0x153A, 126124}, {0x153B, 127563}, {0x153C, 126157}, {0x153D, 117785}, {0x153E, 126934}, {0x153F, 108090}, {0x1540, 126093}, {0x1541, 120934}, {0x1542, 120071}, {0x1543, 119920}, {0x1544, 123968}, {0x1545, 120024}, {0x1546, 120093}, {0x1547, 120115}, {0x1548, 120138}, {0x1549, 120160}, {0x154A, 124000}, {0x154B, 119979}, {0x154C, 120001}, {0x154D, 123903}, {0x154E, 120206}, {0x154F, 125088}, {0x1550, 119899}, {0x1551, 124929}, {0x1552, 116823}, {0x1553, 114834}, {0x1554, 114810}, {0x1555, 114856}, {0x1556, 114878}, {0x1557, 115430}, {0x1558, 115452}, {0x1559, 114765}, {0x155A, 114787}, {0x155B, 115504}, {0x155C, 123604}, {0x155D, 114744}, {0x155E, 122312}, {0x155F, 117181}, {0x1560, 122335}, {0x1561, 117211}, {0x1562, 122358}, {0x1563, 117241}, {0x1564, 122382}, {0x1565, 122405}, {0x1566, 122265}, {0x1567, 122288}, {0x1568, 122453}, {0x1569, 125597}, {0x156A, 121993}, {0x156B, 122856}, {0x156C, 122880}, {0x156D, 122904}, {0x156E, 122807}, {0x156F, 122784}, {0x1570, 123211}, {0x1571, 123234}, {0x1572, 123257}, {0x1573, 123188}, {0x1574, 118469}, {0x1575, 118499}, {0x1576, 118529}, {0x1577, 118560}, {0x1578, 118590}, {0x1579, 118408}, {0x157A, 118438}, {0x157B, 118379}, {0x157C, 118621}, {0x157D, 115560}, {0x157E, 119762}, {0x157F, 119809}, {0x1580, 119831}, {0x1581, 119854}, {0x1582, 119876}, {0x1583, 119717}, {0x1584, 119739}, {0x1585, 119696}, {0x1586, 122571}, {0x1587, 122595}, {0x1588, 122619}, {0x1589, 122547}, {0x158A, 124992}, {0x158B, 125024}, {0x158C, 125056}, {0x158D, 124960}, {0x158E, 117931}, {0x158F, 117980}, {0x1590, 118003}, {0x1591, 118027}, {0x1592, 118050}, {0x1593, 117884}, {0x1594, 117907}, {0x1595, 117862}, {0x1596, 118141}, {0x1597, 120753}, {0x1598, 120783}, {0x1599, 120813}, {0x159A, 120723}, {0x159B, 126583}, {0x159C, 126617}, {0x159D, 126651}, {0x159E, 126549}, {0x159F, 126516}, {0x15A0, 116312}, {0x15A1, 116335}, {0x15A2, 116359}, {0x15A3, 116382}, {0x15A4, 116265}, {0x15A5, 116288}, {0x15A6, 116243}, {0x15A7, 122108}, {0x15A8, 122139}, {0x15A9, 122170}, {0x15AA, 122202}, {0x15AB, 122233}, {0x15AC, 122045}, {0x15AD, 122076}, {0x15AE, 122015}, {0x15AF, 107887}, {0x15B0, 108153}, {0x15B1, 108184}, {0x15B2, 108471}, {0x15B3, 108122}, {0x15B4, 108596}, {0x15B5, 108628}, {0x15B6, 108660}, {0x15B7, 108564}, {0x15B8, 108375}, {0x15B9, 108407}, {0x15BA, 108439}, {0x15BB, 108343}, {0x15BC, 108247}, {0x15BD, 108279}, {0x15BE, 108311}, {0x15BF, 108215}, {0x15C0, 120490}, {0x15C1, 120519}, {0x15C2, 120548}, {0x15C3, 120461}, {0x15C4, 109784}, {0x15C5, 109753}, {0x15C6, 109659}, {0x15C7, 109690}, {0x15C8, 109722}, {0x15C9, 109628}, {0x15CA, 112234}, {0x15CB, 112204}, {0x15CC, 112113}, {0x15CD, 112143}, {0x15CE, 112174}, {0x15CF, 112083}, {0x15D0, 113947}, {0x15D1, 113917}, {0x15D2, 113826}, {0x15D3, 113856}, {0x15D4, 113887}, {0x15D5, 113796}, {0x15D6, 110213}, {0x15D7, 110182}, {0x15D8, 110088}, {0x15D9, 110119}, {0x15DA, 110151}, {0x15DB, 110057}, {0x15DC, 112818}, {0x15DD, 112787}, {0x15DE, 112693}, {0x15DF, 112724}, {0x15E0, 112756}, {0x15E1, 112662}, {0x15E2, 113765}, {0x15E3, 113541}, {0x15E4, 113447}, {0x15E5, 113478}, {0x15E6, 113510}, {0x15E7, 113416}, {0x15E8, 112053}, {0x15E9, 112023}, {0x15EA, 111932}, {0x15EB, 111962}, {0x15EC, 111993}, {0x15ED, 111902}, {0x15EE, 111873}, {0x15EF, 109875}, {0x15F0, 109845}, {0x15F1, 109567}, {0x15F2, 109597}, {0x15F3, 109815}, {0x15F4, 109506}, {0x15F5, 110865}, {0x15F6, 110834}, {0x15F7, 110740}, {0x15F8, 110771}, {0x15F9, 110803}, {0x15FA, 110709}, {0x15FB, 111082}, {0x15FC, 111051}, {0x15FD, 110957}, {0x15FE, 110988}, {0x15FF, 111020}, {0x1600, 110926}, {0x1601, 110896}, {0x1602, 111843}, {0x1603, 111813}, {0x1604, 111692}, {0x1605, 111722}, {0x1606, 111783}, {0x1607, 111662}, {0x1608, 111632}, {0x1609, 111602}, {0x160A, 111511}, {0x160B, 111541}, {0x160C, 111572}, {0x160D, 111481}, {0x160E, 114128}, {0x160F, 114098}, {0x1610, 114007}, {0x1611, 114037}, {0x1612, 114068}, {0x1613, 113977}, {0x1614, 110648}, {0x1615, 120636}, {0x1616, 110618}, {0x1617, 110340}, {0x1618, 110370}, {0x1619, 110401}, {0x161A, 120607}, {0x161B, 110310}, {0x161C, 110587}, {0x161D, 110556}, {0x161E, 110462}, {0x161F, 110493}, {0x1620, 110525}, {0x1621, 110431}, {0x1622, 111451}, {0x1623, 111421}, {0x1624, 111143}, {0x1625, 111173}, {0x1626, 111391}, {0x1627, 111113}, {0x1628, 109258}, {0x1629, 109227}, {0x162A, 109133}, {0x162B, 109164}, {0x162C, 109196}, {0x162D, 109102}, {0x162E, 111360}, {0x162F, 111329}, {0x1630, 111235}, {0x1631, 111266}, {0x1632, 111298}, {0x1633, 111204}, {0x1634, 113104}, {0x1635, 113072}, {0x1636, 112975}, {0x1637, 113007}, {0x1638, 113040}, {0x1639, 112943}, {0x163A, 113198}, {0x163B, 113167}, {0x163C, 112880}, {0x163D, 112911}, {0x163E, 113136}, {0x163F, 112849}, {0x1640, 114338}, {0x1641, 114308}, {0x1642, 114217}, {0x1643, 114247}, {0x1644, 114278}, {0x1645, 114187}, {0x1646, 114158}, {0x1647, 110273}, {0x1648, 109445}, {0x1649, 109414}, {0x164A, 109320}, {0x164B, 109351}, {0x164C, 109383}, {0x164D, 109289}, {0x164E, 112632}, {0x164F, 112602}, {0x1650, 112294}, {0x1651, 112324}, {0x1652, 112572}, {0x1653, 112264}, {0x1654, 112541}, {0x1655, 112510}, {0x1656, 112416}, {0x1657, 112447}, {0x1658, 112479}, {0x1659, 112385}, {0x165A, 112355}, {0x165B, 113385}, {0x165C, 113354}, {0x165D, 113260}, {0x165E, 113291}, {0x165F, 113323}, {0x1660, 113229}, {0x1661, 108938}, {0x1662, 108907}, {0x1663, 108813}, {0x1664, 108844}, {0x1665, 108876}, {0x1666, 108782}, {0x1667, 113733}, {0x1668, 113701}, {0x1669, 113604}, {0x166A, 113636}, {0x166B, 113669}, {0x166C, 113572}, {0x166D, 114390}, {0x166E, 115475}, {0x166F, 119786}, {0x1670, 117956}, {0x1671, 118213}, {0x1672, 118237}, {0x1673, 118262}, {0x1674, 118286}, {0x1675, 118164}, {0x1676, 118188}, {0x1677, 126756}, {0x1678, 126792}, {0x1679, 126827}, {0x167A, 126863}, {0x167B, 126898}, {0x167C, 126685}, {0x167D, 126720}, {0x167E, 126477}, {0x167F, 108533}, {0x1680, 509890}, {0x1681, 509387}, {0x1682, 509604}, {0x1683, 509528}, {0x1684, 509749}, {0x1685, 509661}, {0x1686, 509806}, {0x1687, 509443}, {0x1688, 509787}, {0x1689, 509425}, {0x168A, 509406}, {0x168B, 509622}, {0x168C, 509547}, {0x168D, 509640}, {0x168E, 509767}, {0x168F, 509731}, {0x1690, 509369}, {0x1691, 509679}, {0x1692, 509846}, {0x1693, 509482}, {0x1694, 509583}, {0x1695, 509461}, {0x1696, 509696}, {0x1697, 509824}, {0x1698, 509565}, {0x1699, 509503}, {0x169A, 509712}, {0x169B, 509350}, {0x169C, 509862}, {0x16A0, 542487}, {0x16A1, 543692}, {0x16A2, 543669}, {0x16A3, 543778}, {0x16A4, 543763}, {0x16A5, 543707}, {0x16A6, 543606}, {0x16A7, 542470}, {0x16A8, 542141}, {0x16A9, 543133}, {0x16AA, 542080}, {0x16AB, 542098}, {0x16AC, 542950}, {0x16AD, 543412}, {0x16AE, 543066}, {0x16AF, 543081}, {0x16B0, 543097}, {0x16B1, 543224}, {0x16B2, 542802}, {0x16B3, 542252}, {0x16B4, 542782}, {0x16B5, 542515}, {0x16B6, 542453}, {0x16B7, 542547}, {0x16B8, 542530}, {0x16B9, 543722}, {0x16BA, 542610}, {0x16BB, 542589}, {0x16BC, 542884}, {0x16BD, 543317}, {0x16BE, 543035}, {0x16BF, 543381}, {0x16C0, 542353}, {0x16C1, 542712}, {0x16C2, 542397}, {0x16C3, 542761}, {0x16C4, 542572}, {0x16C5, 542853}, {0x16C6, 543254}, {0x16C7, 542739}, {0x16C8, 543180}, {0x16C9, 542116}, {0x16CA, 543566}, {0x16CB, 543529}, {0x16CC, 543442}, {0x16CD, 542200}, {0x16CE, 543794}, {0x16CF, 543640}, {0x16D0, 543472}, {0x16D1, 542290}, {0x16D2, 542162}, {0x16D3, 543283}, {0x16D4, 542375}, {0x16D5, 543113}, {0x16D6, 542429}, {0x16D7, 543009}, {0x16D8, 542918}, {0x16D9, 543350}, {0x16DA, 542821}, {0x16DB, 542331}, {0x16DC, 542675}, {0x16DD, 542658}, {0x16DE, 542305}, {0x16DF, 543151}, {0x16E0, 542412}, {0x16E1, 542695}, {0x16E2, 542269}, {0x16E3, 542215}, {0x16E4, 542233}, {0x16E5, 543588}, {0x16E6, 542981}, {0x16E7, 543502}, {0x16E8, 542632}, {0x16E9, 543209}, {0x16EA, 543748}, {0x16EB, 543836}, {0x16EC, 543809}, {0x16ED, 542056}, {0x16EE, 542014}, {0x16EF, 543861}, {0x16F0, 542034}, {0x1700, 570814}, {0x1701, 570903}, {0x1702, 571065}, {0x1703, 570920}, {0x1704, 570867}, {0x1705, 570992}, {0x1706, 571047}, {0x1707, 570849}, {0x1708, 570974}, {0x1709, 571011}, {0x170A, 570831}, {0x170B, 570956}, {0x170C, 571100}, {0x170E, 570938}, {0x170F, 571082}, {0x1710, 571029}, {0x1711, 570885}, {0x1712, 571138}, {0x1713, 571159}, {0x1714, 571118}, {0x1720, 340326}, {0x1721, 340415}, {0x1722, 340595}, {0x1723, 340432}, {0x1724, 340379}, {0x1725, 340504}, {0x1726, 340577}, {0x1727, 340361}, {0x1728, 340486}, {0x1729, 340523}, {0x172A, 340343}, {0x172B, 340468}, {0x172C, 340630}, {0x172D, 340541}, {0x172E, 340450}, {0x172F, 340612}, {0x1730, 340559}, {0x1731, 340397}, {0x1732, 340670}, {0x1733, 340691}, {0x1734, 340648}, {0x1735, 526743}, {0x1736, 526713}, {0x1740, 97259}, {0x1741, 97338}, {0x1742, 97498}, {0x1743, 97353}, {0x1744, 97306}, {0x1745, 97417}, {0x1746, 97482}, {0x1747, 97290}, {0x1748, 97401}, {0x1749, 97434}, {0x174A, 97274}, {0x174B, 97385}, {0x174C, 97529}, {0x174D, 97450}, {0x174E, 97369}, {0x174F, 97513}, {0x1750, 97466}, {0x1751, 97322}, {0x1752, 97545}, {0x1753, 97564}, {0x1760, 571180}, {0x1761, 571255}, {0x1762, 571426}, {0x1763, 571273}, {0x1764, 571236}, {0x1765, 571349}, {0x1766, 571407}, {0x1767, 571217}, {0x1768, 571330}, {0x1769, 571369}, {0x176A, 571198}, {0x176B, 571311}, {0x176C, 571463}, {0x176E, 571292}, {0x176F, 571444}, {0x1770, 571388}, {0x1772, 571482}, {0x1773, 571504}, {0x1780, 374926}, {0x1781, 374942}, {0x1782, 374976}, {0x1783, 374959}, {0x1784, 375040}, {0x1785, 374812}, {0x1786, 374828}, {0x1787, 374862}, {0x1788, 374845}, {0x1789, 375090}, {0x178A, 374878}, {0x178B, 375305}, {0x178C, 374894}, {0x178D, 375323}, {0x178E, 375057}, {0x178F, 375239}, {0x1790, 375255}, {0x1791, 375289}, {0x1792, 375272}, {0x1793, 375074}, {0x1794, 374796}, {0x1795, 375107}, {0x1796, 375141}, {0x1797, 375124}, {0x1798, 375024}, {0x1799, 375357}, {0x179A, 375173}, {0x179B, 375008}, {0x179C, 375341}, {0x179D, 375205}, {0x179E, 375222}, {0x179F, 375189}, {0x17A0, 374910}, {0x17A1, 374992}, {0x17A2, 375157}, {0x17A3, 374417}, {0x17A4, 374361}, {0x17A5, 374500}, {0x17A6, 374527}, {0x17A7, 374629}, {0x17A8, 374656}, {0x17A9, 374684}, {0x17AA, 374712}, {0x17AB, 374741}, {0x17AC, 374768}, {0x17AD, 374306}, {0x17AE, 374333}, {0x17AF, 374473}, {0x17B0, 374389}, {0x17B1, 374555}, {0x17B2, 374592}, {0x17B3, 374445}, {0x17B4, 376950}, {0x17B5, 376926}, {0x17B6, 376974}, {0x17B7, 377073}, {0x17B8, 377112}, {0x17B9, 377231}, {0x17BA, 377270}, {0x17BB, 377172}, {0x17BC, 377211}, {0x17BD, 377191}, {0x17BE, 377132}, {0x17BF, 377250}, {0x17C0, 377092}, {0x17C1, 377054}, {0x17C2, 376994}, {0x17C3, 377014}, {0x17C4, 377152}, {0x17C5, 377034}, {0x17C6, 375655}, {0x17C7, 375697}, {0x17C8, 375818}, {0x17C9, 375632}, {0x17CA, 375781}, {0x17CB, 375435}, {0x17CC, 375716}, {0x17CD, 375758}, {0x17CE, 375559}, {0x17CF, 375373}, {0x17D0, 375733}, {0x17D1, 375800}, {0x17D2, 375542}, {0x17D3, 375475}, {0x17D4, 375578}, {0x17D5, 375453}, {0x17D6, 375515}, {0x17D7, 375613}, {0x17D8, 375497}, {0x17D9, 375674}, {0x17DA, 375594}, {0x17DB, 374109}, {0x17DC, 375410}, {0x17DD, 375390}, {0x17E0, 374289}, {0x17E1, 374205}, {0x17E2, 374273}, {0x17E3, 374255}, {0x17E4, 374171}, {0x17E5, 374154}, {0x17E6, 374239}, {0x17E7, 374221}, {0x17E8, 374136}, {0x17E9, 374188}, {0x17F0, 376503}, {0x17F1, 376290}, {0x17F2, 376318}, {0x17F3, 376235}, {0x17F4, 376262}, {0x17F5, 376345}, {0x17F6, 376438}, {0x17F7, 376471}, {0x17F8, 376373}, {0x17F9, 376405}, {0x1800, 483858}, {0x1801, 484116}, {0x1802, 483890}, {0x1803, 484271}, {0x1804, 483874}, {0x1805, 484135}, {0x1806, 487905}, {0x1807, 487865}, {0x1808, 487798}, {0x1809, 487821}, {0x180A, 487848}, {0x180B, 484155}, {0x180C, 484233}, {0x180D, 484193}, {0x180E, 487932}, {0x1810, 484095}, {0x1811, 483991}, {0x1812, 484075}, {0x1813, 484053}, {0x1814, 483949}, {0x1815, 483928}, {0x1816, 484033}, {0x1817, 484011}, {0x1818, 483906}, {0x1819, 483970}, {0x1820, 484291}, {0x1821, 485273}, {0x1822, 485373}, {0x1823, 486185}, {0x1824, 487657}, {0x1825, 486204}, {0x1826, 487676}, {0x1827, 485292}, {0x1828, 486165}, {0x1829, 485170}, {0x182A, 485191}, {0x182B, 486224}, {0x182C, 486244}, {0x182D, 485332}, {0x182E, 485494}, {0x182F, 485453}, {0x1830, 486284}, {0x1831, 486304}, {0x1832, 486880}, {0x1833, 485253}, {0x1834, 485211}, {0x1835, 485392}, {0x1836, 487716}, {0x1837, 486264}, {0x1838, 487696}, {0x1839, 485312}, {0x183A, 485412}, {0x183B, 485432}, {0x183C, 487636}, {0x183D, 487736}, {0x183E, 485352}, {0x183F, 487777}, {0x1840, 485473}, {0x1841, 487756}, {0x1842, 485232}, {0x1843, 487298}, {0x1844, 487097}, {0x1845, 487198}, {0x1846, 487387}, {0x1847, 487537}, {0x1848, 487411}, {0x1849, 487561}, {0x184A, 486969}, {0x184B, 486995}, {0x184C, 487436}, {0x184D, 487461}, {0x184E, 487121}, {0x184F, 487336}, {0x1850, 487486}, {0x1851, 487046}, {0x1852, 487020}, {0x1853, 487222}, {0x1854, 487511}, {0x1855, 487611}, {0x1856, 487586}, {0x1857, 487273}, {0x1858, 487146}, {0x1859, 487172}, {0x185A, 487247}, {0x185B, 487361}, {0x185C, 487071}, {0x185D, 486402}, {0x185E, 486553}, {0x185F, 486577}, {0x1860, 486804}, {0x1861, 486780}, {0x1862, 486325}, {0x1863, 486627}, {0x1864, 486451}, {0x1865, 486502}, {0x1866, 486652}, {0x1867, 486703}, {0x1868, 486729}, {0x1869, 486377}, {0x186A, 486602}, {0x186B, 486426}, {0x186C, 486476}, {0x186D, 486527}, {0x186E, 486754}, {0x186F, 486829}, {0x1870, 486677}, {0x1871, 486351}, {0x1872, 486854}, {0x1873, 486057}, {0x1874, 486083}, {0x1875, 486110}, {0x1876, 486030}, {0x1877, 486137}, {0x1880, 484367}, {0x1881, 485073}, {0x1882, 484531}, {0x1883, 485039}, {0x1884, 484689}, {0x1885, 484406}, {0x1886, 484939}, {0x1887, 484310}, {0x1888, 484661}, {0x1889, 484732}, {0x188A, 484761}, {0x188B, 484439}, {0x188C, 484978}, {0x188D, 485008}, {0x188E, 484564}, {0x188F, 484791}, {0x1890, 484910}, {0x1891, 484468}, {0x1892, 484821}, {0x1893, 484850}, {0x1894, 484880}, {0x1895, 485140}, {0x1896, 485111}, {0x1897, 484338}, {0x1898, 486900}, {0x1899, 486934}, {0x189A, 485699}, {0x189B, 485810}, {0x189C, 485551}, {0x189D, 485736}, {0x189E, 485920}, {0x189F, 485624}, {0x18A0, 485884}, {0x18A1, 485662}, {0x18A2, 485847}, {0x18A3, 485587}, {0x18A4, 485993}, {0x18A5, 485957}, {0x18A6, 484594}, {0x18A7, 484627}, {0x18A8, 485514}, {0x18A9, 484497}, {0x18AA, 485773}, {0x18B0, 119238}, {0x18B1, 108002}, {0x18B2, 107842}, {0x18B3, 123325}, {0x18B4, 119485}, {0x18B5, 119350}, {0x18B6, 119672}, {0x18B7, 121948}, {0x18B8, 115763}, {0x18B9, 115967}, {0x18BA, 116750}, {0x18BB, 118356}, {0x18BC, 117817}, {0x18BD, 116198}, {0x18BE, 121649}, {0x18BF, 120438}, {0x18C0, 121195}, {0x18C1, 121054}, {0x18C2, 121390}, {0x18C3, 127517}, {0x18C4, 127382}, {0x18C5, 120048}, {0x18C6, 118720}, {0x18C7, 118951}, {0x18C8, 118743}, {0x18C9, 118982}, {0x18CA, 118767}, {0x18CB, 119014}, {0x18CC, 118790}, {0x18CD, 119045}, {0x18CE, 120230}, {0x18CF, 120254}, {0x18D0, 120277}, {0x18D1, 120301}, {0x18D2, 120324}, {0x18D3, 120183}, {0x18D4, 119077}, {0x18D5, 119165}, {0x18D6, 118864}, {0x18D7, 118835}, {0x18D8, 118893}, {0x18D9, 118922}, {0x18DA, 119106}, {0x18DB, 119135}, {0x18DC, 114693}, {0x18DD, 126358}, {0x18DE, 115355}, {0x18DF, 115199}, {0x18E0, 119949}, {0x18E1, 124032}, {0x18E2, 123935}, {0x18E3, 122478}, {0x18E4, 122429}, {0x18E5, 122953}, {0x18E6, 122928}, {0x18E7, 122831}, {0x18E8, 122668}, {0x18E9, 122643}, {0x18EA, 120874}, {0x18EB, 120843}, {0x18EC, 120577}, {0x18ED, 109936}, {0x18EE, 109000}, {0x18EF, 109536}, {0x18F0, 109905}, {0x18F1, 120665}, {0x18F2, 110678}, {0x18F3, 108024}, {0x18F4, 108057}, {0x18F5, 109036}, {0x1900, 425217}, {0x1901, 424387}, {0x1902, 424403}, {0x1903, 424305}, {0x1904, 424321}, {0x1905, 424468}, {0x1906, 424239}, {0x1907, 424255}, {0x1908, 424354}, {0x1909, 424370}, {0x190A, 424649}, {0x190B, 424584}, {0x190C, 424600}, {0x190D, 424272}, {0x190E, 424288}, {0x190F, 424452}, {0x1910, 424485}, {0x1911, 424501}, {0x1912, 424206}, {0x1913, 424222}, {0x1914, 424436}, {0x1915, 424633}, {0x1916, 424518}, {0x1917, 424420}, {0x1918, 424617}, {0x1919, 424550}, {0x191A, 424567}, {0x191B, 424534}, {0x191C, 424338}, {0x1920, 425042}, {0x1921, 425140}, {0x1922, 425198}, {0x1923, 425120}, {0x1924, 425061}, {0x1925, 425178}, {0x1926, 425081}, {0x1927, 425101}, {0x1928, 425159}, {0x1929, 425016}, {0x192A, 424964}, {0x192B, 424990}, {0x1930, 424787}, {0x1931, 424875}, {0x1932, 424759}, {0x1933, 424942}, {0x1934, 424853}, {0x1935, 424898}, {0x1936, 424831}, {0x1937, 424920}, {0x1938, 424809}, {0x1939, 424722}, {0x193A, 424686}, {0x193B, 424743}, {0x1940, 424707}, {0x1944, 424183}, {0x1945, 424666}, {0x1946, 424166}, {0x1947, 424082}, {0x1948, 424150}, {0x1949, 424132}, {0x194A, 424048}, {0x194B, 424031}, {0x194C, 424116}, {0x194D, 424098}, {0x194E, 424013}, {0x194F, 424065}, {0x1950, 571677}, {0x1951, 572110}, {0x1952, 571763}, {0x1953, 572023}, {0x1954, 571866}, {0x1955, 572127}, {0x1956, 571883}, {0x1957, 571900}, {0x1958, 571712}, {0x1959, 571814}, {0x195A, 571831}, {0x195B, 571729}, {0x195C, 571627}, {0x195D, 572093}, {0x195E, 571644}, {0x195F, 571849}, {0x1960, 571694}, {0x1961, 572041}, {0x1962, 571746}, {0x1963, 571526}, {0x1964, 571661}, {0x1965, 571593}, {0x1966, 571610}, {0x1967, 572060}, {0x1968, 571797}, {0x1969, 571781}, {0x196A, 572076}, {0x196B, 571577}, {0x196C, 571559}, {0x196D, 571542}, {0x1970, 571918}, {0x1971, 571939}, {0x1972, 571960}, {0x1973, 571981}, {0x1974, 572002}, {0x1980, 504587}, {0x1981, 505176}, {0x1982, 504368}, {0x1983, 504779}, {0x1984, 504504}, {0x1985, 504965}, {0x1986, 505361}, {0x1987, 505096}, {0x1988, 504724}, {0x1989, 504614}, {0x198A, 504834}, {0x198B, 505308}, {0x198C, 505202}, {0x198D, 505414}, {0x198E, 504669}, {0x198F, 504696}, {0x1990, 504477}, {0x1991, 505255}, {0x1992, 505281}, {0x1993, 505070}, {0x1994, 504532}, {0x1995, 504559}, {0x1996, 504450}, {0x1997, 505123}, {0x1998, 505149}, {0x1999, 505044}, {0x199A, 504314}, {0x199B, 504752}, {0x199C, 504423}, {0x199D, 504913}, {0x199E, 505335}, {0x199F, 505018}, {0x19A0, 504341}, {0x19A1, 504287}, {0x19A2, 504260}, {0x19A3, 504939}, {0x19A4, 504887}, {0x19A5, 504861}, {0x19A6, 504395}, {0x19A7, 504806}, {0x19A8, 504991}, {0x19A9, 505387}, {0x19AA, 504641}, {0x19AB, 505228}, {0x19B0, 505974}, {0x19B1, 505558}, {0x19B2, 505688}, {0x19B3, 505844}, {0x19B4, 505922}, {0x19B5, 505663}, {0x19B6, 505611}, {0x19B7, 505740}, {0x19B8, 505765}, {0x19B9, 505869}, {0x19BA, 505637}, {0x19BB, 505584}, {0x19BC, 505948}, {0x19BD, 505818}, {0x19BE, 505791}, {0x19BF, 505895}, {0x19C0, 505714}, {0x19C1, 504233}, {0x19C2, 504205}, {0x19C3, 504178}, {0x19C4, 504151}, {0x19C5, 504124}, {0x19C6, 504097}, {0x19C7, 504070}, {0x19C8, 505510}, {0x19C9, 505534}, {0x19D0, 504047}, {0x19D1, 503933}, {0x19D2, 504025}, {0x19D3, 504001}, {0x19D4, 503887}, {0x19D5, 503864}, {0x19D6, 503979}, {0x19D7, 503955}, {0x19D8, 503840}, {0x19D9, 503910}, {0x19DA, 505483}, {0x19DE, 505440}, {0x19DF, 505461}, {0x19E0, 376575}, {0x19E1, 376530}, {0x19E2, 376599}, {0x19E3, 375843}, {0x19E4, 375886}, {0x19E5, 376642}, {0x19E6, 376795}, {0x19E7, 376850}, {0x19E8, 376687}, {0x19E9, 376740}, {0x19EA, 375931}, {0x19EB, 376078}, {0x19EC, 376131}, {0x19ED, 375974}, {0x19EE, 376025}, {0x19EF, 376182}, {0x19F0, 376903}, {0x19F1, 376553}, {0x19F2, 376621}, {0x19F3, 375865}, {0x19F4, 375909}, {0x19F5, 376665}, {0x19F6, 376823}, {0x19F7, 376877}, {0x19F8, 376714}, {0x19F9, 376768}, {0x19FA, 375953}, {0x19FB, 376105}, {0x19FC, 376157}, {0x19FD, 376000}, {0x19FE, 376052}, {0x19FF, 376209}, {0x1A00, 96819}, {0x1A01, 96762}, {0x1A02, 96915}, {0x1A03, 96935}, {0x1A04, 97017}, {0x1A05, 96705}, {0x1A06, 96857}, {0x1A07, 96876}, {0x1A08, 97074}, {0x1A09, 96743}, {0x1A0A, 96896}, {0x1A0B, 96956}, {0x1A0C, 96724}, {0x1A0D, 96800}, {0x1A0E, 96976}, {0x1A0F, 96996}, {0x1A10, 97112}, {0x1A11, 97036}, {0x1A12, 96838}, {0x1A13, 97093}, {0x1A14, 97055}, {0x1A15, 96687}, {0x1A16, 96781}, {0x1A17, 97193}, {0x1A18, 97237}, {0x1A19, 97171}, {0x1A1A, 97215}, {0x1A1B, 97148}, {0x1A1E, 97131}, {0x1A1F, 96663}, {0x1A20, 572923}, {0x1A21, 572947}, {0x1A22, 572972}, {0x1A23, 573409}, {0x1A24, 573456}, {0x1A25, 573432}, {0x1A26, 573704}, {0x1A27, 572826}, {0x1A28, 572850}, {0x1A29, 573316}, {0x1A2A, 573553}, {0x1A2B, 573339}, {0x1A2C, 573724}, {0x1A2D, 573803}, {0x1A2E, 573046}, {0x1A2F, 572763}, {0x1A30, 573527}, {0x1A31, 573782}, {0x1A32, 573147}, {0x1A33, 573171}, {0x1A34, 573576}, {0x1A35, 573599}, {0x1A36, 573685}, {0x1A37, 572744}, {0x1A38, 572997}, {0x1A39, 573021}, {0x1A3A, 572875}, {0x1A3B, 573480}, {0x1A3C, 573363}, {0x1A3D, 573503}, {0x1A3E, 573666}, {0x1A3F, 573623}, {0x1A40, 573196}, {0x1A41, 573763}, {0x1A42, 573824}, {0x1A43, 573257}, {0x1A44, 573646}, {0x1A45, 573881}, {0x1A46, 573097}, {0x1A47, 573122}, {0x1A48, 573073}, {0x1A49, 572899}, {0x1A4A, 573296}, {0x1A4B, 572726}, {0x1A4C, 573386}, {0x1A4D, 573220}, {0x1A4E, 573238}, {0x1A4F, 573844}, {0x1A50, 573862}, {0x1A51, 572782}, {0x1A52, 573744}, {0x1A53, 573276}, {0x1A54, 572801}, {0x1A55, 572415}, {0x1A56, 572381}, {0x1A57, 572287}, {0x1A58, 574172}, {0x1A59, 572208}, {0x1A5A, 572323}, {0x1A5B, 572242}, {0x1A5C, 572354}, {0x1A5D, 572181}, {0x1A5E, 572449}, {0x1A60, 574303}, {0x1A61, 574726}, {0x1A62, 574884}, {0x1A63, 574748}, {0x1A64, 575038}, {0x1A65, 574839}, {0x1A66, 574861}, {0x1A67, 575116}, {0x1A68, 575162}, {0x1A69, 575094}, {0x1A6A, 575139}, {0x1A6B, 574912}, {0x1A6C, 574963}, {0x1A6D, 575015}, {0x1A6E, 574817}, {0x1A6F, 574771}, {0x1A70, 574992}, {0x1A71, 574794}, {0x1A72, 575066}, {0x1A73, 574934}, {0x1A74, 574149}, {0x1A75, 574390}, {0x1A76, 574411}, {0x1A77, 574038}, {0x1A78, 574065}, {0x1A79, 574092}, {0x1A7A, 574245}, {0x1A7B, 574199}, {0x1A7C, 574119}, {0x1A7F, 572144}, {0x1A80, 572701}, {0x1A81, 572577}, {0x1A82, 572677}, {0x1A83, 572651}, {0x1A84, 572527}, {0x1A85, 572502}, {0x1A86, 572627}, {0x1A87, 572601}, {0x1A88, 572476}, {0x1A89, 572552}, {0x1A90, 574701}, {0x1A91, 574577}, {0x1A92, 574677}, {0x1A93, 574651}, {0x1A94, 574527}, {0x1A95, 574502}, {0x1A96, 574627}, {0x1A97, 574601}, {0x1A98, 574476}, {0x1A99, 574552}, {0x1AA0, 574432}, {0x1AA1, 574452}, {0x1AA2, 574370}, {0x1AA3, 574019}, {0x1AA4, 573960}, {0x1AA5, 573920}, {0x1AA6, 574267}, {0x1AA7, 574221}, {0x1AA8, 573978}, {0x1AA9, 573997}, {0x1AAA, 574323}, {0x1AAB, 574345}, {0x1AAC, 573941}, {0x1AAD, 573900}, {0x1B00, 57214}, {0x1B01, 57189}, {0x1B02, 57126}, {0x1B03, 57168}, {0x1B04, 57106}, {0x1B05, 54685}, {0x1B06, 54707}, {0x1B07, 55076}, {0x1B08, 55098}, {0x1B09, 55817}, {0x1B0A, 55839}, {0x1B0B, 55565}, {0x1B0C, 55589}, {0x1B0D, 55290}, {0x1B0E, 55315}, {0x1B0F, 54992}, {0x1B10, 54662}, {0x1B11, 55451}, {0x1B12, 55473}, {0x1B13, 55170}, {0x1B14, 55189}, {0x1B15, 55014}, {0x1B16, 55033}, {0x1B17, 55411}, {0x1B18, 54811}, {0x1B19, 54830}, {0x1B1A, 55127}, {0x1B1B, 55146}, {0x1B1C, 55431}, {0x1B1D, 55706}, {0x1B1E, 55731}, {0x1B1F, 54897}, {0x1B20, 54932}, {0x1B21, 55385}, {0x1B22, 55687}, {0x1B23, 55766}, {0x1B24, 54854}, {0x1B25, 54873}, {0x1B26, 55366}, {0x1B27, 55502}, {0x1B28, 55521}, {0x1B29, 54765}, {0x1B2A, 54784}, {0x1B2B, 55347}, {0x1B2C, 55912}, {0x1B2D, 55546}, {0x1B2E, 55271}, {0x1B2F, 55893}, {0x1B30, 55639}, {0x1B31, 55663}, {0x1B32, 55620}, {0x1B33, 55057}, {0x1B34, 57146}, {0x1B35, 57612}, {0x1B36, 57639}, {0x1B37, 57663}, {0x1B38, 57425}, {0x1B39, 57450}, {0x1B3A, 57362}, {0x1B3B, 57390}, {0x1B3C, 57238}, {0x1B3D, 57267}, {0x1B3E, 57480}, {0x1B3F, 57507}, {0x1B40, 57578}, {0x1B41, 57539}, {0x1B42, 57303}, {0x1B43, 57329}, {0x1B44, 54375}, {0x1B45, 55218}, {0x1B46, 55244}, {0x1B47, 55790}, {0x1B48, 54967}, {0x1B49, 55868}, {0x1B4A, 55931}, {0x1B4B, 54736}, {0x1B50, 54642}, {0x1B51, 54543}, {0x1B52, 54623}, {0x1B53, 54602}, {0x1B54, 54503}, {0x1B55, 54483}, {0x1B56, 54583}, {0x1B57, 54562}, {0x1B58, 54462}, {0x1B59, 54523}, {0x1B5A, 57091}, {0x1B5B, 57057}, {0x1B5C, 57692}, {0x1B5D, 54394}, {0x1B5E, 54442}, {0x1B5F, 54419}, {0x1B60, 57073}, {0x1B61, 56595}, {0x1B62, 56507}, {0x1B63, 56624}, {0x1B64, 56408}, {0x1B65, 56471}, {0x1B66, 56566}, {0x1B67, 56348}, {0x1B68, 56536}, {0x1B69, 56378}, {0x1B6A, 56437}, {0x1B6B, 56308}, {0x1B6C, 55997}, {0x1B6D, 56213}, {0x1B6E, 56118}, {0x1B6F, 56076}, {0x1B70, 56254}, {0x1B71, 56159}, {0x1B72, 55957}, {0x1B73, 56037}, {0x1B74, 57013}, {0x1B75, 56969}, {0x1B76, 56923}, {0x1B77, 56877}, {0x1B78, 56745}, {0x1B79, 56833}, {0x1B7A, 56653}, {0x1B7B, 56699}, {0x1B7C, 56789}, {0x1B80, 563756}, {0x1B81, 563706}, {0x1B82, 563731}, {0x1B83, 563044}, {0x1B84, 563242}, {0x1B85, 563564}, {0x1B86, 563063}, {0x1B87, 563424}, {0x1B88, 563143}, {0x1B89, 563162}, {0x1B8A, 563281}, {0x1B8B, 563463}, {0x1B8C, 563202}, {0x1B8D, 563382}, {0x1B8E, 563103}, {0x1B8F, 563261}, {0x1B90, 563663}, {0x1B91, 563403}, {0x1B92, 563544}, {0x1B93, 563123}, {0x1B94, 563362}, {0x1B95, 563443}, {0x1B96, 563182}, {0x1B97, 563583}, {0x1B98, 563083}, {0x1B99, 563342}, {0x1B9A, 563643}, {0x1B9B, 563483}, {0x1B9C, 563322}, {0x1B9D, 563603}, {0x1B9E, 563503}, {0x1B9F, 563623}, {0x1BA0, 563222}, {0x1BA1, 562732}, {0x1BA2, 562767}, {0x1BA3, 562801}, {0x1BA4, 563873}, {0x1BA5, 563933}, {0x1BA6, 563809}, {0x1BA7, 563903}, {0x1BA8, 563780}, {0x1BA9, 563841}, {0x1BAA, 563683}, {0x1BAE, 563301}, {0x1BAF, 563523}, {0x1BB0, 563023}, {0x1BB1, 562919}, {0x1BB2, 563003}, {0x1BB3, 562981}, {0x1BB4, 562877}, {0x1BB5, 562856}, {0x1BB6, 562961}, {0x1BB7, 562939}, {0x1BB8, 562834}, {0x1BB9, 562898}, {0x1BC0, 75060}, {0x1BC1, 75500}, {0x1BC2, 75139}, {0x1BC3, 75553}, {0x1BC4, 75239}, {0x1BC5, 75075}, {0x1BC6, 75186}, {0x1BC7, 75429}, {0x1BC8, 75634}, {0x1BC9, 75337}, {0x1BCA, 75266}, {0x1BCB, 75809}, {0x1BCC, 75715}, {0x1BCD, 75445}, {0x1BCE, 75123}, {0x1BCF, 75526}, {0x1BD0, 75170}, {0x1BD1, 75107}, {0x1BD2, 75468}, {0x1BD3, 75661}, {0x1BD4, 75223}, {0x1BD5, 75607}, {0x1BD6, 75769}, {0x1BD7, 75387}, {0x1BD8, 75484}, {0x1BD9, 75688}, {0x1BDA, 75293}, {0x1BDB, 75825}, {0x1BDC, 75742}, {0x1BDD, 75370}, {0x1BDE, 75207}, {0x1BDF, 75580}, {0x1BE0, 75412}, {0x1BE1, 75091}, {0x1BE2, 75353}, {0x1BE3, 75320}, {0x1BE4, 75155}, {0x1BE5, 75794}, {0x1BE6, 75873}, {0x1BE7, 76001}, {0x1BE8, 76126}, {0x1BE9, 76020}, {0x1BEA, 76040}, {0x1BEB, 76059}, {0x1BEC, 76107}, {0x1BED, 76083}, {0x1BEE, 76152}, {0x1BEF, 76171}, {0x1BF0, 75036}, {0x1BF1, 75013}, {0x1BF2, 75841}, {0x1BF3, 75856}, {0x1BFC, 75915}, {0x1BFD, 75971}, {0x1BFE, 75890}, {0x1BFF, 75943}, {0x1C00, 422153}, {0x1C01, 422188}, {0x1C02, 422170}, {0x1C03, 422066}, {0x1C04, 422083}, {0x1C05, 422275}, {0x1C06, 421943}, {0x1C07, 421960}, {0x1C08, 422136}, {0x1C09, 422293}, {0x1C0A, 422416}, {0x1C0B, 422433}, {0x1C0C, 421978}, {0x1C0D, 422258}, {0x1C0E, 422311}, {0x1C0F, 422346}, {0x1C10, 422328}, {0x1C11, 422031}, {0x1C12, 422048}, {0x1C13, 421908}, {0x1C14, 421925}, {0x1C15, 422223}, {0x1C16, 422240}, {0x1C17, 422451}, {0x1C18, 422469}, {0x1C19, 422013}, {0x1C1A, 422559}, {0x1C1B, 422364}, {0x1C1C, 422206}, {0x1C1D, 422101}, {0x1C1E, 422118}, {0x1C1F, 422525}, {0x1C20, 422381}, {0x1C21, 422398}, {0x1C22, 422542}, {0x1C23, 421892}, {0x1C24, 422786}, {0x1C25, 422759}, {0x1C26, 422813}, {0x1C27, 422854}, {0x1C28, 422874}, {0x1C29, 422894}, {0x1C2A, 422915}, {0x1C2B, 422935}, {0x1C2C, 422834}, {0x1C2D, 421487}, {0x1C2E, 421562}, {0x1C2F, 421538}, {0x1C30, 421586}, {0x1C31, 421640}, {0x1C32, 421664}, {0x1C33, 421688}, {0x1C34, 421610}, {0x1C35, 421511}, {0x1C36, 422743}, {0x1C37, 422725}, {0x1C3B, 422640}, {0x1C3C, 422602}, {0x1C3D, 422576}, {0x1C3E, 422692}, {0x1C3F, 422666}, {0x1C40, 421874}, {0x1C41, 421785}, {0x1C42, 421857}, {0x1C43, 421838}, {0x1C44, 421749}, {0x1C45, 421731}, {0x1C46, 421821}, {0x1C47, 421802}, {0x1C48, 421712}, {0x1C49, 421767}, {0x1C4D, 422488}, {0x1C4E, 422506}, {0x1C4F, 421995}, {0x1C50, 510130}, {0x1C51, 510031}, {0x1C52, 510111}, {0x1C53, 510090}, {0x1C54, 509991}, {0x1C55, 509971}, {0x1C56, 510071}, {0x1C57, 510050}, {0x1C58, 509950}, {0x1C59, 510011}, {0x1C5A, 510488}, {0x1C5B, 510314}, {0x1C5C, 510256}, {0x1C5D, 510294}, {0x1C5E, 510275}, {0x1C5F, 510507}, {0x1C60, 510196}, {0x1C61, 510176}, {0x1C62, 510216}, {0x1C63, 510236}, {0x1C64, 510546}, {0x1C65, 510469}, {0x1C66, 510411}, {0x1C67, 510430}, {0x1C68, 510450}, {0x1C69, 510584}, {0x1C6A, 510680}, {0x1C6B, 510699}, {0x1C6C, 510718}, {0x1C6D, 510738}, {0x1C6E, 510527}, {0x1C6F, 510372}, {0x1C70, 510333}, {0x1C71, 510353}, {0x1C72, 510391}, {0x1C73, 510565}, {0x1C74, 510641}, {0x1C75, 510603}, {0x1C76, 510661}, {0x1C77, 510622}, {0x1C78, 510757}, {0x1C79, 510150}, {0x1C7A, 510777}, {0x1C7B, 510887}, {0x1C7C, 510806}, {0x1C7D, 509936}, {0x1C7E, 510859}, {0x1C7F, 510824}, {0x1CD0, 609842}, {0x1CD1, 609958}, {0x1CD2, 609890}, {0x1CD3, 609391}, {0x1CD4, 609689}, {0x1CD5, 610055}, {0x1CD6, 610108}, {0x1CD7, 610150}, {0x1CD8, 609771}, {0x1CD9, 610200}, {0x1CDA, 609816}, {0x1CDB, 610003}, {0x1CDC, 609862}, {0x1CDD, 609795}, {0x1CDE, 610029}, {0x1CDF, 609975}, {0x1CE0, 609909}, {0x1CE1, 609727}, {0x1CE2, 609600}, {0x1CE3, 609627}, {0x1CE4, 609449}, {0x1CE5, 609534}, {0x1CE6, 609412}, {0x1CE7, 609653}, {0x1CE8, 609562}, {0x1CE9, 609133}, {0x1CEA, 609166}, {0x1CEB, 609234}, {0x1CEC, 609266}, {0x1CED, 609516}, {0x1CEE, 609332}, {0x1CEF, 609366}, {0x1CF0, 609484}, {0x1CF1, 609199}, {0x1CF2, 609308}, {0x1D00, 394954}, {0x1D01, 394983}, {0x1D02, 411740}, {0x1D03, 395042}, {0x1D04, 395078}, {0x1D05, 395107}, {0x1D06, 395165}, {0x1D07, 395136}, {0x1D08, 412229}, {0x1D09, 412010}, {0x1D0A, 395420}, {0x1D0B, 395449}, {0x1D0C, 395507}, {0x1D0D, 395548}, {0x1D0E, 395787}, {0x1D0F, 395606}, {0x1D10, 395665}, {0x1D11, 410473}, {0x1D12, 410545}, {0x1D13, 410503}, {0x1D14, 412200}, {0x1D15, 395699}, {0x1D16, 411601}, {0x1D17, 398360}, {0x1D18, 395729}, {0x1D19, 395825}, {0x1D1A, 396024}, {0x1D1B, 395923}, {0x1D1C, 396060}, {0x1D1D, 410617}, {0x1D1E, 410431}, {0x1D1F, 410580}, {0x1D20, 396089}, {0x1D21, 396118}, {0x1D22, 396176}, {0x1D23, 395196}, {0x1D24, 396259}, {0x1D25, 394468}, {0x1D26, 311411}, {0x1D27, 311444}, {0x1D28, 311477}, {0x1D29, 311538}, {0x1D2A, 311507}, {0x1D2B, 227184}, {0x1D2C, 477389}, {0x1D2D, 477415}, {0x1D2E, 477442}, {0x1D2F, 477468}, {0x1D30, 477501}, {0x1D31, 477527}, {0x1D32, 477866}, {0x1D33, 477553}, {0x1D34, 477579}, {0x1D35, 477605}, {0x1D36, 477631}, {0x1D37, 477657}, {0x1D38, 477683}, {0x1D39, 477709}, {0x1D3A, 477735}, {0x1D3B, 477901}, {0x1D3C, 477761}, {0x1D3D, 477787}, {0x1D3E, 477814}, {0x1D3F, 477840}, {0x1D40, 477936}, {0x1D41, 477962}, {0x1D42, 478014}, {0x1D43, 480921}, {0x1D44, 482757}, {0x1D45, 480971}, {0x1D46, 482788}, {0x1D47, 480999}, {0x1D48, 481414}, {0x1D49, 481510}, {0x1D4A, 482538}, {0x1D4B, 482266}, {0x1D4C, 482993}, {0x1D4D, 481662}, {0x1D4E, 482886}, {0x1D4F, 481967}, {0x1D50, 482101}, {0x1D51, 481534}, {0x1D52, 482242}, {0x1D53, 482295}, {0x1D54, 482724}, {0x1D55, 481081}, {0x1D56, 482324}, {0x1D57, 482630}, {0x1D58, 483132}, {0x1D59, 482597}, {0x1D5A, 482917}, {0x1D5B, 483214}, {0x1D5C, 480945}, {0x1D5D, 481054}, {0x1D5E, 481714}, {0x1D5F, 481438}, {0x1D60, 481748}, {0x1D61, 481388}, {0x1D62, 416009}, {0x1D63, 416257}, {0x1D64, 416385}, {0x1D65, 416416}, {0x1D66, 319318}, {0x1D67, 319385}, {0x1D68, 319453}, {0x1D69, 319420}, {0x1D6A, 319352}, {0x1D6B, 413799}, {0x1D6C, 398188}, {0x1D6D, 399292}, {0x1D6E, 401524}, {0x1D6F, 405312}, {0x1D70, 405973}, {0x1D71, 408162}, {0x1D72, 409104}, {0x1D73, 408939}, {0x1D74, 410087}, {0x1D75, 411102}, {0x1D76, 415503}, {0x1D77, 411861}, {0x1D78, 478506}, {0x1D79, 403294}, {0x1D7A, 411358}, {0x1D7B, 396331}, {0x1D7C, 403434}, {0x1D7D, 408280}, {0x1D7E, 396372}, {0x1D7F, 413870}, {0x1D80, 398227}, {0x1D81, 399331}, {0x1D82, 401563}, {0x1D83, 401963}, {0x1D84, 403996}, {0x1D85, 404669}, {0x1D86, 405351}, {0x1D87, 406053}, {0x1D88, 408201}, {0x1D89, 409184}, {0x1D8A, 410167}, {0x1D8B, 401109}, {0x1D8C, 414070}, {0x1D8D, 414647}, {0x1D8E, 415542}, {0x1D8F, 397447}, {0x1D90, 397852}, {0x1D91, 399215}, {0x1D92, 400811}, {0x1D93, 407867}, {0x1D94, 409495}, {0x1D95, 410331}, {0x1D96, 403092}, {0x1D97, 407939}, {0x1D98, 401150}, {0x1D99, 413609}, {0x1D9A, 401360}, {0x1D9B, 482820}, {0x1D9C, 481117}, {0x1D9D, 481141}, {0x1D9E, 481586}, {0x1D9F, 482442}, {0x1DA0, 481638}, {0x1DA1, 481466}, {0x1DA2, 482566}, {0x1DA3, 482855}, {0x1DA4, 481838}, {0x1DA5, 481874}, {0x1DA6, 481175}, {0x1DA7, 481207}, {0x1DA8, 481925}, {0x1DA9, 482057}, {0x1DAA, 482015}, {0x1DAB, 481292}, {0x1DAC, 482125}, {0x1DAD, 482948}, {0x1DAE, 482159}, {0x1DAF, 482198}, {0x1DB0, 481324}, {0x1DB1, 481023}, {0x1DB2, 482348}, {0x1DB3, 482504}, {0x1DB4, 481560}, {0x1DB5, 482654}, {0x1DB6, 483156}, {0x1DB7, 483184}, {0x1DB8, 481356}, {0x1DB9, 483238}, {0x1DBA, 483101}, {0x1DBB, 483344}, {0x1DBC, 483402}, {0x1DBD, 483368}, {0x1DBE, 481612}, {0x1DBF, 482696}, {0x1DC0, 180892}, {0x1DC1, 180862}, {0x1DC2, 185321}, {0x1DC3, 185366}, {0x1DC4, 184405}, {0x1DC5, 181965}, {0x1DC6, 184451}, {0x1DC7, 178117}, {0x1DC8, 181937}, {0x1DC9, 178089}, {0x1DCA, 183399}, {0x1DCB, 178390}, {0x1DCC, 184428}, {0x1DCD, 181004}, {0x1DCE, 184544}, {0x1DCF, 185800}, {0x1DD0, 182390}, {0x1DD1, 185590}, {0x1DD2, 185609}, {0x1DD3, 182993}, {0x1DD4, 182732}, {0x1DD5, 182764}, {0x1DD6, 182796}, {0x1DD7, 182859}, {0x1DD8, 183138}, {0x1DD9, 182960}, {0x1DDA, 183045}, {0x1DDB, 182506}, {0x1DDC, 183177}, {0x1DDD, 183208}, {0x1DDE, 182545}, {0x1DDF, 182584}, {0x1DE0, 183306}, {0x1DE1, 182623}, {0x1DE2, 182662}, {0x1DE3, 183436}, {0x1DE4, 183475}, {0x1DE5, 183239}, {0x1DE6, 183630}, {0x1DFC, 181100}, {0x1DFD, 178172}, {0x1DFE, 183769}, {0x1DFF, 184829}, {0x1E00, 380165}, {0x1E01, 397614}, {0x1E02, 380613}, {0x1E03, 398048}, {0x1E04, 380651}, {0x1E05, 398084}, {0x1E06, 380722}, {0x1E07, 398151}, {0x1E08, 380988}, {0x1E09, 398540}, {0x1E0A, 381415}, {0x1E0B, 399112}, {0x1E0C, 381453}, {0x1E0D, 399148}, {0x1E0E, 381524}, {0x1E0F, 399255}, {0x1E10, 381334}, {0x1E11, 399004}, {0x1E12, 381370}, {0x1E13, 399038}, {0x1E14, 382685}, {0x1E15, 400703}, {0x1E16, 382640}, {0x1E17, 400660}, {0x1E18, 382289}, {0x1E19, 400327}, {0x1E1A, 382834}, {0x1E1B, 400917}, {0x1E1C, 381950}, {0x1E1D, 400002}, {0x1E1E, 383170}, {0x1E1F, 401457}, {0x1E20, 383512}, {0x1E21, 401889}, {0x1E22, 383934}, {0x1E23, 402326}, {0x1E24, 383972}, {0x1E25, 402362}, {0x1E26, 383896}, {0x1E27, 402290}, {0x1E28, 383783}, {0x1E29, 402183}, {0x1E2A, 383709}, {0x1E2B, 402113}, {0x1E2C, 384748}, {0x1E2D, 403198}, {0x1E2E, 384328}, {0x1E2F, 402795}, {0x1E30, 385144}, {0x1E31, 403675}, {0x1E32, 385330}, {0x1E33, 403851}, {0x1E34, 385401}, {0x1E35, 403918}, {0x1E36, 385777}, {0x1E37, 404398}, {0x1E38, 385815}, {0x1E39, 404434}, {0x1E3A, 385943}, {0x1E3B, 404556}, {0x1E3C, 385732}, {0x1E3D, 404324}, {0x1E3E, 386187}, {0x1E3F, 405177}, {0x1E40, 386221}, {0x1E41, 405209}, {0x1E42, 386259}, {0x1E43, 405245}, {0x1E44, 386613}, {0x1E45, 405755}, {0x1E46, 386651}, {0x1E47, 405791}, {0x1E48, 386761}, {0x1E49, 405895}, {0x1E4A, 386530}, {0x1E4B, 405645}, {0x1E4C, 388514}, {0x1E4D, 407666}, {0x1E4E, 388558}, {0x1E4F, 407708}, {0x1E50, 388233}, {0x1E51, 407438}, {0x1E52, 388188}, {0x1E53, 407395}, {0x1E54, 388802}, {0x1E55, 408028}, {0x1E56, 388836}, {0x1E57, 408060}, {0x1E58, 389352}, {0x1E59, 408746}, {0x1E5A, 389390}, {0x1E5B, 408782}, {0x1E5C, 389428}, {0x1E5D, 408818}, {0x1E5E, 389561}, {0x1E5F, 409032}, {0x1E60, 390119}, {0x1E61, 409934}, {0x1E62, 390157}, {0x1E63, 409970}, {0x1E64, 389874}, {0x1E65, 409701}, {0x1E66, 389956}, {0x1E67, 409779}, {0x1E68, 390195}, {0x1E69, 410006}, {0x1E6A, 390681}, {0x1E6B, 410962}, {0x1E6C, 390719}, {0x1E6D, 410998}, {0x1E6E, 390790}, {0x1E6F, 411065}, {0x1E70, 390552}, {0x1E71, 410772}, {0x1E72, 391864}, {0x1E73, 412985}, {0x1E74, 392637}, {0x1E75, 413761}, {0x1E76, 391588}, {0x1E77, 412721}, {0x1E78, 392593}, {0x1E79, 413719}, {0x1E7A, 392436}, {0x1E7B, 413529}, {0x1E7C, 392844}, {0x1E7D, 414146}, {0x1E7E, 392773}, {0x1E7F, 414003}, {0x1E80, 393172}, {0x1E81, 414454}, {0x1E82, 392985}, {0x1E83, 414277}, {0x1E84, 393058}, {0x1E85, 414346}, {0x1E86, 393096}, {0x1E87, 414382}, {0x1E88, 393134}, {0x1E89, 414418}, {0x1E8A, 393326}, {0x1E8B, 414611}, {0x1E8C, 393288}, {0x1E8D, 414575}, {0x1E8E, 393498}, {0x1E8F, 414812}, {0x1E90, 393934}, {0x1E91, 415259}, {0x1E92, 394049}, {0x1E93, 415399}, {0x1E94, 394120}, {0x1E95, 415466}, {0x1E96, 402429}, {0x1E97, 410884}, {0x1E98, 414517}, {0x1E99, 415048}, {0x1E9A, 397488}, {0x1E9B, 404989}, {0x1E9C, 404942}, {0x1E9D, 405030}, {0x1E9E, 390386}, {0x1E9F, 399497}, {0x1EA0, 379812}, {0x1EA1, 397196}, {0x1EA2, 379925}, {0x1EA3, 397303}, {0x1EA4, 379384}, {0x1EA5, 396786}, {0x1EA6, 379486}, {0x1EA7, 396884}, {0x1EA8, 379535}, {0x1EA9, 396931}, {0x1EAA, 379589}, {0x1EAB, 396983}, {0x1EAC, 379433}, {0x1EAD, 396833}, {0x1EAE, 379082}, {0x1EAF, 396498}, {0x1EB0, 379174}, {0x1EB1, 396586}, {0x1EB2, 379218}, {0x1EB3, 396628}, {0x1EB4, 379267}, {0x1EB5, 396675}, {0x1EB6, 379126}, {0x1EB7, 396540}, {0x1EB8, 382410}, {0x1EB9, 400442}, {0x1EBA, 382523}, {0x1EBB, 400549}, {0x1EBC, 382800}, {0x1EBD, 400885}, {0x1EBE, 382035}, {0x1EBF, 400083}, {0x1EC0, 382137}, {0x1EC1, 400181}, {0x1EC2, 382186}, {0x1EC3, 400228}, {0x1EC4, 382240}, {0x1EC5, 400280}, {0x1EC6, 382084}, {0x1EC7, 400130}, {0x1EC8, 384527}, {0x1EC9, 402948}, {0x1ECA, 384414}, {0x1ECB, 402841}, {0x1ECC, 387579}, {0x1ECD, 406774}, {0x1ECE, 387733}, {0x1ECF, 406920}, {0x1ED0, 387151}, {0x1ED1, 406364}, {0x1ED2, 387253}, {0x1ED3, 406462}, {0x1ED4, 387302}, {0x1ED5, 406509}, {0x1ED6, 387356}, {0x1ED7, 406561}, {0x1ED8, 387200}, {0x1ED9, 406411}, {0x1EDA, 387805}, {0x1EDB, 406988}, {0x1EDC, 387895}, {0x1EDD, 407074}, {0x1EDE, 387938}, {0x1EDF, 407115}, {0x1EE0, 387986}, {0x1EE1, 407161}, {0x1EE2, 387848}, {0x1EE3, 407029}, {0x1EE4, 391908}, {0x1EE5, 413027}, {0x1EE6, 392062}, {0x1EE7, 413173}, {0x1EE8, 392134}, {0x1EE9, 413241}, {0x1EEA, 392224}, {0x1EEB, 413327}, {0x1EEC, 392267}, {0x1EED, 413368}, {0x1EEE, 392315}, {0x1EEF, 413414}, {0x1EF0, 392177}, {0x1EF1, 413282}, {0x1EF2, 393574}, {0x1EF3, 414884}, {0x1EF4, 393536}, {0x1EF5, 414848}, {0x1EF6, 393641}, {0x1EF7, 414947}, {0x1EF8, 393783}, {0x1EF9, 415118}, {0x1EFA, 386330}, {0x1EFB, 405390}, {0x1EFC, 386367}, {0x1EFD, 405425}, {0x1EFE, 393680}, {0x1EFF, 414984}, {0x1F00, 312841}, {0x1F01, 312184}, {0x1F02, 313107}, {0x1F03, 312450}, {0x1F04, 312877}, {0x1F05, 312220}, {0x1F06, 312985}, {0x1F07, 312328}, {0x1F08, 304169}, {0x1F09, 303596}, {0x1F0A, 304504}, {0x1F0B, 303931}, {0x1F0C, 304207}, {0x1F0D, 303634}, {0x1F0E, 304320}, {0x1F0F, 303747}, {0x1F10, 313840}, {0x1F11, 313670}, {0x1F12, 313925}, {0x1F13, 313755}, {0x1F14, 313878}, {0x1F15, 313708}, {0x1F18, 305054}, {0x1F19, 304876}, {0x1F1A, 305143}, {0x1F1B, 304965}, {0x1F1C, 305094}, {0x1F1D, 304916}, {0x1F20, 314668}, {0x1F21, 314072}, {0x1F22, 314924}, {0x1F23, 314328}, {0x1F24, 314702}, {0x1F25, 314106}, {0x1F26, 314806}, {0x1F27, 314210}, {0x1F28, 305812}, {0x1F29, 305298}, {0x1F2A, 306135}, {0x1F2B, 305621}, {0x1F2C, 305848}, {0x1F2D, 305334}, {0x1F2E, 305957}, {0x1F2F, 305443}, {0x1F30, 315874}, {0x1F31, 315348}, {0x1F32, 316004}, {0x1F33, 315478}, {0x1F34, 315909}, {0x1F35, 315383}, {0x1F36, 315953}, {0x1F37, 315427}, {0x1F38, 306695}, {0x1F39, 306397}, {0x1F3A, 306831}, {0x1F3B, 306533}, {0x1F3C, 306732}, {0x1F3D, 306434}, {0x1F3E, 306778}, {0x1F3F, 306480}, {0x1F40, 317716}, {0x1F41, 317546}, {0x1F42, 317801}, {0x1F43, 317631}, {0x1F44, 317754}, {0x1F45, 317584}, {0x1F48, 308386}, {0x1F49, 308208}, {0x1F4A, 308475}, {0x1F4B, 308297}, {0x1F4C, 308426}, {0x1F4D, 308248}, {0x1F50, 318881}, {0x1F51, 318319}, {0x1F52, 319020}, {0x1F53, 318458}, {0x1F54, 318919}, {0x1F55, 318357}, {0x1F56, 318966}, {0x1F57, 318404}, {0x1F59, 308938}, {0x1F5B, 309083}, {0x1F5D, 308978}, {0x1F5F, 309027}, {0x1F60, 316919}, {0x1F61, 316299}, {0x1F62, 317185}, {0x1F63, 316565}, {0x1F64, 316955}, {0x1F65, 316335}, {0x1F66, 317063}, {0x1F67, 316443}, {0x1F68, 307653}, {0x1F69, 307119}, {0x1F6A, 307988}, {0x1F6B, 307454}, {0x1F6C, 307691}, {0x1F6D, 307157}, {0x1F6E, 307804}, {0x1F6F, 307270}, {0x1F70, 313307}, {0x1F71, 312651}, {0x1F72, 314011}, {0x1F73, 313803}, {0x1F74, 315116}, {0x1F75, 314486}, {0x1F76, 316084}, {0x1F77, 315799}, {0x1F78, 317887}, {0x1F79, 317679}, {0x1F7A, 319106}, {0x1F7B, 318800}, {0x1F7C, 317385}, {0x1F7D, 316729}, {0x1F80, 313217}, {0x1F81, 312560}, {0x1F82, 313153}, {0x1F83, 312496}, {0x1F84, 312922}, {0x1F85, 312265}, {0x1F86, 313037}, {0x1F87, 312380}, {0x1F88, 304447}, {0x1F89, 303874}, {0x1F8A, 304552}, {0x1F8B, 303979}, {0x1F8C, 304254}, {0x1F8D, 303681}, {0x1F8E, 304374}, {0x1F8F, 303801}, {0x1F90, 315030}, {0x1F91, 314434}, {0x1F92, 314968}, {0x1F93, 314372}, {0x1F94, 314745}, {0x1F95, 314149}, {0x1F96, 314856}, {0x1F97, 314260}, {0x1F98, 306080}, {0x1F99, 305566}, {0x1F9A, 306181}, {0x1F9B, 305667}, {0x1F9C, 305893}, {0x1F9D, 305379}, {0x1F9E, 306009}, {0x1F9F, 305495}, {0x1FA0, 317295}, {0x1FA1, 316675}, {0x1FA2, 317231}, {0x1FA3, 316611}, {0x1FA4, 317000}, {0x1FA5, 316380}, {0x1FA6, 317115}, {0x1FA7, 316495}, {0x1FA8, 307931}, {0x1FA9, 307397}, {0x1FAA, 308036}, {0x1FAB, 307502}, {0x1FAC, 307738}, {0x1FAD, 307204}, {0x1FAE, 307858}, {0x1FAF, 307324}, {0x1FB0, 313397}, {0x1FB1, 312614}, {0x1FB2, 313343}, {0x1FB3, 313434}, {0x1FB4, 312686}, {0x1FB6, 312739}, {0x1FB7, 312781}, {0x1FB8, 304695}, {0x1FB9, 304046}, {0x1FBA, 304657}, {0x1FBB, 304085}, {0x1FBC, 304122}, {0x1FBD, 311287}, {0x1FBE, 311913}, {0x1FBF, 311934}, {0x1FC0, 311862}, {0x1FC1, 309690}, {0x1FC2, 315150}, {0x1FC3, 315202}, {0x1FC4, 314519}, {0x1FC6, 314570}, {0x1FC7, 314610}, {0x1FC8, 305233}, {0x1FC9, 305015}, {0x1FCA, 306282}, {0x1FCB, 305732}, {0x1FCC, 305767}, {0x1FCD, 311995}, {0x1FCE, 311946}, {0x1FCF, 311967}, {0x1FD0, 316119}, {0x1FD1, 315763}, {0x1FD2, 315714}, {0x1FD3, 315562}, {0x1FD6, 315833}, {0x1FD7, 315610}, {0x1FD8, 306952}, {0x1FD9, 306621}, {0x1FDA, 306915}, {0x1FDB, 306659}, {0x1FDD, 309643}, {0x1FDE, 309594}, {0x1FDF, 309615}, {0x1FE0, 319144}, {0x1FE1, 318761}, {0x1FE2, 318709}, {0x1FE3, 318548}, {0x1FE4, 318088}, {0x1FE5, 318054}, {0x1FE6, 318837}, {0x1FE7, 318599}, {0x1FE8, 309337}, {0x1FE9, 309177}, {0x1FEA, 309297}, {0x1FEB, 309218}, {0x1FEC, 308744}, {0x1FED, 309722}, {0x1FEE, 309665}, {0x1FEF, 319769}, {0x1FF2, 317421}, {0x1FF3, 317475}, {0x1FF4, 316764}, {0x1FF6, 316817}, {0x1FF7, 316859}, {0x1FF8, 308565}, {0x1FF9, 308347}, {0x1FFA, 308141}, {0x1FFB, 307569}, {0x1FFC, 307606}, {0x1FFD, 311851}, {0x1FFE, 309582}, {0x2000, 276572}, {0x2001, 276399}, {0x2002, 276580}, {0x2003, 276407}, {0x2004, 585565}, {0x2005, 290483}, {0x2006, 552050}, {0x2007, 289844}, {0x2008, 532031}, {0x2009, 585272}, {0x200A, 324204}, {0x200B, 635420}, {0x200C, 635398}, {0x200D, 635354}, {0x200E, 419073}, {0x200F, 537741}, {0x2010, 350278}, {0x2011, 507264}, {0x2012, 289832}, {0x2013, 276564}, {0x2014, 276391}, {0x2015, 349860}, {0x2016, 246460}, {0x2017, 245892}, {0x2018, 418044}, {0x2019, 536720}, {0x201A, 549454}, {0x201B, 549374}, {0x201C, 417150}, {0x201D, 536276}, {0x201E, 245908}, {0x201F, 245744}, {0x2020, 233092}, {0x2021, 245689}, {0x2022, 97583}, {0x2023, 593968}, {0x2024, 515957}, {0x2025, 595043}, {0x2026, 349900}, {0x2027, 350334}, {0x2028, 425410}, {0x2029, 519139}, {0x202A, 419049}, {0x202B, 537717}, {0x202C, 529717}, {0x202D, 419092}, {0x202E, 537760}, {0x202F, 500777}, {0x2030, 523929}, {0x2031, 523953}, {0x2032, 531917}, {0x2033, 246075}, {0x2034, 594399}, {0x2035, 535381}, {0x2036, 535203}, {0x2037, 535542}, {0x2038, 127769}, {0x2039, 549412}, {0x203A, 549482}, {0x203B, 533205}, {0x203C, 245720}, {0x203D, 358878}, {0x203E, 519033}, {0x203F, 595997}, {0x2040, 130337}, {0x2041, 127775}, {0x2042, 53035}, {0x2043, 350285}, {0x2044, 290536}, {0x2045, 418187}, {0x2046, 536868}, {0x2047, 246116}, {0x2048, 532553}, {0x2049, 288772}, {0x204A, 592866}, {0x204B, 535359}, {0x204C, 79417}, {0x204D, 80052}, {0x204E, 432746}, {0x204F, 535486}, {0x2050, 177629}, {0x2051, 594981}, {0x2052, 185849}, {0x2053, 564936}, {0x2054, 359249}, {0x2055, 290226}, {0x2056, 585354}, {0x2057, 532495}, {0x2058, 290415}, {0x2059, 290103}, {0x205A, 595058}, {0x205B, 290401}, {0x205C, 245262}, {0x205D, 594027}, {0x205E, 610429}, {0x205F, 474992}, {0x2060, 614807}, {0x2061, 293587}, {0x2062, 359302}, {0x2063, 359282}, {0x2064, 359267}, {0x206A, 356227}, {0x206B, 785}, {0x206C, 356199}, {0x206D, 756}, {0x206E, 500799}, {0x206F, 507243}, {0x2070, 564367}, {0x2071, 564101}, {0x2074, 564084}, {0x2075, 564067}, {0x2076, 564317}, {0x2077, 564299}, {0x2078, 564025}, {0x2079, 564214}, {0x207A, 564247}, {0x207B, 564196}, {0x207C, 564043}, {0x207D, 564167}, {0x207E, 564269}, {0x207F, 564134}, {0x2080, 561945}, {0x2081, 561823}, {0x2082, 561931}, {0x2083, 561915}, {0x2084, 561750}, {0x2085, 561735}, {0x2086, 561901}, {0x2087, 561885}, {0x2088, 561697}, {0x2089, 561808}, {0x208A, 561837}, {0x208B, 561792}, {0x208C, 561713}, {0x208D, 561765}, {0x208E, 561857}, {0x2090, 415916}, {0x2091, 415947}, {0x2092, 416195}, {0x2093, 416447}, {0x2094, 416319}, {0x2095, 415978}, {0x2096, 416071}, {0x2097, 416102}, {0x2098, 416133}, {0x2099, 416164}, {0x209A, 416226}, {0x209B, 416288}, {0x209C, 416354}, {0x20A0, 288677}, {0x20A1, 178000}, {0x20A2, 191138}, {0x20A3, 290551}, {0x20A4, 431013}, {0x20A5, 476982}, {0x20A6, 500750}, {0x20A7, 524275}, {0x20A8, 543914}, {0x20A9, 614798}, {0x20AA, 503824}, {0x20AB, 245191}, {0x20AC, 288667}, {0x20AD, 377297}, {0x20AE, 594661}, {0x20AF, 248418}, {0x20B0, 296714}, {0x20B1, 524287}, {0x20B2, 320858}, {0x20B3, 53151}, {0x20B4, 350243}, {0x20B5, 128749}, {0x20B6, 431826}, {0x20B7, 554971}, {0x20B8, 580269}, {0x20B9, 356094}, {0x20D0, 183893}, {0x20D1, 185025}, {0x20D2, 184254}, {0x20D3, 185283}, {0x20D4, 178229}, {0x20D5, 178599}, {0x20D6, 183715}, {0x20D7, 184741}, {0x20D8, 185173}, {0x20D9, 178631}, {0x20DA, 178265}, {0x20DB, 185392}, {0x20DC, 181807}, {0x20DD, 181543}, {0x20DE, 181689}, {0x20DF, 181607}, {0x20E0, 181570}, {0x20E1, 183922}, {0x20E2, 181662}, {0x20E3, 181635}, {0x20E4, 181716}, {0x20E5, 184676}, {0x20E6, 181476}, {0x20E7, 178204}, {0x20E8, 185481}, {0x20E9, 185713}, {0x20EA, 184014}, {0x20EB, 184155}, {0x20EC, 185082}, {0x20ED, 184048}, {0x20EE, 183742}, {0x20EF, 184769}, {0x20F0, 178302}, {0x2100, 745}, {0x2101, 838}, {0x2102, 246769}, {0x2103, 233288}, {0x2104, 128777}, {0x2105, 127761}, {0x2106, 107742}, {0x2107, 288652}, {0x2108, 547707}, {0x2109, 233303}, {0x210A, 547655}, {0x210B, 547538}, {0x210C, 80732}, {0x210D, 246821}, {0x210E, 527600}, {0x210F, 527616}, {0x2110, 547555}, {0x2111, 80755}, {0x2112, 547572}, {0x2113, 547670}, {0x2114, 377414}, {0x2115, 246845}, {0x2116, 509032}, {0x2117, 554376}, {0x2118, 547606}, {0x2119, 246869}, {0x211A, 246918}, {0x211B, 547623}, {0x211C, 80778}, {0x211D, 246942}, {0x211E, 530215}, {0x211F, 534875}, {0x2120, 547836}, {0x2121, 578248}, {0x2122, 593796}, {0x2123, 610260}, {0x2124, 246966}, {0x2125, 518928}, {0x2126, 509914}, {0x2127, 359189}, {0x2128, 80801}, {0x2129, 594751}, {0x212A, 372507}, {0x212B, 6598}, {0x212C, 547487}, {0x212D, 80709}, {0x212E, 277447}, {0x212F, 547640}, {0x2130, 547504}, {0x2131, 547521}, {0x2132, 594734}, {0x2133, 547589}, {0x2134, 547685}, {0x2135, 6240}, {0x2136, 78386}, {0x2137, 296748}, {0x2138, 233099}, {0x2139, 356180}, {0x213A, 541252}, {0x213B, 289543}, {0x213C, 247193}, {0x213D, 247167}, {0x213E, 246793}, {0x213F, 246893}, {0x2140, 247137}, {0x2141, 594798}, {0x2142, 594826}, {0x2143, 535456}, {0x2144, 594854}, {0x2145, 246990}, {0x2146, 247021}, {0x2147, 247050}, {0x2148, 247079}, {0x2149, 247108}, {0x214A, 531963}, {0x214B, 594679}, {0x214C, 523944}, {0x214D, 2363}, {0x214E, 594882}, {0x214F, 566689}, {0x2150, 611290}, {0x2151, 611236}, {0x2152, 611344}, {0x2153, 611370}, {0x2154, 611543}, {0x2155, 611185}, {0x2156, 611516}, {0x2157, 611456}, {0x2158, 611130}, {0x2159, 611318}, {0x215A, 611102}, {0x215B, 611158}, {0x215C, 611426}, {0x215D, 611073}, {0x215E, 611396}, {0x215F, 290513}, {0x2160, 540760}, {0x2161, 541084}, {0x2162, 541043}, {0x2163, 540722}, {0x2164, 540648}, {0x2165, 540952}, {0x2166, 540932}, {0x2167, 540527}, {0x2168, 540741}, {0x2169, 540998}, {0x216A, 540547}, {0x216B, 541063}, {0x216C, 540568}, {0x216D, 540778}, {0x216E, 540667}, {0x216F, 540839}, {0x2170, 553380}, {0x2171, 553596}, {0x2172, 553543}, {0x2173, 553330}, {0x2174, 553272}, {0x2175, 553495}, {0x2176, 553469}, {0x2177, 553193}, {0x2178, 553355}, {0x2179, 553519}, {0x217A, 553219}, {0x217B, 553569}, {0x217C, 553246}, {0x217D, 553404}, {0x217E, 553297}, {0x217F, 553436}, {0x2180, 540866}, {0x2181, 540694}, {0x2182, 541016}, {0x2183, 540897}, {0x2184, 409316}, {0x2185, 540970}, {0x2186, 540588}, {0x2187, 540619}, {0x2188, 540804}, {0x2189, 611570}, {0x2190, 419115}, {0x2191, 597227}, {0x2192, 537810}, {0x2193, 247526}, {0x2194, 417574}, {0x2195, 596464}, {0x2196, 507983}, {0x2197, 507406}, {0x2198, 554402}, {0x2199, 554624}, {0x219A, 419807}, {0x219B, 538511}, {0x219C, 421426}, {0x219D, 540147}, {0x219E, 421061}, {0x219F, 597967}, {0x21A0, 539774}, {0x21A1, 248346}, {0x21A2, 419835}, {0x21A3, 538540}, {0x21A4, 419342}, {0x21A5, 597241}, {0x21A6, 538042}, {0x21A7, 247542}, {0x21A8, 596478}, {0x21A9, 419723}, {0x21AA, 538424}, {0x21AB, 419749}, {0x21AC, 538451}, {0x21AD, 417898}, {0x21AE, 417674}, {0x21AF, 248395}, {0x21B0, 597398}, {0x21B1, 597431}, {0x21B2, 247745}, {0x21B3, 247780}, {0x21B4, 538306}, {0x21B5, 247633}, {0x21B6, 6851}, {0x21B7, 177598}, {0x21B8, 508108}, {0x21B9, 419561}, {0x21BA, 6819}, {0x21BB, 177437}, {0x21BC, 420871}, {0x21BD, 420569}, {0x21BE, 597863}, {0x21BF, 597747}, {0x21C0, 539577}, {0x21C1, 539269}, {0x21C2, 248234}, {0x21C3, 248112}, {0x21C4, 538111}, {0x21C5, 597264}, {0x21C6, 419409}, {0x21C7, 420935}, {0x21C8, 597900}, {0x21C9, 539643}, {0x21CA, 248273}, {0x21CB, 420323}, {0x21CC, 539020}, {0x21CD, 420188}, {0x21CE, 417788}, {0x21CF, 538881}, {0x21D0, 420133}, {0x21D1, 597506}, {0x21D2, 538824}, {0x21D3, 247861}, {0x21D4, 417764}, {0x21D5, 596522}, {0x21D6, 508187}, {0x21D7, 507597}, {0x21D8, 554577}, {0x21D9, 554729}, {0x21DA, 421010}, {0x21DB, 539721}, {0x21DC, 420985}, {0x21DD, 539695}, {0x21DE, 597328}, {0x21DF, 247671}, {0x21E0, 420110}, {0x21E1, 597485}, {0x21E2, 538800}, {0x21E3, 247838}, {0x21E4, 419538}, {0x21E5, 538248}, {0x21E6, 421447}, {0x21E7, 598035}, {0x21E8, 540169}, {0x21E9, 248373}, {0x21EA, 598055}, {0x21EB, 598084}, {0x21EC, 598116}, {0x21ED, 598168}, {0x21EE, 598218}, {0x21EF, 598245}, {0x21F0, 540192}, {0x21F1, 508081}, {0x21F2, 554500}, {0x21F3, 596543}, {0x21F4, 535907}, {0x21F5, 247567}, {0x21F6, 585456}, {0x21F7, 420030}, {0x21F8, 538740}, {0x21F9, 417703}, {0x21FA, 419679}, {0x21FB, 538379}, {0x21FC, 417629}, {0x21FD, 420907}, {0x21FE, 539614}, {0x21FF, 417869}, {0x2200, 290280}, {0x2201, 185871}, {0x2202, 523683}, {0x2203, 585235}, {0x2204, 585214}, {0x2205, 276432}, {0x2206, 356084}, {0x2207, 500732}, {0x2208, 276105}, {0x2209, 508293}, {0x220A, 552641}, {0x220B, 186020}, {0x220C, 242075}, {0x220D, 552509}, {0x220E, 276589}, {0x220F, 500520}, {0x2210, 500450}, {0x2211, 500597}, {0x2212, 477009}, {0x2213, 477166}, {0x2214, 245239}, {0x2215, 241985}, {0x2216, 547875}, {0x2217, 53017}, {0x2218, 540272}, {0x2219, 97590}, {0x221A, 557826}, {0x221B, 191193}, {0x221C, 290501}, {0x221D, 531988}, {0x221E, 356112}, {0x221F, 535621}, {0x2220, 6541}, {0x2221, 474135}, {0x2222, 554985}, {0x2223, 241963}, {0x2224, 242183}, {0x2225, 519171}, {0x2226, 508491}, {0x2227, 431869}, {0x2228, 432061}, {0x2229, 358890}, {0x222A, 596018}, {0x222B, 358445}, {0x222C, 245782}, {0x222D, 594320}, {0x222E, 186249}, {0x222F, 564879}, {0x2230, 611057}, {0x2231, 177418}, {0x2232, 177310}, {0x2233, 6673}, {0x2234, 585248}, {0x2235, 76296}, {0x2236, 532848}, {0x2237, 531977}, {0x2238, 245216}, {0x2239, 288748}, {0x223A, 293691}, {0x223B, 349830}, {0x223C, 592528}, {0x223D, 535505}, {0x223E, 359173}, {0x223F, 549364}, {0x2240, 614861}, {0x2241, 508583}, {0x2242, 477154}, {0x2243, 53091}, {0x2244, 508311}, {0x2245, 9481}, {0x2246, 9409}, {0x2247, 503507}, {0x2248, 6331}, {0x2249, 508273}, {0x224A, 6306}, {0x224B, 594443}, {0x224C, 6293}, {0x224D, 277206}, {0x224E, 293735}, {0x224F, 239872}, {0x2250, 9388}, {0x2251, 293712}, {0x2252, 9504}, {0x2253, 355058}, {0x2254, 177987}, {0x2255, 276825}, {0x2256, 540255}, {0x2257, 540241}, {0x2258, 190364}, {0x2259, 277464}, {0x225A, 277191}, {0x225B, 561501}, {0x225C, 233348}, {0x225D, 276713}, {0x225E, 474718}, {0x225F, 532593}, {0x2260, 508354}, {0x2261, 350403}, {0x2262, 508402}, {0x2263, 561674}, {0x2264, 423499}, {0x2265, 301025}, {0x2266, 423746}, {0x2267, 301289}, {0x2268, 423308}, {0x2269, 300819}, {0x226A, 488214}, {0x226B, 488196}, {0x226C, 78397}, {0x226D, 508367}, {0x226E, 508419}, {0x226F, 508385}, {0x2270, 503659}, {0x2271, 503551}, {0x2272, 423521}, {0x2273, 301050}, {0x2274, 503690}, {0x2275, 503585}, {0x2276, 423548}, {0x2277, 301080}, {0x2278, 503726}, {0x2279, 503624}, {0x227A, 529904}, {0x227B, 562331}, {0x227C, 530144}, {0x227D, 562571}, {0x227E, 530165}, {0x227F, 562592}, {0x2280, 242259}, {0x2281, 242317}, {0x2282, 562032}, {0x2283, 564531}, {0x2284, 508239}, {0x2285, 508255}, {0x2286, 562162}, {0x2287, 564671}, {0x2288, 503439}, {0x2289, 503472}, {0x228A, 562221}, {0x228B, 564734}, {0x228C, 488517}, {0x228D, 488526}, {0x228E, 488550}, {0x228F, 556081}, {0x2290, 557323}, {0x2291, 556097}, {0x2292, 557342}, {0x2293, 555316}, {0x2294, 555420}, {0x2295, 139313}, {0x2296, 137835}, {0x2297, 139392}, {0x2298, 133012}, {0x2299, 133035}, {0x229A, 139370}, {0x229B, 132712}, {0x229C, 133056}, {0x229D, 132787}, {0x229E, 561207}, {0x229F, 561148}, {0x22A0, 561348}, {0x22A1, 560113}, {0x22A2, 537055}, {0x22A3, 418369}, {0x22A4, 247322}, {0x22A5, 596603}, {0x22A6, 52998}, {0x22A7, 477263}, {0x22A8, 594648}, {0x22A9, 290288}, {0x22AA, 594522}, {0x22AB, 246382}, {0x22AC, 242302}, {0x22AD, 508593}, {0x22AE, 242244}, {0x22AF, 500829}, {0x22B0, 530191}, {0x22B1, 562618}, {0x22B2, 507324}, {0x22B3, 186039}, {0x22B4, 507343}, {0x22B5, 186067}, {0x22B6, 516429}, {0x22B7, 355049}, {0x22B8, 488229}, {0x22B9, 346167}, {0x22BA, 358719}, {0x22BB, 614917}, {0x22BC, 500772}, {0x22BD, 507320}, {0x22BE, 535785}, {0x22BF, 537123}, {0x22C0, 500485}, {0x22C1, 500503}, {0x22C2, 500466}, {0x22C3, 500634}, {0x22C4, 239639}, {0x22C5, 245226}, {0x22C6, 561527}, {0x22C7, 242000}, {0x22C8, 82548}, {0x22C9, 417346}, {0x22CA, 536428}, {0x22CB, 417971}, {0x22CC, 536670}, {0x22CD, 535520}, {0x22CE, 219711}, {0x22CF, 219693}, {0x22D0, 246266}, {0x22D1, 246296}, {0x22D2, 245798}, {0x22D3, 246312}, {0x22D4, 527544}, {0x22D5, 276691}, {0x22D6, 423814}, {0x22D7, 301401}, {0x22D8, 610928}, {0x22D9, 610905}, {0x22DA, 423439}, {0x22DB, 300962}, {0x22DC, 276761}, {0x22DD, 276736}, {0x22DE, 276783}, {0x22DF, 276804}, {0x22E0, 242276}, {0x22E1, 242334}, {0x22E2, 508516}, {0x22E3, 508548}, {0x22E4, 556125}, {0x22E5, 557373}, {0x22E6, 423335}, {0x22E7, 300849}, {0x22E8, 530113}, {0x22E9, 562540}, {0x22EA, 508433}, {0x22EB, 242102}, {0x22EC, 508456}, {0x22ED, 242138}, {0x22EE, 610411}, {0x22EF, 476944}, {0x22F0, 596576}, {0x22F1, 247293}, {0x22F2, 276198}, {0x22F3, 276325}, {0x22F4, 552688}, {0x22F5, 276172}, {0x22F6, 276237}, {0x22F7, 552658}, {0x22F8, 276300}, {0x22F9, 276261}, {0x22FA, 186107}, {0x22FB, 186166}, {0x22FC, 552562}, {0x22FD, 186144}, {0x22FE, 552534}, {0x22FF, 634979}, {0x2300, 239625}, {0x2301, 276017}, {0x2302, 350204}, {0x2303, 596262}, {0x2304, 247263}, {0x2305, 531952}, {0x2306, 524263}, {0x2307, 611827}, {0x2308, 416905}, {0x2309, 536003}, {0x230A, 417241}, {0x230B, 536346}, {0x230C, 82390}, {0x230D, 82309}, {0x230E, 593146}, {0x230F, 593077}, {0x2310, 535341}, {0x2311, 556648}, {0x2312, 50305}, {0x2313, 547768}, {0x2314, 547733}, {0x2315, 578229}, {0x2316, 529744}, {0x2317, 611020}, {0x2318, 527577}, {0x2319, 594782}, {0x231A, 611666}, {0x231B, 350166}, {0x231C, 593061}, {0x231D, 593129}, {0x231E, 82290}, {0x231F, 82370}, {0x2320, 593035}, {0x2321, 82269}, {0x2322, 290674}, {0x2323, 553764}, {0x2324, 596275}, {0x2325, 516387}, {0x2326, 277270}, {0x2327, 614896}, {0x2328, 372523}, {0x2329, 418844}, {0x232A, 537510}, {0x232B, 277252}, {0x232C, 78348}, {0x232D, 219846}, {0x232E, 6274}, {0x232F, 566966}, {0x2330, 593775}, {0x2331, 240590}, {0x2332, 185956}, {0x2333, 552361}, {0x2334, 190379}, {0x2335, 190391}, {0x2336, 7722}, {0x2337, 8988}, {0x2338, 8370}, {0x2339, 8255}, {0x233A, 8220}, {0x233B, 8443}, {0x233C, 8089}, {0x233D, 7132}, {0x233E, 7065}, {0x233F, 8956}, {0x2340, 6951}, {0x2341, 8671}, {0x2342, 8052}, {0x2343, 8517}, {0x2344, 8403}, {0x2345, 7923}, {0x2346, 8877}, {0x2347, 8474}, {0x2348, 8627}, {0x2349, 6987}, {0x234A, 7560}, {0x234B, 7337}, {0x234C, 8289}, {0x234D, 8187}, {0x234E, 7524}, {0x234F, 9314}, {0x2350, 8740}, {0x2351, 9276}, {0x2352, 7273}, {0x2353, 8704}, {0x2354, 8156}, {0x2355, 9242}, {0x2356, 7601}, {0x2357, 8327}, {0x2358, 8814}, {0x2359, 7371}, {0x235A, 7408}, {0x235B, 7850}, {0x235C, 7167}, {0x235D, 9168}, {0x235E, 8781}, {0x235F, 7098}, {0x2360, 8123}, {0x2361, 9202}, {0x2362, 7237}, {0x2363, 9022}, {0x2364, 7814}, {0x2365, 7026}, {0x2366, 7486}, {0x2367, 7885}, {0x2368, 9093}, {0x2369, 7677}, {0x236A, 7205}, {0x236B, 7305}, {0x236C, 9349}, {0x236D, 9059}, {0x236E, 8915}, {0x236F, 8554}, {0x2370, 8591}, {0x2371, 7447}, {0x2372, 9131}, {0x2373, 7751}, {0x2374, 8851}, {0x2375, 7960}, {0x2376, 6914}, {0x2377, 7638}, {0x2378, 7778}, {0x2379, 7988}, {0x237A, 6886}, {0x237B, 508339}, {0x237C, 535806}, {0x237D, 549147}, {0x237E, 76318}, {0x237F, 610785}, {0x2380, 358428}, {0x2381, 186221}, {0x2382, 241921}, {0x2383, 276416}, {0x2384, 185882}, {0x2385, 613904}, {0x2386, 276633}, {0x2387, 6421}, {0x2388, 346126}, {0x2389, 133786}, {0x238A, 139406}, {0x238B, 96611}, {0x238C, 596006}, {0x238D, 488040}, {0x238E, 350365}, {0x238F, 516254}, {0x2390, 516288}, {0x2391, 523766}, {0x2392, 523798}, {0x2393, 241817}, {0x2394, 554289}, {0x2395, 8025}, {0x2396, 233259}, {0x2397, 531903}, {0x2398, 506023}, {0x2399, 531932}, {0x239A, 176673}, {0x239B, 417517}, {0x239C, 417462}, {0x239D, 417489}, {0x239E, 536582}, {0x239F, 536525}, {0x23A0, 536553}, {0x23A1, 418154}, {0x23A2, 418091}, {0x23A3, 418121}, {0x23A4, 536834}, {0x23A5, 536769}, {0x23A6, 536800}, {0x23A7, 417037}, {0x23A8, 417005}, {0x23A9, 416975}, {0x23AA, 219669}, {0x23AB, 536122}, {0x23AC, 536089}, {0x23AD, 536058}, {0x23AE, 358515}, {0x23AF, 349920}, {0x23B0, 596893}, {0x23B1, 597056}, {0x23B2, 562659}, {0x23B3, 562642}, {0x23B4, 593184}, {0x23B5, 82434}, {0x23B6, 82456}, {0x23B7, 532656}, {0x23B8, 418548}, {0x23B9, 537203}, {0x23BA, 349979}, {0x23BB, 350002}, {0x23BC, 350025}, {0x23BD, 350048}, {0x23BE, 233913}, {0x23BF, 233819}, {0x23C0, 234000}, {0x23C1, 233406}, {0x23C2, 233612}, {0x23C3, 234044}, {0x23C4, 233461}, {0x23C5, 233665}, {0x23C6, 233959}, {0x23C7, 233518}, {0x23C8, 233720}, {0x23C9, 233363}, {0x23CA, 233571}, {0x23CB, 233868}, {0x23CC, 233771}, {0x23CD, 555704}, {0x23CE, 534941}, {0x23CF, 276004}, {0x23D0, 610697}, {0x23D1, 476687}, {0x23D2, 476702}, {0x23D3, 476776}, {0x23D4, 476727}, {0x23D5, 476864}, {0x23D6, 476837}, {0x23D7, 476820}, {0x23D8, 476801}, {0x23D9, 476757}, {0x23DA, 248655}, {0x23DB, 293620}, {0x23DC, 593113}, {0x23DD, 82351}, {0x23DE, 593017}, {0x23DF, 82248}, {0x23E0, 593203}, {0x23E1, 82502}, {0x23E2, 614287}, {0x23E3, 78361}, {0x23E4, 561623}, {0x23E5, 290137}, {0x23E6, 734}, {0x23E7, 276081}, {0x23E8, 233235}, {0x23E9, 79730}, {0x23EA, 79235}, {0x23EB, 80391}, {0x23EC, 78888}, {0x23ED, 79767}, {0x23EE, 79271}, {0x23EF, 79947}, {0x23F0, 2376}, {0x23F1, 561598}, {0x23F2, 592744}, {0x23F3, 350176}, {0x2400, 566645}, {0x2401, 566775}, {0x2402, 566803}, {0x2403, 566338}, {0x2404, 566361}, {0x2405, 566429}, {0x2406, 566012}, {0x2407, 566056}, {0x2408, 566035}, {0x2409, 566540}, {0x240A, 566573}, {0x240B, 566935}, {0x240C, 566492}, {0x240D, 566090}, {0x240E, 566737}, {0x240F, 566717}, {0x2410, 566117}, {0x2411, 566221}, {0x2412, 566283}, {0x2413, 566251}, {0x2414, 566190}, {0x2415, 566594}, {0x2416, 566881}, {0x2417, 566392}, {0x2418, 566072}, {0x2419, 566313}, {0x241A, 566828}, {0x241B, 566448}, {0x241C, 566466}, {0x241D, 566513}, {0x241E, 566661}, {0x241F, 566909}, {0x2420, 566758}, {0x2421, 566145}, {0x2422, 80824}, {0x2423, 516016}, {0x2424, 566626}, {0x2425, 566163}, {0x2426, 566850}, {0x2440, 509294}, {0x2441, 509217}, {0x2442, 509285}, {0x2443, 509303}, {0x2444, 509158}, {0x2445, 509174}, {0x2446, 509186}, {0x2447, 509138}, {0x2448, 509255}, {0x2449, 509227}, {0x244A, 509264}, {0x2460, 132877}, {0x2461, 132953}, {0x2462, 132933}, {0x2463, 132839}, {0x2464, 132820}, {0x2465, 132915}, {0x2466, 132895}, {0x2467, 132800}, {0x2468, 132858}, {0x2469, 138529}, {0x246A, 137962}, {0x246B, 138910}, {0x246C, 138583}, {0x246D, 138357}, {0x246E, 137984}, {0x246F, 138469}, {0x2470, 138405}, {0x2471, 137900}, {0x2472, 138381}, {0x2473, 138932}, {0x2474, 519345}, {0x2475, 519445}, {0x2476, 519419}, {0x2477, 519295}, {0x2478, 519270}, {0x2479, 519395}, {0x247A, 519369}, {0x247B, 519244}, {0x247C, 519320}, {0x247D, 523550}, {0x247E, 523373}, {0x247F, 523605}, {0x2480, 523575}, {0x2481, 523430}, {0x2482, 523401}, {0x2483, 523521}, {0x2484, 523490}, {0x2485, 523343}, {0x2486, 523460}, {0x2487, 523633}, {0x2488, 240116}, {0x2489, 240312}, {0x248A, 240264}, {0x248B, 240020}, {0x248C, 239971}, {0x248D, 240214}, {0x248E, 240166}, {0x248F, 239921}, {0x2490, 240069}, {0x2491, 508937}, {0x2492, 508772}, {0x2493, 508984}, {0x2494, 508958}, {0x2495, 508821}, {0x2496, 508796}, {0x2497, 508912}, {0x2498, 508873}, {0x2499, 508746}, {0x249A, 508847}, {0x249B, 509008}, {0x249C, 522433}, {0x249D, 522468}, {0x249E, 522503}, {0x249F, 522538}, {0x24A0, 522573}, {0x24A1, 522608}, {0x24A2, 522643}, {0x24A3, 522678}, {0x24A4, 522713}, {0x24A5, 522748}, {0x24A6, 522783}, {0x24A7, 522818}, {0x24A8, 522853}, {0x24A9, 522888}, {0x24AA, 522923}, {0x24AB, 522958}, {0x24AC, 522993}, {0x24AD, 523028}, {0x24AE, 523063}, {0x24AF, 523098}, {0x24B0, 523133}, {0x24B1, 523168}, {0x24B2, 523203}, {0x24B3, 523238}, {0x24B4, 523273}, {0x24B5, 523308}, {0x24B6, 136257}, {0x24B7, 136288}, {0x24B8, 136319}, {0x24B9, 136350}, {0x24BA, 136381}, {0x24BB, 136412}, {0x24BC, 136443}, {0x24BD, 136474}, {0x24BE, 136505}, {0x24BF, 136536}, {0x24C0, 136567}, {0x24C1, 136598}, {0x24C2, 136629}, {0x24C3, 136660}, {0x24C4, 136691}, {0x24C5, 136722}, {0x24C6, 136753}, {0x24C7, 136784}, {0x24C8, 136815}, {0x24C9, 136846}, {0x24CA, 136877}, {0x24CB, 136908}, {0x24CC, 136939}, {0x24CD, 136970}, {0x24CE, 137001}, {0x24CF, 137032}, {0x24D0, 137063}, {0x24D1, 137092}, {0x24D2, 137121}, {0x24D3, 137150}, {0x24D4, 137179}, {0x24D5, 137208}, {0x24D6, 137237}, {0x24D7, 137266}, {0x24D8, 137295}, {0x24D9, 137324}, {0x24DA, 137353}, {0x24DB, 137382}, {0x24DC, 137411}, {0x24DD, 137440}, {0x24DE, 137469}, {0x24DF, 137498}, {0x24E0, 137527}, {0x24E1, 137556}, {0x24E2, 137585}, {0x24E3, 137614}, {0x24E4, 137643}, {0x24E5, 137672}, {0x24E6, 137701}, {0x24E7, 137730}, {0x24E8, 137759}, {0x24E9, 137788}, {0x24EA, 132971}, {0x24EB, 501981}, {0x24EC, 502209}, {0x24ED, 502176}, {0x24EE, 502044}, {0x24EF, 502012}, {0x24F0, 502144}, {0x24F1, 502110}, {0x24F2, 501948}, {0x24F3, 502077}, {0x24F4, 502240}, {0x24F5, 245497}, {0x24F6, 245601}, {0x24F7, 245574}, {0x24F8, 245445}, {0x24F9, 245419}, {0x24FA, 245549}, {0x24FB, 245522}, {0x24FC, 245392}, {0x24FD, 245471}, {0x24FE, 245626}, {0x24FF, 500880}, {0x2500, 85455}, {0x2501, 83991}, {0x2502, 85903}, {0x2503, 84439}, {0x2504, 85662}, {0x2505, 84198}, {0x2506, 85704}, {0x2507, 84240}, {0x2508, 85549}, {0x2509, 84085}, {0x250A, 85594}, {0x250B, 84130}, {0x250C, 85421}, {0x250D, 83518}, {0x250E, 83261}, {0x250F, 83957}, {0x2510, 85388}, {0x2511, 83437}, {0x2512, 83180}, {0x2513, 83924}, {0x2514, 85871}, {0x2515, 87007}, {0x2516, 86756}, {0x2517, 84407}, {0x2518, 85840}, {0x2519, 86927}, {0x251A, 86676}, {0x251B, 84339}, {0x251C, 86011}, {0x251D, 87539}, {0x251E, 86713}, {0x251F, 83301}, {0x2520, 87403}, {0x2521, 83558}, {0x2522, 86964}, {0x2523, 84547}, {0x2524, 85974}, {0x2525, 87496}, {0x2526, 86634}, {0x2527, 83219}, {0x2528, 87360}, {0x2529, 83476}, {0x252A, 86885}, {0x252B, 84510}, {0x252C, 85349}, {0x252D, 84633}, {0x252E, 86097}, {0x252F, 83392}, {0x2530, 83135}, {0x2531, 86234}, {0x2532, 84770}, {0x2533, 83885}, {0x2534, 85803}, {0x2535, 84678}, {0x2536, 86142}, {0x2537, 86842}, {0x2538, 86591}, {0x2539, 86279}, {0x253A, 84815}, {0x253B, 84302}, {0x253C, 85931}, {0x253D, 84721}, {0x253E, 86185}, {0x253F, 87447}, {0x2540, 86543}, {0x2541, 83344}, {0x2542, 87311}, {0x2543, 84907}, {0x2544, 86371}, {0x2545, 84585}, {0x2546, 86049}, {0x2547, 83601}, {0x2548, 86794}, {0x2549, 86322}, {0x254A, 84858}, {0x254B, 84467}, {0x254C, 85243}, {0x254D, 83779}, {0x254E, 85285}, {0x254F, 83821}, {0x2550, 82721}, {0x2551, 82855}, {0x2552, 83737}, {0x2553, 83093}, {0x2554, 82686}, {0x2555, 83696}, {0x2556, 83052}, {0x2557, 82652}, {0x2558, 87129}, {0x2559, 86503}, {0x255A, 82822}, {0x255B, 87090}, {0x255C, 86464}, {0x255D, 82790}, {0x255E, 87679}, {0x255F, 87265}, {0x2560, 82966}, {0x2561, 87634}, {0x2562, 87220}, {0x2563, 82928}, {0x2564, 83649}, {0x2565, 83005}, {0x2566, 82612}, {0x2567, 87045}, {0x2568, 86419}, {0x2569, 82752}, {0x256A, 87583}, {0x256B, 87169}, {0x256C, 82884}, {0x256D, 84992}, {0x256E, 84955}, {0x256F, 85030}, {0x2570, 85065}, {0x2571, 85189}, {0x2572, 85135}, {0x2573, 85101}, {0x2574, 85485}, {0x2575, 85744}, {0x2576, 85637}, {0x2577, 85325}, {0x2578, 84021}, {0x2579, 84280}, {0x257A, 84173}, {0x257B, 83861}, {0x257C, 85509}, {0x257D, 85766}, {0x257E, 84045}, {0x257F, 84370}, {0x2580, 596799}, {0x2581, 433032}, {0x2582, 433055}, {0x2583, 433321}, {0x2584, 432868}, {0x2585, 432843}, {0x2586, 433347}, {0x2587, 433295}, {0x2588, 290690}, {0x2589, 417995}, {0x258A, 418404}, {0x258B, 417217}, {0x258C, 417275}, {0x258D, 418379}, {0x258E, 417406}, {0x258F, 417384}, {0x2590, 536382}, {0x2591, 423972}, {0x2592, 475133}, {0x2593, 233125}, {0x2594, 596994}, {0x2595, 536467}, {0x2596, 532107}, {0x2597, 532127}, {0x2598, 532148}, {0x2599, 532168}, {0x259A, 532219}, {0x259B, 532255}, {0x259C, 532306}, {0x259D, 532358}, {0x259E, 532379}, {0x259F, 532415}, {0x25A0, 80235}, {0x25A1, 613828}, {0x25A2, 614087}, {0x25A3, 613861}, {0x25A4, 558127}, {0x25A5, 558538}, {0x25A6, 558270}, {0x25A7, 558408}, {0x25A8, 558495}, {0x25A9, 558090}, {0x25AA, 80149}, {0x25AB, 613756}, {0x25AC, 79687}, {0x25AD, 613482}, {0x25AE, 80561}, {0x25AF, 614576}, {0x25B0, 79623}, {0x25B1, 613418}, {0x25B2, 80458}, {0x25B3, 614471}, {0x25B4, 80425}, {0x25B5, 614438}, {0x25B6, 79917}, {0x25B7, 613656}, {0x25B8, 79881}, {0x25B9, 613620}, {0x25BA, 79852}, {0x25BB, 613591}, {0x25BC, 78959}, {0x25BD, 612783}, {0x25BE, 78924}, {0x25BF, 612748}, {0x25C0, 79388}, {0x25C1, 613273}, {0x25C2, 79353}, {0x25C3, 613238}, {0x25C4, 79325}, {0x25C5, 613210}, {0x25C6, 78797}, {0x25C7, 612554}, {0x25C8, 612568}, {0x25C9, 290042}, {0x25CA, 433374}, {0x25CB, 612162}, {0x25CC, 245248}, {0x25CD, 132642}, {0x25CE, 97606}, {0x25CF, 78650}, {0x25D0, 132375}, {0x25D1, 132432}, {0x25D2, 132403}, {0x25D3, 132574}, {0x25D4, 132603}, {0x25D5, 132302}, {0x25D6, 417252}, {0x25D7, 536358}, {0x25D8, 359090}, {0x25D9, 359105}, {0x25DA, 596834}, {0x25DB, 432903}, {0x25DC, 596941}, {0x25DD, 597123}, {0x25DE, 433165}, {0x25DF, 432935}, {0x25E0, 596816}, {0x25E1, 432885}, {0x25E2, 79466}, {0x25E3, 79440}, {0x25E4, 80485}, {0x25E5, 80511}, {0x25E6, 612042}, {0x25E7, 558155}, {0x25E8, 558309}, {0x25E9, 558365}, {0x25EA, 558226}, {0x25EB, 614198}, {0x25EC, 614498}, {0x25ED, 596693}, {0x25EE, 596735}, {0x25EF, 378575}, {0x25F0, 614121}, {0x25F1, 613976}, {0x25F2, 614014}, {0x25F3, 614159}, {0x25F4, 612336}, {0x25F5, 612232}, {0x25F6, 612270}, {0x25F7, 612374}, {0x25F8, 596974}, {0x25F9, 597191}, {0x25FA, 433012}, {0x25FB, 613370}, {0x25FC, 79575}, {0x25FD, 613344}, {0x25FE, 79549}, {0x25FF, 433274}, {0x2600, 80279}, {0x2601, 177936}, {0x2602, 595930}, {0x2603, 554221}, {0x2604, 185823}, {0x2605, 80268}, {0x2606, 614240}, {0x2607, 424003}, {0x2608, 585639}, {0x2609, 562697}, {0x260A, 52983}, {0x260B, 234107}, {0x260C, 185970}, {0x260D, 516363}, {0x260E, 80299}, {0x260F, 614271}, {0x2610, 57739}, {0x2611, 57750}, {0x2612, 57772}, {0x2613, 543980}, {0x2614, 595958}, {0x2615, 350135}, {0x2616, 613718}, {0x2617, 80091}, {0x2618, 547962}, {0x2619, 535419}, {0x261A, 79209}, {0x261B, 79703}, {0x261C, 613184}, {0x261D, 614414}, {0x261E, 613534}, {0x261F, 612722}, {0x2620, 552121}, {0x2621, 128736}, {0x2622, 532697}, {0x2623, 78472}, {0x2624, 107751}, {0x2625, 6612}, {0x2626, 518166}, {0x2627, 132148}, {0x2628, 191022}, {0x2629, 191003}, {0x262A, 561483}, {0x262B, 289719}, {0x262C, 863}, {0x262D, 327947}, {0x262E, 523856}, {0x262F, 634970}, {0x2630, 594086}, {0x2631, 594105}, {0x2632, 594069}, {0x2633, 594143}, {0x2634, 594181}, {0x2635, 594163}, {0x2636, 594122}, {0x2637, 594051}, {0x2638, 612008}, {0x2639, 612993}, {0x263A, 613792}, {0x263B, 80185}, {0x263C, 614251}, {0x263D, 289935}, {0x263E, 378920}, {0x263F, 476679}, {0x2640, 289774}, {0x2641, 248575}, {0x2642, 437768}, {0x2643, 361607}, {0x2644, 545571}, {0x2645, 598284}, {0x2646, 503761}, {0x2647, 529650}, {0x2648, 50309}, {0x2649, 578076}, {0x264A, 293684}, {0x264B, 127715}, {0x264C, 421475}, {0x264D, 611043}, {0x264E, 423868}, {0x264F, 547478}, {0x2650, 543939}, {0x2651, 127728}, {0x2652, 9543}, {0x2653, 527530}, {0x2654, 612074}, {0x2655, 612127}, {0x2656, 612145}, {0x2657, 612055}, {0x2658, 612091}, {0x2659, 612110}, {0x265A, 78562}, {0x265B, 78615}, {0x265C, 78633}, {0x265D, 78543}, {0x265E, 78579}, {0x265F, 78598}, {0x2660, 80218}, {0x2661, 613013}, {0x2662, 612637}, {0x2663, 78759}, {0x2664, 613811}, {0x2665, 79077}, {0x2666, 78839}, {0x2667, 612413}, {0x2668, 350148}, {0x2669, 532511}, {0x266A, 275992}, {0x266B, 76229}, {0x266C, 76249}, {0x266D, 488574}, {0x266E, 488590}, {0x266F, 488609}, {0x2670, 611984}, {0x2671, 248668}, {0x2672, 596182}, {0x2673, 532936}, {0x2674, 532973}, {0x2675, 533010}, {0x2676, 533047}, {0x2677, 533084}, {0x2678, 533121}, {0x2679, 533158}, {0x267A, 532897}, {0x267B, 80358}, {0x267C, 532875}, {0x267D, 523704}, {0x267E, 524004}, {0x267F, 612024}, {0x2680, 239806}, {0x2681, 239817}, {0x2682, 239828}, {0x2683, 239839}, {0x2684, 239850}, {0x2685, 239861}, {0x2686, 612175}, {0x2687, 612309}, {0x2688, 78725}, {0x2689, 78692}, {0x268A, 487996}, {0x268B, 488014}, {0x268C, 240449}, {0x268D, 240568}, {0x268E, 240545}, {0x268F, 240473}, {0x2690, 612883}, {0x2691, 79027}, {0x2692, 327931}, {0x2693, 6508}, {0x2694, 191102}, {0x2695, 561446}, {0x2696, 547449}, {0x2697, 6252}, {0x2698, 290198}, {0x2699, 293634}, {0x269A, 561467}, {0x269B, 53129}, {0x269C, 290146}, {0x269D, 519013}, {0x269E, 585427}, {0x269F, 585399}, {0x26A0, 611653}, {0x26A1, 347925}, {0x26A2, 247216}, {0x26A3, 247236}, {0x26A4, 358845}, {0x26A5, 437747}, {0x26A6, 437820}, {0x26A7, 437778}, {0x26A8, 610815}, {0x26A9, 349946}, {0x26AA, 475192}, {0x26AB, 474773}, {0x26AC, 475146}, {0x26AD, 438537}, {0x26AE, 242015}, {0x26AF, 596209}, {0x26B0, 177957}, {0x26B1, 293608}, {0x26B2, 503769}, {0x26B3, 128836}, {0x26B4, 519089}, {0x26B5, 361602}, {0x26B6, 610948}, {0x26B7, 132182}, {0x26B8, 79595}, {0x26B9, 547885}, {0x26BA, 547824}, {0x26BB, 532613}, {0x26BC, 547860}, {0x26BD, 554250}, {0x26BE, 74984}, {0x26BF, 560291}, {0x26C0, 612832}, {0x26C1, 612812}, {0x26C2, 79008}, {0x26C3, 78988}, {0x26C4, 554229}, {0x26C5, 562701}, {0x26C6, 532726}, {0x26C7, 80204}, {0x26C8, 585616}, {0x26C9, 594897}, {0x26CA, 594709}, {0x26CB, 612613}, {0x26CC, 191117}, {0x26CD, 241859}, {0x26CE, 516353}, {0x26CF, 527433}, {0x26D0, 127738}, {0x26D1, 346138}, {0x26D2, 132764}, {0x26D3, 128842}, {0x26D4, 507126}, {0x26D5, 6386}, {0x26D6, 80327}, {0x26D7, 614350}, {0x26D8, 79187}, {0x26D9, 613127}, {0x26DA, 248488}, {0x26DB, 342698}, {0x26DC, 416918}, {0x26DD, 561262}, {0x26DE, 289663}, {0x26DF, 80315}, {0x26E0, 534884}, {0x26E1, 534908}, {0x26E2, 53060}, {0x26E3, 341215}, {0x26E4, 523919}, {0x26E5, 537476}, {0x26E6, 418811}, {0x26E7, 359207}, {0x26E8, 78775}, {0x26E9, 548920}, {0x26EA, 132218}, {0x26EB, 128665}, {0x26EC, 349810}, {0x26ED, 293657}, {0x26EE, 293639}, {0x26EF, 438500}, {0x26F0, 488091}, {0x26F1, 595939}, {0x26F2, 290337}, {0x26F3, 290124}, {0x26F4, 289826}, {0x26F5, 543951}, {0x26F6, 555716}, {0x26F7, 552109}, {0x26F8, 350393}, {0x26F9, 524155}, {0x26FA, 580304}, {0x26FB, 359349}, {0x26FC, 340767}, {0x26FD, 290680}, {0x26FE, 219649}, {0x26FF, 612894}, {0x2701, 596778}, {0x2702, 80076}, {0x2703, 432822}, {0x2704, 613686}, {0x2705, 613030}, {0x2706, 578186}, {0x2707, 578065}, {0x2708, 2354}, {0x2709, 276646}, {0x270A, 532774}, {0x270B, 532786}, {0x270C, 610969}, {0x270D, 614883}, {0x270E, 433146}, {0x270F, 523891}, {0x2710, 597104}, {0x2711, 613408}, {0x2712, 79613}, {0x2713, 130441}, {0x2714, 341129}, {0x2715, 488500}, {0x2716, 342019}, {0x2717, 57790}, {0x2718, 340881}, {0x2719, 518971}, {0x271A, 341690}, {0x271B, 516069}, {0x271C, 342065}, {0x271D, 394285}, {0x271E, 547915}, {0x271F, 518992}, {0x2720, 437842}, {0x2721, 561513}, {0x2722, 290453}, {0x2723, 290346}, {0x2724, 341655}, {0x2725, 290375}, {0x2726, 79053}, {0x2727, 612969}, {0x2728, 554800}, {0x2729, 561647}, {0x272A, 139470}, {0x272B, 516046}, {0x272C, 78519}, {0x272D, 518951}, {0x272E, 342089}, {0x272F, 527516}, {0x2730, 547942}, {0x2731, 340866}, {0x2732, 516025}, {0x2733, 275929}, {0x2734, 275839}, {0x2735, 275864}, {0x2736, 551994}, {0x2737, 275892}, {0x2738, 341503}, {0x2739, 594929}, {0x273A, 552067}, {0x273B, 578161}, {0x273C, 516087}, {0x273D, 342483}, {0x273E, 551956}, {0x273F, 79038}, {0x2740, 612941}, {0x2741, 275800}, {0x2742, 139235}, {0x2743, 342514}, {0x2744, 554211}, {0x2745, 592495}, {0x2746, 341146}, {0x2747, 554792}, {0x2748, 342429}, {0x2749, 57715}, {0x274A, 275951}, {0x274B, 341546}, {0x274C, 190992}, {0x274D, 547893}, {0x274E, 502291}, {0x274F, 433107}, {0x2750, 597017}, {0x2751, 433240}, {0x2752, 597157}, {0x2753, 79658}, {0x2754, 613453}, {0x2755, 612851}, {0x2756, 78811}, {0x2757, 341625}, {0x2758, 423984}, {0x2759, 475172}, {0x275A, 342643}, {0x275B, 342356}, {0x275C, 342313}, {0x275D, 341453}, {0x275E, 341410}, {0x275F, 341905}, {0x2760, 341858}, {0x2761, 219786}, {0x2762, 341593}, {0x2763, 341708}, {0x2764, 340994}, {0x2765, 541298}, {0x2766, 290185}, {0x2767, 541270}, {0x2768, 474915}, {0x2769, 475054}, {0x276A, 474793}, {0x276B, 474836}, {0x276C, 474948}, {0x276D, 475088}, {0x276E, 341808}, {0x276F, 342203}, {0x2770, 341765}, {0x2771, 342159}, {0x2772, 423874}, {0x2773, 423928}, {0x2774, 474880}, {0x2775, 475018}, {0x2776, 241132}, {0x2777, 241276}, {0x2778, 241239}, {0x2779, 241060}, {0x277A, 241024}, {0x277B, 241204}, {0x277C, 241167}, {0x277D, 240987}, {0x277E, 241096}, {0x277F, 241311}, {0x2780, 240760}, {0x2781, 240912}, {0x2782, 240873}, {0x2783, 240684}, {0x2784, 240646}, {0x2785, 240836}, {0x2786, 240797}, {0x2787, 240607}, {0x2788, 240722}, {0x2789, 240949}, {0x278A, 241536}, {0x278B, 241724}, {0x278C, 241676}, {0x278D, 241442}, {0x278E, 241395}, {0x278F, 241630}, {0x2790, 241582}, {0x2791, 241347}, {0x2792, 241489}, {0x2793, 241770}, {0x2794, 342733}, {0x2795, 342143}, {0x2796, 342002}, {0x2797, 341372}, {0x2798, 342406}, {0x2799, 342254}, {0x279A, 342042}, {0x279B, 248431}, {0x279C, 342277}, {0x279D, 593935}, {0x279E, 342554}, {0x279F, 233180}, {0x27A0, 341326}, {0x27A1, 80002}, {0x27A2, 585524}, {0x27A3, 585480}, {0x27A4, 80025}, {0x27A5, 340896}, {0x27A6, 340946}, {0x27A7, 561417}, {0x27A8, 341281}, {0x27A9, 537650}, {0x27AA, 418980}, {0x27AB, 54302}, {0x27AC, 290629}, {0x27AD, 341952}, {0x27AE, 342593}, {0x27AF, 508602}, {0x27B0, 219728}, {0x27B1, 508654}, {0x27B2, 133749}, {0x27B3, 614625}, {0x27B4, 80676}, {0x27B5, 80643}, {0x27B6, 80610}, {0x27B7, 341090}, {0x27B8, 341051}, {0x27B9, 341012}, {0x27BA, 578128}, {0x27BB, 342443}, {0x27BC, 611954}, {0x27BD, 342662}, {0x27BE, 516322}, {0x27BF, 245671}, {0x27C0, 585330}, {0x27C1, 614303}, {0x27C2, 524025}, {0x27C3, 516228}, {0x27C4, 516240}, {0x27C5, 417943}, {0x27C6, 536641}, {0x27C7, 516398}, {0x27C8, 534996}, {0x27C9, 564764}, {0x27CA, 610375}, {0x27CC, 432311}, {0x27CE, 561109}, {0x27CF, 561129}, {0x27D0, 612656}, {0x27D1, 6515}, {0x27D2, 276145}, {0x27D3, 433079}, {0x27D4, 596866}, {0x27D5, 417429}, {0x27D6, 536490}, {0x27D7, 290738}, {0x27D8, 378870}, {0x27D9, 378588}, {0x27DA, 416509}, {0x27DB, 416541}, {0x27DC, 417332}, {0x27DD, 432537}, {0x27DE, 432376}, {0x27DF, 596611}, {0x27E0, 433382}, {0x27E1, 612429}, {0x27E2, 612457}, {0x27E3, 612505}, {0x27E4, 613943}, {0x27E5, 614053}, {0x27E6, 456585}, {0x27E7, 458789}, {0x27E8, 456474}, {0x27E9, 458675}, {0x27EA, 456506}, {0x27EB, 458708}, {0x27EC, 456624}, {0x27ED, 458829}, {0x27EE, 456545}, {0x27EF, 458748}, {0x27F0, 597922}, {0x27F1, 248297}, {0x27F2, 6759}, {0x27F3, 177388}, {0x27F4, 535877}, {0x27F5, 432391}, {0x27F6, 432553}, {0x27F7, 432325}, {0x27F8, 432442}, {0x27F9, 432606}, {0x27FA, 432347}, {0x27FB, 432412}, {0x27FC, 432575}, {0x27FD, 432470}, {0x27FE, 432635}, {0x27FF, 432673}, {0x2800, 89890}, {0x2801, 89912}, {0x2802, 93304}, {0x2803, 89935}, {0x2804, 94968}, {0x2805, 91663}, {0x2806, 93327}, {0x2807, 89959}, {0x2808, 95784}, {0x2809, 92511}, {0x280A, 94175}, {0x280B, 90839}, {0x280C, 94991}, {0x280D, 91687}, {0x280E, 93351}, {0x280F, 89984}, {0x2810, 96184}, {0x2811, 92927}, {0x2812, 94591}, {0x2813, 91271}, {0x2814, 95407}, {0x2815, 92119}, {0x2816, 93783}, {0x2817, 90432}, {0x2818, 95807}, {0x2819, 92535}, {0x281A, 94199}, {0x281B, 90864}, {0x281C, 95015}, {0x281D, 91712}, {0x281E, 93376}, {0x281F, 90010}, {0x2820, 96380}, {0x2821, 93131}, {0x2822, 94795}, {0x2823, 91483}, {0x2824, 95611}, {0x2825, 92331}, {0x2826, 93995}, {0x2827, 90652}, {0x2828, 96011}, {0x2829, 92747}, {0x282A, 94411}, {0x282B, 91084}, {0x282C, 95227}, {0x282D, 91932}, {0x282E, 93596}, {0x282F, 90238}, {0x2830, 96207}, {0x2831, 92951}, {0x2832, 94615}, {0x2833, 91296}, {0x2834, 95431}, {0x2835, 92144}, {0x2836, 93808}, {0x2837, 90458}, {0x2838, 95831}, {0x2839, 92560}, {0x283A, 94224}, {0x283B, 90890}, {0x283C, 95040}, {0x283D, 91738}, {0x283E, 93402}, {0x283F, 90037}, {0x2840, 96476}, {0x2841, 93231}, {0x2842, 94895}, {0x2843, 91587}, {0x2844, 95711}, {0x2845, 92435}, {0x2846, 94099}, {0x2847, 90760}, {0x2848, 96111}, {0x2849, 92851}, {0x284A, 94515}, {0x284B, 91192}, {0x284C, 95331}, {0x284D, 92040}, {0x284E, 93704}, {0x284F, 90350}, {0x2850, 96307}, {0x2851, 93055}, {0x2852, 94719}, {0x2853, 91404}, {0x2854, 95535}, {0x2855, 92252}, {0x2856, 93916}, {0x2857, 90570}, {0x2858, 95935}, {0x2859, 92668}, {0x285A, 94332}, {0x285B, 91002}, {0x285C, 95148}, {0x285D, 91850}, {0x285E, 93514}, {0x285F, 90153}, {0x2860, 96403}, {0x2861, 93155}, {0x2862, 94819}, {0x2863, 91508}, {0x2864, 95635}, {0x2865, 92356}, {0x2866, 94020}, {0x2867, 90678}, {0x2868, 96035}, {0x2869, 92772}, {0x286A, 94436}, {0x286B, 91110}, {0x286C, 95252}, {0x286D, 91958}, {0x286E, 93622}, {0x286F, 90265}, {0x2870, 96231}, {0x2871, 92976}, {0x2872, 94640}, {0x2873, 91322}, {0x2874, 95456}, {0x2875, 92170}, {0x2876, 93834}, {0x2877, 90485}, {0x2878, 95856}, {0x2879, 92586}, {0x287A, 94250}, {0x287B, 90917}, {0x287C, 95066}, {0x287D, 91765}, {0x287E, 93429}, {0x287F, 90065}, {0x2880, 96523}, {0x2881, 93280}, {0x2882, 94944}, {0x2883, 91638}, {0x2884, 95760}, {0x2885, 92486}, {0x2886, 94150}, {0x2887, 90813}, {0x2888, 96160}, {0x2889, 92902}, {0x288A, 94566}, {0x288B, 91245}, {0x288C, 95382}, {0x288D, 92093}, {0x288E, 93757}, {0x288F, 90405}, {0x2890, 96356}, {0x2891, 93106}, {0x2892, 94770}, {0x2893, 91457}, {0x2894, 95586}, {0x2895, 92305}, {0x2896, 93969}, {0x2897, 90625}, {0x2898, 95986}, {0x2899, 92721}, {0x289A, 94385}, {0x289B, 91057}, {0x289C, 95201}, {0x289D, 91905}, {0x289E, 93569}, {0x289F, 90210}, {0x28A0, 96452}, {0x28A1, 93206}, {0x28A2, 94870}, {0x28A3, 91561}, {0x28A4, 95686}, {0x28A5, 92409}, {0x28A6, 94073}, {0x28A7, 90733}, {0x28A8, 96086}, {0x28A9, 92825}, {0x28AA, 94489}, {0x28AB, 91165}, {0x28AC, 95305}, {0x28AD, 92013}, {0x28AE, 93677}, {0x28AF, 90322}, {0x28B0, 96282}, {0x28B1, 93029}, {0x28B2, 94693}, {0x28B3, 91377}, {0x28B4, 95509}, {0x28B5, 92225}, {0x28B6, 93889}, {0x28B7, 90542}, {0x28B8, 95909}, {0x28B9, 92641}, {0x28BA, 94305}, {0x28BB, 90974}, {0x28BC, 95121}, {0x28BD, 91822}, {0x28BE, 93486}, {0x28BF, 90124}, {0x28C0, 96499}, {0x28C1, 93255}, {0x28C2, 94919}, {0x28C3, 91612}, {0x28C4, 95735}, {0x28C5, 92460}, {0x28C6, 94124}, {0x28C7, 90786}, {0x28C8, 96135}, {0x28C9, 92876}, {0x28CA, 94540}, {0x28CB, 91218}, {0x28CC, 95356}, {0x28CD, 92066}, {0x28CE, 93730}, {0x28CF, 90377}, {0x28D0, 96331}, {0x28D1, 93080}, {0x28D2, 94744}, {0x28D3, 91430}, {0x28D4, 95560}, {0x28D5, 92278}, {0x28D6, 93942}, {0x28D7, 90597}, {0x28D8, 95960}, {0x28D9, 92694}, {0x28DA, 94358}, {0x28DB, 91029}, {0x28DC, 95174}, {0x28DD, 91877}, {0x28DE, 93541}, {0x28DF, 90181}, {0x28E0, 96427}, {0x28E1, 93180}, {0x28E2, 94844}, {0x28E3, 91534}, {0x28E4, 95660}, {0x28E5, 92382}, {0x28E6, 94046}, {0x28E7, 90705}, {0x28E8, 96060}, {0x28E9, 92798}, {0x28EA, 94462}, {0x28EB, 91137}, {0x28EC, 95278}, {0x28ED, 91985}, {0x28EE, 93649}, {0x28EF, 90293}, {0x28F0, 96256}, {0x28F1, 93002}, {0x28F2, 94666}, {0x28F3, 91349}, {0x28F4, 95482}, {0x28F5, 92197}, {0x28F6, 93861}, {0x28F7, 90513}, {0x28F8, 95882}, {0x28F9, 92613}, {0x28FA, 94277}, {0x28FB, 90945}, {0x28FC, 95093}, {0x28FD, 91793}, {0x28FE, 93457}, {0x28FF, 90094}, {0x2900, 540058}, {0x2901, 539839}, {0x2902, 420223}, {0x2903, 538917}, {0x2904, 417824}, {0x2905, 539802}, {0x2906, 420156}, {0x2907, 538848}, {0x2908, 247706}, {0x2909, 597361}, {0x290A, 597946}, {0x290B, 248323}, {0x290C, 420295}, {0x290D, 538991}, {0x290E, 421033}, {0x290F, 539745}, {0x2910, 540107}, {0x2911, 538345}, {0x2912, 597307}, {0x2913, 247610}, {0x2914, 538622}, {0x2915, 538567}, {0x2916, 539895}, {0x2917, 539999}, {0x2918, 539933}, {0x2919, 420067}, {0x291A, 538778}, {0x291B, 420267}, {0x291C, 538962}, {0x291D, 419613}, {0x291E, 538272}, {0x291F, 419367}, {0x2920, 538068}, {0x2921, 507951}, {0x2922, 507374}, {0x2923, 508137}, {0x2924, 507547}, {0x2925, 554527}, {0x2926, 554679}, {0x2927, 508000}, {0x2928, 507423}, {0x2929, 554419}, {0x292A, 554641}, {0x292B, 540297}, {0x292C, 289621}, {0x292D, 554457}, {0x292E, 507504}, {0x292F, 289578}, {0x2930, 540339}, {0x2931, 507461}, {0x2932, 508038}, {0x2933, 611755}, {0x2934, 52903}, {0x2935, 52854}, {0x2936, 52757}, {0x2937, 52805}, {0x2938, 537686}, {0x2939, 419015}, {0x293A, 592916}, {0x293B, 82217}, {0x293C, 592982}, {0x293D, 592944}, {0x293E, 433199}, {0x293F, 432968}, {0x2940, 6639}, {0x2941, 177280}, {0x2942, 537959}, {0x2943, 419260}, {0x2944, 549014}, {0x2945, 538478}, {0x2946, 419775}, {0x2947, 538221}, {0x2948, 417591}, {0x2949, 597992}, {0x294A, 416769}, {0x294B, 416732}, {0x294C, 596389}, {0x294D, 596352}, {0x294E, 416806}, {0x294F, 596426}, {0x2950, 416693}, {0x2951, 596316}, {0x2952, 420833}, {0x2953, 539538}, {0x2954, 597824}, {0x2955, 248193}, {0x2956, 420529}, {0x2957, 539228}, {0x2958, 597709}, {0x2959, 248072}, {0x295A, 420793}, {0x295B, 539497}, {0x295C, 597783}, {0x295D, 248150}, {0x295E, 420487}, {0x295F, 539185}, {0x2960, 597669}, {0x2961, 248030}, {0x2962, 420607}, {0x2963, 597599}, {0x2964, 539425}, {0x2965, 247884}, {0x2966, 420724}, {0x2967, 420365}, {0x2968, 539308}, {0x2969, 539062}, {0x296A, 420677}, {0x296B, 420438}, {0x296C, 539377}, {0x296D, 539135}, {0x296E, 597527}, {0x296F, 247958}, {0x2970, 536214}, {0x2971, 276912}, {0x2972, 592580}, {0x2973, 419305}, {0x2974, 538004}, {0x2975, 537827}, {0x2976, 423062}, {0x2977, 419447}, {0x2978, 300530}, {0x2979, 561960}, {0x297A, 419481}, {0x297B, 564384}, {0x297C, 417202}, {0x297D, 536330}, {0x297E, 596563}, {0x297F, 247278}, {0x2980, 594492}, {0x2981, 635316}, {0x2982, 635332}, {0x2983, 418597}, {0x2984, 537254}, {0x2985, 418652}, {0x2986, 537311}, {0x2987, 635071}, {0x2988, 635201}, {0x2989, 635039}, {0x298A, 635168}, {0x298B, 418309}, {0x298C, 536993}, {0x298D, 418265}, {0x298E, 536900}, {0x298F, 418218}, {0x2990, 536948}, {0x2991, 416580}, {0x2992, 535653}, {0x2993, 416608}, {0x2994, 535846}, {0x2995, 245818}, {0x2996, 246137}, {0x2997, 416871}, {0x2998, 535968}, {0x2999, 245275}, {0x299A, 610884}, {0x299B, 474150}, {0x299C, 535753}, {0x299D, 474730}, {0x299E, 6547}, {0x299F, 826}, {0x29A0, 555001}, {0x29A1, 555030}, {0x29A2, 594696}, {0x29A3, 535159}, {0x29A4, 6567}, {0x29A5, 535174}, {0x29A6, 509113}, {0x29A7, 509086}, {0x29A8, 474651}, {0x29A9, 474585}, {0x29AA, 474246}, {0x29AB, 474178}, {0x29AC, 474518}, {0x29AD, 474383}, {0x29AE, 474449}, {0x29AF, 474315}, {0x29B0, 535294}, {0x29B1, 276474}, {0x29B2, 276530}, {0x29B3, 276497}, {0x29B4, 276442}, {0x29B5, 132348}, {0x29B6, 139428}, {0x29B7, 139274}, {0x29B8, 139346}, {0x29B9, 139291}, {0x29BA, 132232}, {0x29BB, 132499}, {0x29BC, 132668}, {0x29BD, 596238}, {0x29BE, 139449}, {0x29BF, 132738}, {0x29C0, 137817}, {0x29C1, 133071}, {0x29C2, 132461}, {0x29C3, 132526}, {0x29C4, 561232}, {0x29C5, 560134}, {0x29C6, 558602}, {0x29C7, 561289}, {0x29C8, 561322}, {0x29C9, 595180}, {0x29CA, 593857}, {0x29CB, 593912}, {0x29CC, 543925}, {0x29CD, 593881}, {0x29CE, 537138}, {0x29CF, 418485}, {0x29D0, 610269}, {0x29D1, 82555}, {0x29D2, 82583}, {0x29D3, 78506}, {0x29D4, 592756}, {0x29D5, 592783}, {0x29D6, 613092}, {0x29D7, 79133}, {0x29D8, 418735}, {0x29D9, 537397}, {0x29DA, 417177}, {0x29DB, 536304}, {0x29DC, 356051}, {0x29DD, 591152}, {0x29DE, 356121}, {0x29DF, 246502}, {0x29E0, 558060}, {0x29E1, 356071}, {0x29E2, 549174}, {0x29E3, 276980}, {0x29E4, 277013}, {0x29E5, 350416}, {0x29E6, 299788}, {0x29E7, 585258}, {0x29E8, 247420}, {0x29E9, 247464}, {0x29EA, 78858}, {0x29EB, 79493}, {0x29EC, 612203}, {0x29ED, 78663}, {0x29EE, 277421}, {0x29EF, 277342}, {0x29F0, 277394}, {0x29F1, 277315}, {0x29F2, 277368}, {0x29F3, 277289}, {0x29F4, 541368}, {0x29F5, 534971}, {0x29F6, 554322}, {0x29F7, 535029}, {0x29F8, 78443}, {0x29F9, 78423}, {0x29FA, 246047}, {0x29FB, 594387}, {0x29FC, 418872}, {0x29FD, 537539}, {0x29FE, 592811}, {0x29FF, 477185}, {0x2A00, 500366}, {0x2A01, 500393}, {0x2A02, 500421}, {0x2A03, 500646}, {0x2A04, 500676}, {0x2A05, 500534}, {0x2A06, 500569}, {0x2A07, 595199}, {0x2A08, 595224}, {0x2A09, 500613}, {0x2A0A, 483816}, {0x2A0B, 562673}, {0x2A0C, 532467}, {0x2A0D, 289869}, {0x2A0E, 358534}, {0x2A0F, 358487}, {0x2A10, 139500}, {0x2A11, 6793}, {0x2A12, 425307}, {0x2A13, 425358}, {0x2A14, 425267}, {0x2A15, 358454}, {0x2A16, 532524}, {0x2A17, 358589}, {0x2A18, 358651}, {0x2A19, 358562}, {0x2A1A, 358699}, {0x2A1B, 358629}, {0x2A1C, 358676}, {0x2A1D, 361597}, {0x2A1E, 378604}, {0x2A1F, 635232}, {0x2A20, 635262}, {0x2A21, 635287}, {0x2A22, 529517}, {0x2A23, 529453}, {0x2A24, 529580}, {0x2A25, 529492}, {0x2A26, 529607}, {0x2A27, 529551}, {0x2A28, 529423}, {0x2A29, 477043}, {0x2A2A, 477071}, {0x2A2B, 477097}, {0x2A2C, 477126}, {0x2A2D, 529340}, {0x2A2E, 529370}, {0x2A2F, 609109}, {0x2A30, 488431}, {0x2A31, 488466}, {0x2A32, 547786}, {0x2A33, 553750}, {0x2A34, 488318}, {0x2A35, 488358}, {0x2A36, 137849}, {0x2A37, 488281}, {0x2A38, 132990}, {0x2A39, 529401}, {0x2A3A, 477020}, {0x2A3B, 488399}, {0x2A3C, 358731}, {0x2A3D, 537783}, {0x2A3E, 635134}, {0x2A3F, 6444}, {0x2A40, 359012}, {0x2A41, 596141}, {0x2A42, 596163}, {0x2A43, 359064}, {0x2A44, 359034}, {0x2A45, 596119}, {0x2A46, 596059}, {0x2A47, 358938}, {0x2A48, 596024}, {0x2A49, 358903}, {0x2A4A, 596084}, {0x2A4B, 358963}, {0x2A4C, 177868}, {0x2A4D, 177650}, {0x2A4E, 246196}, {0x2A4F, 246223}, {0x2A50, 177893}, {0x2A51, 431881}, {0x2A52, 432107}, {0x2A53, 245855}, {0x2A54, 245874}, {0x2A55, 595123}, {0x2A56, 595152}, {0x2A57, 552385}, {0x2A58, 552367}, {0x2A59, 432072}, {0x2A5A, 432006}, {0x2A5B, 432228}, {0x2A5C, 431973}, {0x2A5D, 432196}, {0x2A5E, 431908}, {0x2A5F, 432035}, {0x2A60, 431940}, {0x2A61, 553688}, {0x2A62, 432133}, {0x2A63, 432164}, {0x2A64, 635005}, {0x2A65, 635101}, {0x2A66, 277092}, {0x2A67, 350450}, {0x2A68, 594220}, {0x2A69, 594270}, {0x2A6A, 592618}, {0x2A6B, 592648}, {0x2A6C, 549297}, {0x2A6D, 185931}, {0x2A6E, 277170}, {0x2A6F, 6347}, {0x2A70, 9449}, {0x2A71, 276884}, {0x2A72, 529312}, {0x2A73, 276947}, {0x2A74, 245652}, {0x2A75, 595014}, {0x2A76, 585299}, {0x2A77, 277119}, {0x2A78, 277220}, {0x2A79, 423785}, {0x2A7A, 301369}, {0x2A7B, 423833}, {0x2A7C, 301423}, {0x2A7D, 423574}, {0x2A7E, 301106}, {0x2A7F, 423700}, {0x2A80, 301240}, {0x2A81, 423604}, {0x2A82, 301139}, {0x2A83, 423649}, {0x2A84, 301187}, {0x2A85, 423474}, {0x2A86, 300997}, {0x2A87, 423269}, {0x2A88, 300747}, {0x2A89, 423239}, {0x2A8A, 300714}, {0x2A8B, 422956}, {0x2A8C, 300424}, {0x2A8D, 423137}, {0x2A8E, 300609}, {0x2A8F, 423094}, {0x2A90, 300566}, {0x2A91, 423009}, {0x2A92, 300477}, {0x2A93, 423170}, {0x2A94, 300645}, {0x2A95, 552224}, {0x2A96, 552142}, {0x2A97, 552254}, {0x2A98, 552175}, {0x2A99, 246561}, {0x2A9A, 246524}, {0x2A9B, 246640}, {0x2A9C, 246595}, {0x2A9D, 549343}, {0x2A9E, 549319}, {0x2A9F, 549255}, {0x2AA0, 549210}, {0x2AA1, 245963}, {0x2AA2, 245936}, {0x2AA3, 245987}, {0x2AA4, 301316}, {0x2AA5, 300789}, {0x2AA6, 423367}, {0x2AA7, 300884}, {0x2AA8, 423393}, {0x2AA9, 300913}, {0x2AAA, 553712}, {0x2AAB, 378884}, {0x2AAC, 553725}, {0x2AAD, 378896}, {0x2AAE, 277063}, {0x2AAF, 530034}, {0x2AB0, 562461}, {0x2AB1, 530073}, {0x2AB2, 562500}, {0x2AB3, 529944}, {0x2AB4, 562371}, {0x2AB5, 530006}, {0x2AB6, 562433}, {0x2AB7, 529913}, {0x2AB8, 562340}, {0x2AB9, 529971}, {0x2ABA, 562398}, {0x2ABB, 246059}, {0x2ABC, 246280}, {0x2ABD, 562249}, {0x2ABE, 564791}, {0x2ABF, 562303}, {0x2AC0, 564849}, {0x2AC1, 562265}, {0x2AC2, 564809}, {0x2AC3, 562184}, {0x2AC4, 564695}, {0x2AC5, 562074}, {0x2AC6, 564577}, {0x2AC7, 562131}, {0x2AC8, 564638}, {0x2AC9, 562042}, {0x2ACA, 564543}, {0x2ACB, 562102}, {0x2ACC, 564607}, {0x2ACD, 556587}, {0x2ACE, 557768}, {0x2ACF, 177768}, {0x2AD0, 177808}, {0x2AD1, 177782}, {0x2AD2, 177824}, {0x2AD3, 562010}, {0x2AD4, 564415}, {0x2AD5, 561990}, {0x2AD6, 564437}, {0x2AD7, 564508}, {0x2AD8, 564461}, {0x2AD9, 276116}, {0x2ADA, 527554}, {0x2ADB, 593832}, {0x2ADC, 290329}, {0x2ADD, 507309}, {0x2ADE, 548998}, {0x2ADF, 548953}, {0x2AE0, 549059}, {0x2AE1, 524039}, {0x2AE2, 610339}, {0x2AE3, 246425}, {0x2AE4, 610304}, {0x2AE5, 246340}, {0x2AE6, 432265}, {0x2AE7, 548969}, {0x2AE8, 549109}, {0x2AE9, 549073}, {0x2AEA, 245703}, {0x2AEB, 246325}, {0x2AEC, 246243}, {0x2AED, 535262}, {0x2AEE, 242199}, {0x2AEF, 610721}, {0x2AF0, 610753}, {0x2AF1, 247332}, {0x2AF2, 519183}, {0x2AF3, 519215}, {0x2AF4, 594456}, {0x2AF5, 594558}, {0x2AF6, 594198}, {0x2AF7, 594363}, {0x2AF8, 594336}, {0x2AF9, 246727}, {0x2AFA, 246682}, {0x2AFB, 594412}, {0x2AFC, 378753}, {0x2AFD, 246172}, {0x2AFE, 614534}, {0x2AFF, 500707}, {0x2B00, 507621}, {0x2B01, 508211}, {0x2B02, 554601}, {0x2B03, 554753}, {0x2B04, 417920}, {0x2B05, 420088}, {0x2B06, 597465}, {0x2B07, 247816}, {0x2B08, 507574}, {0x2B09, 508164}, {0x2B0A, 554554}, {0x2B0B, 554706}, {0x2B0C, 417741}, {0x2B0D, 596502}, {0x2B0E, 538670}, {0x2B0F, 538706}, {0x2B10, 419962}, {0x2B11, 419997}, {0x2B12, 558338}, {0x2B13, 558030}, {0x2B14, 558451}, {0x2B15, 558183}, {0x2B16, 239719}, {0x2B17, 239748}, {0x2B18, 239778}, {0x2B19, 239688}, {0x2B1A, 245330}, {0x2B1B, 79168}, {0x2B1C, 613108}, {0x2B1D, 80586}, {0x2B1E, 614601}, {0x2B1F, 79643}, {0x2B20, 613438}, {0x2B21, 613053}, {0x2B22, 79094}, {0x2B23, 349875}, {0x2B24, 79149}, {0x2B25, 79507}, {0x2B26, 613302}, {0x2B27, 79528}, {0x2B28, 613323}, {0x2B29, 80109}, {0x2B2A, 80129}, {0x2B2B, 613736}, {0x2B2C, 79108}, {0x2B2D, 613067}, {0x2B2E, 80538}, {0x2B2F, 614553}, {0x2B30, 416664}, {0x2B31, 585376}, {0x2B32, 416635}, {0x2B33, 432507}, {0x2B34, 421339}, {0x2B35, 421124}, {0x2B36, 421088}, {0x2B37, 421387}, {0x2B38, 419646}, {0x2B39, 419915}, {0x2B3A, 419861}, {0x2B3B, 421179}, {0x2B3C, 421281}, {0x2B3D, 421216}, {0x2B3E, 419512}, {0x2B3F, 611721}, {0x2B40, 276850}, {0x2B41, 535068}, {0x2B42, 419169}, {0x2B43, 538149}, {0x2B44, 538187}, {0x2B45, 420959}, {0x2B46, 539668}, {0x2B47, 535113}, {0x2B48, 537866}, {0x2B49, 592543}, {0x2B4A, 419131}, {0x2B4B, 419215}, {0x2B4C, 537913}, {0x2B50, 613390}, {0x2B51, 80168}, {0x2B52, 613775}, {0x2B53, 79822}, {0x2B54, 613561}, {0x2B55, 341746}, {0x2B56, 342115}, {0x2B57, 341183}, {0x2B58, 341170}, {0x2B59, 341259}, {0x2C00, 296766}, {0x2C01, 296830}, {0x2C02, 298043}, {0x2C03, 297054}, {0x2C04, 296927}, {0x2C05, 298167}, {0x2C06, 298290}, {0x2C07, 296959}, {0x2C08, 298257}, {0x2C09, 297272}, {0x2C0A, 297147}, {0x2C0B, 297119}, {0x2C0C, 296894}, {0x2C0D, 297337}, {0x2C0E, 297411}, {0x2C0F, 297445}, {0x2C10, 297479}, {0x2C11, 297511}, {0x2C12, 297600}, {0x2C13, 297633}, {0x2C14, 297760}, {0x2C15, 297980}, {0x2C16, 298013}, {0x2C17, 297022}, {0x2C18, 297088}, {0x2C19, 297541}, {0x2C1A, 297571}, {0x2C1B, 297695}, {0x2C1C, 297950}, {0x2C1D, 296861}, {0x2C1E, 297665}, {0x2C1F, 298136}, {0x2C20, 298105}, {0x2C21, 298074}, {0x2C22, 297874}, {0x2C23, 298228}, {0x2C24, 297792}, {0x2C25, 297828}, {0x2C26, 298199}, {0x2C27, 297228}, {0x2C28, 296796}, {0x2C29, 297186}, {0x2C2A, 296991}, {0x2C2B, 297303}, {0x2C2C, 297726}, {0x2C2D, 297911}, {0x2C2E, 297368}, {0x2C30, 298324}, {0x2C31, 298384}, {0x2C32, 299525}, {0x2C33, 298594}, {0x2C34, 298475}, {0x2C35, 299641}, {0x2C36, 299756}, {0x2C37, 298505}, {0x2C38, 299725}, {0x2C39, 298800}, {0x2C3A, 298681}, {0x2C3B, 298655}, {0x2C3C, 298444}, {0x2C3D, 298861}, {0x2C3E, 298931}, {0x2C3F, 298963}, {0x2C40, 298995}, {0x2C41, 299025}, {0x2C42, 299108}, {0x2C43, 299139}, {0x2C44, 299258}, {0x2C45, 299466}, {0x2C46, 299497}, {0x2C47, 298564}, {0x2C48, 298626}, {0x2C49, 299053}, {0x2C4A, 299081}, {0x2C4B, 299197}, {0x2C4C, 299438}, {0x2C4D, 298413}, {0x2C4E, 299169}, {0x2C4F, 299612}, {0x2C50, 299583}, {0x2C51, 299554}, {0x2C52, 299366}, {0x2C53, 299698}, {0x2C54, 299288}, {0x2C55, 299322}, {0x2C56, 299671}, {0x2C57, 298758}, {0x2C58, 298352}, {0x2C59, 298718}, {0x2C5A, 298535}, {0x2C5B, 298829}, {0x2C5C, 299226}, {0x2C5D, 299401}, {0x2C5E, 298890}, {0x2C60, 385864}, {0x2C61, 404481}, {0x2C62, 386021}, {0x2C63, 388986}, {0x2C64, 389678}, {0x2C65, 397651}, {0x2C66, 410920}, {0x2C67, 383858}, {0x2C68, 402254}, {0x2C69, 385248}, {0x2C6A, 403773}, {0x2C6B, 393973}, {0x2C6C, 415327}, {0x2C6D, 380423}, {0x2C6E, 386297}, {0x2C6F, 391151}, {0x2C70, 391181}, {0x2C71, 414109}, {0x2C72, 393206}, {0x2C73, 414486}, {0x2C74, 413930}, {0x2C75, 384045}, {0x2C76, 402499}, {0x2C77, 411254}, {0x2C78, 400746}, {0x2C79, 412370}, {0x2C7A, 407320}, {0x2C7B, 395952}, {0x2C7C, 416040}, {0x2C7D, 477988}, {0x2C7E, 390290}, {0x2C7F, 394194}, {0x2C80, 186347}, {0x2C81, 188500}, {0x2C82, 188111}, {0x2C83, 190152}, {0x2C84, 186849}, {0x2C85, 188972}, {0x2C86, 186572}, {0x2C87, 188713}, {0x2C88, 186772}, {0x2C89, 188901}, {0x2C8A, 188005}, {0x2C8B, 190054}, {0x2C8C, 188138}, {0x2C8D, 190177}, {0x2C8E, 186906}, {0x2C8F, 189025}, {0x2C90, 188057}, {0x2C91, 190102}, {0x2C92, 186960}, {0x2C93, 189075}, {0x2C94, 186988}, {0x2C95, 189101}, {0x2C96, 187128}, {0x2C97, 189231}, {0x2C98, 187156}, {0x2C99, 189257}, {0x2C9A, 187181}, {0x2C9B, 189280}, {0x2C9C, 187068}, {0x2C9D, 189175}, {0x2C9E, 187206}, {0x2C9F, 189303}, {0x2CA0, 187819}, {0x2CA1, 189882}, {0x2CA2, 187870}, {0x2CA3, 189929}, {0x2CA4, 187978}, {0x2CA5, 190029}, {0x2CA6, 188031}, {0x2CA7, 190078}, {0x2CA8, 188086}, {0x2CA9, 190129}, {0x2CAA, 186824}, {0x2CAB, 188949}, {0x2CAC, 187042}, {0x2CAD, 189151}, {0x2CAE, 187844}, {0x2CAF, 189905}, {0x2CB0, 187793}, {0x2CB1, 189858}, {0x2CB2, 186626}, {0x2CB3, 188763}, {0x2CB4, 187230}, {0x2CB5, 189325}, {0x2CB6, 186409}, {0x2CB7, 188558}, {0x2CB8, 186700}, {0x2CB9, 188833}, {0x2CBA, 186737}, {0x2CBB, 188868}, {0x2CBC, 186492}, {0x2CBD, 188637}, {0x2CBE, 187529}, {0x2CBF, 189608}, {0x2CC0, 187895}, {0x2CC1, 189952}, {0x2CC2, 186374}, {0x2CC3, 188525}, {0x2CC4, 187566}, {0x2CC5, 189643}, {0x2CC6, 187304}, {0x2CC7, 189395}, {0x2CC8, 186311}, {0x2CC9, 188466}, {0x2CCA, 186663}, {0x2CCB, 188798}, {0x2CCC, 187491}, {0x2CCD, 189572}, {0x2CCE, 187381}, {0x2CCF, 189468}, {0x2CD0, 187094}, {0x2CD1, 189199}, {0x2CD2, 187454}, {0x2CD3, 189537}, {0x2CD4, 187417}, {0x2CD5, 189502}, {0x2CD6, 187341}, {0x2CD7, 189430}, {0x2CD8, 187267}, {0x2CD9, 189360}, {0x2CDA, 187604}, {0x2CDB, 189679}, {0x2CDC, 187717}, {0x2CDD, 189786}, {0x2CDE, 187643}, {0x2CDF, 189716}, {0x2CE0, 187680}, {0x2CE1, 189751}, {0x2CE2, 187756}, {0x2CE3, 189823}, {0x2CE4, 190202}, {0x2CE5, 190241}, {0x2CE6, 190261}, {0x2CE7, 190306}, {0x2CE8, 190328}, {0x2CE9, 190220}, {0x2CEA, 190281}, {0x2CEB, 186531}, {0x2CEC, 188674}, {0x2CED, 186449}, {0x2CEE, 188596}, {0x2CEF, 188165}, {0x2CF0, 188191}, {0x2CF1, 188223}, {0x2CF9, 188365}, {0x2CFA, 188326}, {0x2CFB, 188393}, {0x2CFC, 188434}, {0x2CFD, 188255}, {0x2CFE, 188280}, {0x2CFF, 188297}, {0x2D00, 295725}, {0x2D01, 295750}, {0x2D02, 295933}, {0x2D03, 295882}, {0x2D04, 295908}, {0x2D05, 296584}, {0x2D06, 296661}, {0x2D07, 296507}, {0x2D08, 296115}, {0x2D09, 296193}, {0x2D0A, 296246}, {0x2D0B, 296272}, {0x2D0C, 296298}, {0x2D0D, 296324}, {0x2D0E, 296349}, {0x2D0F, 296687}, {0x2D10, 296428}, {0x2D11, 296454}, {0x2D12, 296533}, {0x2D13, 296559}, {0x2D14, 296375}, {0x2D15, 296219}, {0x2D16, 295959}, {0x2D17, 296402}, {0x2D18, 296480}, {0x2D19, 295829}, {0x2D1A, 295776}, {0x2D1B, 296167}, {0x2D1C, 295856}, {0x2D1D, 295802}, {0x2D1E, 296635}, {0x2D1F, 296140}, {0x2D20, 295986}, {0x2D21, 296038}, {0x2D22, 296063}, {0x2D23, 296610}, {0x2D24, 296012}, {0x2D25, 296089}, {0x2D30, 591573}, {0x2D31, 591612}, {0x2D32, 591632}, {0x2D33, 591778}, {0x2D34, 591819}, {0x2D35, 591286}, {0x2D36, 591882}, {0x2D37, 591674}, {0x2D38, 591737}, {0x2D39, 591694}, {0x2D3A, 591715}, {0x2D3B, 592352}, {0x2D3C, 591758}, {0x2D3D, 591902}, {0x2D3E, 591435}, {0x2D3F, 591943}, {0x2D40, 591841}, {0x2D41, 591251}, {0x2D42, 591408}, {0x2D43, 591861}, {0x2D44, 591592}, {0x2D45, 591922}, {0x2D46, 591462}, {0x2D47, 592045}, {0x2D48, 591518}, {0x2D49, 592372}, {0x2D4A, 592310}, {0x2D4B, 591196}, {0x2D4C, 591545}, {0x2D4D, 591965}, {0x2D4E, 591985}, {0x2D4F, 592005}, {0x2D50, 591380}, {0x2D51, 591490}, {0x2D52, 592025}, {0x2D53, 592391}, {0x2D54, 592065}, {0x2D55, 592085}, {0x2D56, 591798}, {0x2D57, 591352}, {0x2D58, 591225}, {0x2D59, 592106}, {0x2D5A, 592147}, {0x2D5B, 592126}, {0x2D5C, 592168}, {0x2D5D, 592188}, {0x2D5E, 591653}, {0x2D5F, 592209}, {0x2D60, 592230}, {0x2D61, 592250}, {0x2D62, 592270}, {0x2D63, 592290}, {0x2D64, 591321}, {0x2D65, 592331}, {0x2D6F, 592410}, {0x2D70, 592454}, {0x2D7F, 591170}, {0x2D80, 282778}, {0x2D81, 282971}, {0x2D82, 285041}, {0x2D83, 285586}, {0x2D84, 285476}, {0x2D85, 278482}, {0x2D86, 286316}, {0x2D87, 279433}, {0x2D88, 283253}, {0x2D89, 283452}, {0x2D8A, 280977}, {0x2D8B, 288138}, {0x2D8C, 279968}, {0x2D8D, 279815}, {0x2D8E, 281873}, {0x2D8F, 286206}, {0x2D90, 279323}, {0x2D91, 283959}, {0x2D92, 284069}, {0x2D93, 280669}, {0x2D94, 280763}, {0x2D95, 280739}, {0x2D96, 280716}, {0x2DA0, 285608}, {0x2DA1, 285742}, {0x2DA2, 285698}, {0x2DA3, 285630}, {0x2DA4, 285675}, {0x2DA5, 285653}, {0x2DA6, 285720}, {0x2DA8, 278657}, {0x2DA9, 279124}, {0x2DAA, 279080}, {0x2DAB, 278679}, {0x2DAC, 278724}, {0x2DAD, 278702}, {0x2DAE, 279102}, {0x2DB0, 288203}, {0x2DB1, 288337}, {0x2DB2, 288293}, {0x2DB3, 288225}, {0x2DB4, 288270}, {0x2DB5, 288248}, {0x2DB6, 288315}, {0x2DB8, 278747}, {0x2DB9, 279057}, {0x2DBA, 279011}, {0x2DBB, 278770}, {0x2DBC, 278817}, {0x2DBD, 278794}, {0x2DBE, 279034}, {0x2DC0, 284757}, {0x2DC1, 284891}, {0x2DC2, 284847}, {0x2DC3, 284779}, {0x2DC4, 284824}, {0x2DC5, 284802}, {0x2DC6, 284869}, {0x2DC8, 282494}, {0x2DC9, 282628}, {0x2DCA, 282584}, {0x2DCB, 282516}, {0x2DCC, 282561}, {0x2DCD, 282539}, {0x2DCE, 282606}, {0x2DD0, 287504}, {0x2DD1, 287638}, {0x2DD2, 287594}, {0x2DD3, 287526}, {0x2DD4, 287571}, {0x2DD5, 287549}, {0x2DD6, 287616}, {0x2DD8, 281239}, {0x2DD9, 281373}, {0x2DDA, 281329}, {0x2DDB, 281261}, {0x2DDC, 281306}, {0x2DDD, 281284}, {0x2DDE, 281351}, {0x2DE0, 178935}, {0x2DE1, 179748}, {0x2DE2, 179297}, {0x2DE3, 179028}, {0x2DE4, 179865}, {0x2DE5, 179836}, {0x2DE6, 179465}, {0x2DE7, 179089}, {0x2DE8, 179118}, {0x2DE9, 179147}, {0x2DEA, 179570}, {0x2DEB, 179598}, {0x2DEC, 179176}, {0x2DED, 179205}, {0x2DEE, 179689}, {0x2DEF, 179327}, {0x2DF0, 179718}, {0x2DF1, 178998}, {0x2DF2, 179627}, {0x2DF3, 179657}, {0x2DF4, 179266}, {0x2DF5, 179234}, {0x2DF6, 178907}, {0x2DF7, 179356}, {0x2DF8, 179057}, {0x2DF9, 179531}, {0x2DFA, 179777}, {0x2DFB, 179807}, {0x2DFC, 179385}, {0x2DFD, 179494}, {0x2DFE, 178964}, {0x2DFF, 179422}, {0x2E00, 535721}, {0x2E01, 535682}, {0x2E02, 418343}, {0x2E03, 537028}, {0x2E04, 417067}, {0x2E05, 536153}, {0x2E06, 532798}, {0x2E07, 532739}, {0x2E08, 245344}, {0x2E09, 418458}, {0x2E0A, 537095}, {0x2E0B, 532826}, {0x2E0C, 417545}, {0x2E0D, 536611}, {0x2E0E, 248686}, {0x2E0F, 519159}, {0x2E10, 290310}, {0x2E11, 535313}, {0x2E12, 350352}, {0x2E13, 245288}, {0x2E14, 247509}, {0x2E15, 597212}, {0x2E16, 245302}, {0x2E17, 246025}, {0x2E18, 359152}, {0x2E19, 519096}, {0x2E1A, 350299}, {0x2E1B, 592722}, {0x2E1C, 417291}, {0x2E1D, 536399}, {0x2E1E, 592680}, {0x2E1F, 592701}, {0x2E20, 418519}, {0x2E21, 537173}, {0x2E22, 593091}, {0x2E23, 593161}, {0x2E24, 82326}, {0x2E25, 82408}, {0x2E26, 418020}, {0x2E27, 536695}, {0x2E28, 417126}, {0x2E29, 536251}, {0x2E2A, 595078}, {0x2E2B, 515972}, {0x2E2C, 560165}, {0x2E2D, 290089}, {0x2E2E, 535396}, {0x2E2F, 610846}, {0x2E30, 540286}, {0x2E31, 614819}, {0x2E80, 175453}, {0x2E81, 174378}, {0x2E82, 175489}, {0x2E83, 175537}, {0x2E84, 175512}, {0x2E85, 175385}, {0x2E86, 173586}, {0x2E87, 175917}, {0x2E88, 174940}, {0x2E89, 174962}, {0x2E8A, 174450}, {0x2E8B, 175472}, {0x2E8C, 175749}, {0x2E8D, 175771}, {0x2E8E, 175006}, {0x2E8F, 175050}, {0x2E90, 175027}, {0x2E91, 174984}, {0x2E92, 175793}, {0x2E93, 175935}, {0x2E94, 175811}, {0x2E95, 175833}, {0x2E96, 174737}, {0x2E97, 174759}, {0x2E98, 174703}, {0x2E99, 175437}, {0x2E9B, 174322}, {0x2E9C, 175901}, {0x2E9D, 175147}, {0x2E9E, 174432}, {0x2E9F, 175183}, {0x2EA0, 174357}, {0x2EA1, 176033}, {0x2EA2, 176055}, {0x2EA3, 174583}, {0x2EA4, 175345}, {0x2EA5, 175365}, {0x2EA6, 175595}, {0x2EA7, 174416}, {0x2EA8, 174473}, {0x2EA9, 174923}, {0x2EAA, 173543}, {0x2EAB, 174567}, {0x2EAC, 175855}, {0x2EAD, 175878}, {0x2EAE, 173507}, {0x2EAF, 175578}, {0x2EB0, 174127}, {0x2EB1, 175267}, {0x2EB2, 175309}, {0x2EB3, 175287}, {0x2EB4, 175246}, {0x2EB5, 175130}, {0x2EB6, 175560}, {0x2EB7, 175421}, {0x2EB8, 174551}, {0x2EB9, 175329}, {0x2EBA, 173602}, {0x2EBB, 173624}, {0x2EBC, 175113}, {0x2EBD, 175164}, {0x2EBE, 174635}, {0x2EBF, 174681}, {0x2EC0, 174657}, {0x2EC1, 175954}, {0x2EC2, 174396}, {0x2EC3, 176077}, {0x2EC4, 176098}, {0x2EC5, 174067}, {0x2EC6, 175634}, {0x2EC7, 174781}, {0x2EC8, 174157}, {0x2EC9, 174096}, {0x2ECA, 174600}, {0x2ECB, 173676}, {0x2ECC, 175662}, {0x2ECD, 175991}, {0x2ECE, 176012}, {0x2ECF, 174340}, {0x2ED0, 173916}, {0x2ED1, 175071}, {0x2ED2, 175092}, {0x2ED3, 174007}, {0x2ED4, 173886}, {0x2ED5, 175202}, {0x2ED6, 175224}, {0x2ED7, 175404}, {0x2ED8, 173526}, {0x2ED9, 174189}, {0x2EDA, 173977}, {0x2EDB, 174292}, {0x2EDC, 173827}, {0x2EDD, 174489}, {0x2EDE, 174531}, {0x2EDF, 174509}, {0x2EE0, 173738}, {0x2EE1, 174720}, {0x2EE2, 173946}, {0x2EE3, 173569}, {0x2EE4, 174617}, {0x2EE5, 173797}, {0x2EE6, 173646}, {0x2EE7, 174037}, {0x2EE8, 175690}, {0x2EE9, 175719}, {0x2EEA, 173856}, {0x2EEB, 174830}, {0x2EEC, 173767}, {0x2EED, 174860}, {0x2EEE, 174229}, {0x2EEF, 174798}, {0x2EF0, 173706}, {0x2EF1, 175972}, {0x2EF2, 174891}, {0x2EF3, 174260}, {0x2F00, 365533}, {0x2F01, 365152}, {0x2F02, 363788}, {0x2F03, 366300}, {0x2F04, 366051}, {0x2F05, 364808}, {0x2F06, 367004}, {0x2F07, 365113}, {0x2F08, 365219}, {0x2F09, 365093}, {0x2F0A, 364102}, {0x2F0B, 364030}, {0x2F0C, 363886}, {0x2F0D, 363551}, {0x2F0E, 364869}, {0x2F0F, 366723}, {0x2F10, 365575}, {0x2F11, 364969}, {0x2F12, 365660}, {0x2F13, 367348}, {0x2F14, 366491}, {0x2F15, 365825}, {0x2F16, 364776}, {0x2F17, 366794}, {0x2F18, 363701}, {0x2F19, 366031}, {0x2F1A, 363441}, {0x2F1B, 365681}, {0x2F1C, 362833}, {0x2F1D, 365435}, {0x2F1E, 364077}, {0x2F1F, 363990}, {0x2F20, 365986}, {0x2F21, 364516}, {0x2F22, 364534}, {0x2F23, 364143}, {0x2F24, 362999}, {0x2F25, 367307}, {0x2F26, 363360}, {0x2F27, 365876}, {0x2F28, 364888}, {0x2F29, 366363}, {0x2F2A, 365010}, {0x2F2B, 363529}, {0x2F2C, 366512}, {0x2F2D, 365411}, {0x2F2E, 365855}, {0x2F2F, 367328}, {0x2F30, 365552}, {0x2F31, 366960}, {0x2F32, 363952}, {0x2F33, 366208}, {0x2F34, 363807}, {0x2F35, 365192}, {0x2F36, 367023}, {0x2F37, 366154}, {0x2F38, 363211}, {0x2F39, 366384}, {0x2F3A, 363252}, {0x2F3B, 366598}, {0x2F3C, 364735}, {0x2F3D, 364641}, {0x2F3E, 363768}, {0x2F3F, 364695}, {0x2F40, 363230}, {0x2F41, 365748}, {0x2F42, 366009}, {0x2F43, 363632}, {0x2F44, 362916}, {0x2F45, 366534}, {0x2F46, 365495}, {0x2F47, 366683}, {0x2F48, 365967}, {0x2F49, 365325}, {0x2F4A, 366918}, {0x2F4B, 364990}, {0x2F4C, 366639}, {0x2F4D, 363591}, {0x2F4E, 367183}, {0x2F4F, 363727}, {0x2F50, 363506}, {0x2F51, 364456}, {0x2F52, 363401}, {0x2F53, 366577}, {0x2F54, 367162}, {0x2F55, 364312}, {0x2F56, 363421}, {0x2F57, 364225}, {0x2F58, 363862}, {0x2F59, 364664}, {0x2F5A, 366342}, {0x2F5B, 364205}, {0x2F5C, 363572}, {0x2F5D, 363749}, {0x2F5E, 365704}, {0x2F5F, 364930}, {0x2F60, 365258}, {0x2F61, 366834}, {0x2F62, 366702}, {0x2F63, 365132}, {0x2F64, 367048}, {0x2F65, 364270}, {0x2F66, 363162}, {0x2F67, 366236}, {0x2F68, 363835}, {0x2F69, 367246}, {0x2F6A, 366280}, {0x2F6B, 363654}, {0x2F6C, 364166}, {0x2F6D, 366426}, {0x2F6E, 362895}, {0x2F6F, 366618}, {0x2F70, 366469}, {0x2F71, 366897}, {0x2F72, 364579}, {0x2F73, 363340}, {0x2F74, 366556}, {0x2F75, 362957}, {0x2F76, 365805}, {0x2F77, 366260}, {0x2F78, 364950}, {0x2F79, 365456}, {0x2F7A, 366112}, {0x2F7B, 364247}, {0x2F7C, 365514}, {0x2F7D, 362854}, {0x2F7E, 365640}, {0x2F7F, 363971}, {0x2F80, 363275}, {0x2F81, 365238}, {0x2F82, 365301}, {0x2F83, 366092}, {0x2F84, 362873}, {0x2F85, 365368}, {0x2F86, 366854}, {0x2F87, 365599}, {0x2F88, 363122}, {0x2F89, 366659}, {0x2F8A, 363485}, {0x2F8B, 364600}, {0x2F8C, 366813}, {0x2F8D, 364908}, {0x2F8E, 363081}, {0x2F8F, 367132}, {0x2F90, 363462}, {0x2F91, 367205}, {0x2F92, 366073}, {0x2F93, 364828}, {0x2F94, 366447}, {0x2F95, 367067}, {0x2F96, 362979}, {0x2F97, 365621}, {0x2F98, 362935}, {0x2F99, 366133}, {0x2F9A, 365786}, {0x2F9B, 365896}, {0x2F9C, 364392}, {0x2F9D, 363142}, {0x2F9E, 363296}, {0x2F9F, 363038}, {0x2FA0, 365345}, {0x2FA1, 367112}, {0x2FA2, 363381}, {0x2FA3, 367287}, {0x2FA4, 363674}, {0x2FA5, 367089}, {0x2FA6, 364559}, {0x2FA7, 365172}, {0x2FA8, 364475}, {0x2FA9, 365390}, {0x2FAA, 366321}, {0x2FAB, 366175}, {0x2FAC, 365728}, {0x2FAD, 363102}, {0x2FAE, 367368}, {0x2FAF, 364185}, {0x2FB0, 365050}, {0x2FB1, 366764}, {0x2FB2, 365073}, {0x2FB3, 366405}, {0x2FB4, 365030}, {0x2FB5, 367267}, {0x2FB6, 364373}, {0x2FB7, 364011}, {0x2FB8, 364715}, {0x2FB9, 364412}, {0x2FBA, 364848}, {0x2FBB, 363191}, {0x2FBC, 366744}, {0x2FBD, 364621}, {0x2FBE, 364291}, {0x2FBF, 365915}, {0x2FC0, 363316}, {0x2FC1, 364495}, {0x2FC2, 364332}, {0x2FC3, 363018}, {0x2FC4, 365947}, {0x2FC5, 363612}, {0x2FC6, 367225}, {0x2FC7, 364756}, {0x2FC8, 367389}, {0x2FC9, 365279}, {0x2FCA, 363060}, {0x2FCB, 364051}, {0x2FCC, 364436}, {0x2FCD, 366938}, {0x2FCE, 363932}, {0x2FCF, 365767}, {0x2FD0, 365475}, {0x2FD1, 364123}, {0x2FD2, 366876}, {0x2FD3, 363910}, {0x2FD4, 366982}, {0x2FD5, 364352}, {0x2FF0, 351310}, {0x2FF1, 351094}, {0x2FF2, 351251}, {0x2FF3, 351143}, {0x2FF4, 351203}, {0x2FF5, 351401}, {0x2FF6, 351455}, {0x2FF7, 351509}, {0x2FF8, 351621}, {0x2FF9, 351680}, {0x2FFA, 351562}, {0x2FFB, 351358}, {0x3000, 351929}, {0x3001, 351044}, {0x3002, 351771}, {0x3003, 241952}, {0x3004, 359417}, {0x3005, 351821}, {0x3006, 351019}, {0x3007, 351876}, {0x3008, 416561}, {0x3009, 535633}, {0x300A, 417100}, {0x300B, 536187}, {0x300C, 416936}, {0x300D, 536017}, {0x300E, 418571}, {0x300F, 537227}, {0x3010, 416841}, {0x3011, 535937}, {0x3012, 529775}, {0x3013, 296732}, {0x3014, 418430}, {0x3015, 537066}, {0x3016, 418622}, {0x3017, 537280}, {0x3018, 418701}, {0x3019, 537362}, {0x301A, 418675}, {0x301B, 537335}, {0x301C, 611790}, {0x301D, 535225}, {0x301E, 246088}, {0x301F, 432781}, {0x3020, 529787}, {0x3021, 340148}, {0x3022, 340305}, {0x3023, 340258}, {0x3024, 340104}, {0x3025, 340082}, {0x3026, 340192}, {0x3027, 340169}, {0x3028, 340059}, {0x3029, 340126}, {0x302A, 351848}, {0x302B, 351900}, {0x302C, 351062}, {0x302D, 351740}, {0x302E, 340031}, {0x302F, 331582}, {0x3030, 611817}, {0x3031, 610484}, {0x3032, 610584}, {0x3033, 610547}, {0x3034, 610628}, {0x3035, 610510}, {0x3036, 139326}, {0x3037, 351947}, {0x3038, 340213}, {0x3039, 340281}, {0x303A, 340234}, {0x303B, 610448}, {0x303C, 438581}, {0x303D, 523661}, {0x303E, 355017}, {0x303F, 351793}, {0x3041, 349086}, {0x3042, 348057}, {0x3043, 349134}, {0x3044, 348500}, {0x3045, 349257}, {0x3046, 349514}, {0x3047, 349110}, {0x3048, 348292}, {0x3049, 349208}, {0x304A, 348821}, {0x304B, 348518}, {0x304C, 348310}, {0x304D, 348556}, {0x304E, 348348}, {0x304F, 348594}, {0x3050, 348386}, {0x3051, 348537}, {0x3052, 348329}, {0x3053, 348575}, {0x3054, 348367}, {0x3055, 349029}, {0x3056, 349684}, {0x3057, 349067}, {0x3058, 349722}, {0x3059, 349400}, {0x305A, 349760}, {0x305B, 349048}, {0x305C, 349703}, {0x305D, 349381}, {0x305E, 349741}, {0x305F, 349419}, {0x3060, 348197}, {0x3061, 349457}, {0x3062, 348235}, {0x3063, 349232}, {0x3064, 349495}, {0x3065, 348273}, {0x3066, 349438}, {0x3067, 348216}, {0x3068, 349476}, {0x3069, 348254}, {0x306A, 348726}, {0x306B, 348764}, {0x306C, 348802}, {0x306D, 348745}, {0x306E, 348783}, {0x306F, 348405}, {0x3070, 348102}, {0x3071, 348839}, {0x3072, 348443}, {0x3073, 348140}, {0x3074, 348877}, {0x3075, 348481}, {0x3076, 348178}, {0x3077, 348915}, {0x3078, 348424}, {0x3079, 348121}, {0x307A, 348858}, {0x307B, 348462}, {0x307C, 348159}, {0x307D, 348896}, {0x307E, 348613}, {0x307F, 348651}, {0x3080, 348689}, {0x3081, 348632}, {0x3082, 348670}, {0x3083, 349306}, {0x3084, 349627}, {0x3085, 349356}, {0x3086, 349665}, {0x3087, 349331}, {0x3088, 349646}, {0x3089, 348934}, {0x308A, 348972}, {0x308B, 349010}, {0x308C, 348953}, {0x308D, 348991}, {0x308E, 349281}, {0x308F, 349551}, {0x3090, 349589}, {0x3091, 349570}, {0x3092, 349608}, {0x3093, 348708}, {0x3094, 349532}, {0x3095, 349158}, {0x3096, 349183}, {0x3099, 182460}, {0x309A, 182409}, {0x309B, 371542}, {0x309C, 371501}, {0x309D, 348033}, {0x309E, 349779}, {0x309F, 348011}, {0x30A0, 371430}, {0x30A1, 370210}, {0x30A2, 369182}, {0x30A3, 370383}, {0x30A4, 369624}, {0x30A5, 370781}, {0x30A6, 371038}, {0x30A7, 370234}, {0x30A8, 369416}, {0x30A9, 370532}, {0x30AA, 369945}, {0x30AB, 369642}, {0x30AC, 369434}, {0x30AD, 369680}, {0x30AE, 369472}, {0x30AF, 369718}, {0x30B0, 369510}, {0x30B1, 369661}, {0x30B2, 369453}, {0x30B3, 369699}, {0x30B4, 369491}, {0x30B5, 370153}, {0x30B6, 371284}, {0x30B7, 370191}, {0x30B8, 371322}, {0x30B9, 370924}, {0x30BA, 371360}, {0x30BB, 370172}, {0x30BC, 371303}, {0x30BD, 370905}, {0x30BE, 371341}, {0x30BF, 370943}, {0x30C0, 369321}, {0x30C1, 370981}, {0x30C2, 369359}, {0x30C3, 370756}, {0x30C4, 371019}, {0x30C5, 369397}, {0x30C6, 370962}, {0x30C7, 369340}, {0x30C8, 371000}, {0x30C9, 369378}, {0x30CA, 369850}, {0x30CB, 369888}, {0x30CC, 369926}, {0x30CD, 369869}, {0x30CE, 369907}, {0x30CF, 369529}, {0x30D0, 369226}, {0x30D1, 369963}, {0x30D2, 369567}, {0x30D3, 369264}, {0x30D4, 370001}, {0x30D5, 369605}, {0x30D6, 369302}, {0x30D7, 370039}, {0x30D8, 369548}, {0x30D9, 369245}, {0x30DA, 369982}, {0x30DB, 369586}, {0x30DC, 369283}, {0x30DD, 370020}, {0x30DE, 369737}, {0x30DF, 369775}, {0x30E0, 369813}, {0x30E1, 369756}, {0x30E2, 369794}, {0x30E3, 370830}, {0x30E4, 371227}, {0x30E5, 370880}, {0x30E6, 371265}, {0x30E7, 370855}, {0x30E8, 371246}, {0x30E9, 370058}, {0x30EA, 370096}, {0x30EB, 370134}, {0x30EC, 370077}, {0x30ED, 370115}, {0x30EE, 370805}, {0x30EF, 371151}, {0x30F0, 371189}, {0x30F1, 371170}, {0x30F2, 371208}, {0x30F3, 369832}, {0x30F4, 371132}, {0x30F5, 370407}, {0x30F6, 370432}, {0x30F7, 371056}, {0x30F8, 371094}, {0x30F9, 371075}, {0x30FA, 371113}, {0x30FB, 371379}, {0x30FC, 371462}, {0x30FD, 369158}, {0x30FE, 371399}, {0x30FF, 369136}, {0x3105, 81186}, {0x3106, 81959}, {0x3107, 81769}, {0x3108, 81431}, {0x3109, 81260}, {0x310A, 82050}, {0x310B, 81787}, {0x310C, 81732}, {0x310D, 81449}, {0x310E, 81714}, {0x310F, 81524}, {0x3110, 81677}, {0x3111, 81977}, {0x3112, 82124}, {0x3113, 82160}, {0x3114, 81241}, {0x3115, 82031}, {0x3116, 81995}, {0x3117, 82142}, {0x3118, 81223}, {0x3119, 82013}, {0x311A, 81010}, {0x311B, 81844}, {0x311C, 81278}, {0x311D, 81315}, {0x311E, 81028}, {0x311F, 81334}, {0x3120, 81146}, {0x3121, 81940}, {0x3122, 81087}, {0x3123, 81353}, {0x3124, 81106}, {0x3125, 81372}, {0x3126, 81412}, {0x3127, 81542}, {0x3128, 82068}, {0x3129, 81658}, {0x312A, 82106}, {0x312B, 81805}, {0x312C, 81486}, {0x312D, 81560}, {0x3131, 338241}, {0x3132, 339410}, {0x3133, 338262}, {0x3134, 338387}, {0x3135, 338407}, {0x3136, 338433}, {0x3137, 339558}, {0x3138, 339510}, {0x3139, 338833}, {0x313A, 338879}, {0x313B, 338938}, {0x313C, 339020}, {0x313D, 339077}, {0x313E, 339102}, {0x313F, 338992}, {0x3140, 338853}, {0x3141, 338288}, {0x3142, 338616}, {0x3143, 339461}, {0x3144, 338689}, {0x3145, 339189}, {0x3146, 339486}, {0x3147, 338080}, {0x3148, 337974}, {0x3149, 339335}, {0x314A, 337952}, {0x314B, 338219}, {0x314C, 339536}, {0x314D, 338594}, {0x314E, 338044}, {0x314F, 337878}, {0x3150, 337894}, {0x3151, 339682}, {0x3152, 339699}, {0x3153, 338010}, {0x3154, 337994}, {0x3155, 339734}, {0x3156, 339717}, {0x3157, 338539}, {0x3158, 339595}, {0x3159, 339612}, {0x315A, 338555}, {0x315B, 339877}, {0x315C, 339579}, {0x315D, 339647}, {0x315E, 339630}, {0x315F, 339665}, {0x3160, 339954}, {0x3161, 338027}, {0x3162, 339860}, {0x3163, 338064}, {0x3164, 331610}, {0x3165, 339436}, {0x3166, 338512}, {0x3167, 338487}, {0x3168, 338459}, {0x3169, 338906}, {0x316A, 339130}, {0x316B, 339046}, {0x316C, 338964}, {0x316D, 339157}, {0x316E, 338336}, {0x316F, 338362}, {0x3170, 338308}, {0x3171, 338100}, {0x3172, 338662}, {0x3173, 338806}, {0x3174, 338714}, {0x3175, 338746}, {0x3176, 338636}, {0x3177, 338778}, {0x3178, 338158}, {0x3179, 338186}, {0x317A, 339233}, {0x317B, 339259}, {0x317C, 339309}, {0x317D, 339284}, {0x317E, 339208}, {0x317F, 338572}, {0x3180, 339385}, {0x3181, 339778}, {0x3182, 339832}, {0x3183, 339801}, {0x3184, 338128}, {0x3185, 339360}, {0x3186, 339752}, {0x3187, 339913}, {0x3188, 339933}, {0x3189, 339894}, {0x318A, 340010}, {0x318B, 339990}, {0x318C, 339971}, {0x318D, 337911}, {0x318E, 337931}, {0x3190, 350681}, {0x3191, 350816}, {0x3192, 350784}, {0x3193, 350987}, {0x3194, 350921}, {0x3195, 350578}, {0x3196, 350955}, {0x3197, 350749}, {0x3198, 350475}, {0x3199, 350544}, {0x319A, 350852}, {0x319B, 350887}, {0x319C, 350611}, {0x319D, 350646}, {0x319E, 350510}, {0x319F, 350717}, {0x31A0, 81204}, {0x31A1, 82179}, {0x31A2, 81695}, {0x31A3, 81505}, {0x31A4, 81296}, {0x31A5, 81392}, {0x31A6, 81921}, {0x31A7, 81901}, {0x31A8, 81639}, {0x31A9, 81126}, {0x31AA, 81598}, {0x31AB, 82086}, {0x31AC, 81579}, {0x31AD, 81824}, {0x31AE, 81047}, {0x31AF, 81165}, {0x31B0, 81068}, {0x31B1, 81862}, {0x31B2, 81881}, {0x31B3, 81618}, {0x31B4, 80962}, {0x31B5, 80986}, {0x31B6, 80938}, {0x31B7, 80914}, {0x31B8, 81467}, {0x31B9, 81750}, {0x31BA, 82198}, {0x31C0, 176584}, {0x31C1, 176611}, {0x31C2, 176625}, {0x31C3, 176119}, {0x31C4, 176495}, {0x31C5, 176295}, {0x31C6, 176234}, {0x31C7, 176174}, {0x31C8, 176279}, {0x31C9, 176553}, {0x31CA, 176249}, {0x31CB, 176310}, {0x31CC, 176188}, {0x31CD, 176264}, {0x31CE, 176326}, {0x31CF, 176359}, {0x31D0, 176147}, {0x31D1, 176440}, {0x31D2, 176372}, {0x31D3, 176467}, {0x31D4, 176134}, {0x31D5, 176220}, {0x31D6, 176160}, {0x31D7, 176539}, {0x31D8, 176524}, {0x31D9, 176481}, {0x31DA, 176453}, {0x31DB, 176385}, {0x31DC, 176413}, {0x31DD, 176597}, {0x31DE, 176569}, {0x31DF, 176509}, {0x31E0, 176204}, {0x31E1, 176342}, {0x31E2, 176399}, {0x31E3, 176427}, {0x31F0, 370457}, {0x31F1, 370681}, {0x31F2, 370706}, {0x31F3, 370731}, {0x31F4, 370507}, {0x31F5, 370258}, {0x31F6, 370308}, {0x31F7, 370358}, {0x31F8, 370283}, {0x31F9, 370333}, {0x31FA, 370482}, {0x31FB, 370556}, {0x31FC, 370606}, {0x31FD, 370656}, {0x31FE, 370581}, {0x31FF, 370631}, {0x3200, 519786}, {0x3201, 519900}, {0x3202, 520242}, {0x3203, 520072}, {0x3204, 519844}, {0x3205, 520016}, {0x3206, 520128}, {0x3207, 519670}, {0x3208, 519529}, {0x3209, 519469}, {0x320A, 519726}, {0x320B, 520182}, {0x320C, 519956}, {0x320D, 519614}, {0x320E, 519814}, {0x320F, 519927}, {0x3210, 520270}, {0x3211, 520099}, {0x3212, 519871}, {0x3213, 520043}, {0x3214, 520154}, {0x3215, 519697}, {0x3216, 519556}, {0x3217, 519498}, {0x3218, 519755}, {0x3219, 520211}, {0x321A, 519985}, {0x321B, 519641}, {0x321C, 519585}, {0x321D, 521434}, {0x321E, 521398}, {0x3220, 520826}, {0x3221, 521311}, {0x3222, 521281}, {0x3223, 520621}, {0x3224, 520592}, {0x3225, 521039}, {0x3226, 521009}, {0x3227, 520431}, {0x3228, 520797}, {0x3229, 521253}, {0x322A, 520739}, {0x322B, 520563}, {0x322C, 521339}, {0x322D, 521369}, {0x322E, 520709}, {0x322F, 520401}, {0x3230, 521191}, {0x3231, 521131}, {0x3232, 520650}, {0x3233, 521067}, {0x3234, 520768}, {0x3235, 521099}, {0x3236, 520529}, {0x3237, 520362}, {0x3238, 520679}, {0x3239, 520884}, {0x323A, 520333}, {0x323B, 521161}, {0x323C, 521219}, {0x323D, 520461}, {0x323E, 520918}, {0x323F, 520300}, {0x3240, 520496}, {0x3241, 520951}, {0x3242, 520980}, {0x3243, 520854}, {0x3244, 134667}, {0x3245, 134331}, {0x3246, 134795}, {0x3247, 134362}, {0x3248, 138548}, {0x3249, 139063}, {0x324A, 138738}, {0x324B, 138191}, {0x324C, 138028}, {0x324D, 138492}, {0x324E, 138430}, {0x324F, 137924}, {0x3250, 523736}, {0x3251, 139101}, {0x3252, 139209}, {0x3253, 139181}, {0x3254, 139009}, {0x3255, 138982}, {0x3256, 139155}, {0x3257, 139127}, {0x3258, 138954}, {0x3259, 139036}, {0x325A, 138607}, {0x325B, 138776}, {0x325C, 138884}, {0x325D, 138856}, {0x325E, 138684}, {0x325F, 138657}, {0x3260, 133343}, {0x3261, 133433}, {0x3262, 133703}, {0x3263, 133569}, {0x3264, 133389}, {0x3265, 133525}, {0x3266, 133613}, {0x3267, 133228}, {0x3268, 133140}, {0x3269, 133092}, {0x326A, 133295}, {0x326B, 133655}, {0x326C, 133477}, {0x326D, 133184}, {0x326E, 133365}, {0x326F, 133454}, {0x3270, 133725}, {0x3271, 133590}, {0x3272, 133410}, {0x3273, 133546}, {0x3274, 133633}, {0x3275, 133249}, {0x3276, 133161}, {0x3277, 133115}, {0x3278, 133318}, {0x3279, 133678}, {0x327A, 133500}, {0x327B, 133205}, {0x327C, 136194}, {0x327D, 136226}, {0x327E, 133272}, {0x327F, 377391}, {0x3280, 134621}, {0x3281, 135114}, {0x3282, 135090}, {0x3283, 134239}, {0x3284, 134216}, {0x3285, 134869}, {0x3286, 134845}, {0x3287, 134059}, {0x3288, 134598}, {0x3289, 135068}, {0x328A, 134528}, {0x328B, 134193}, {0x328C, 135136}, {0x328D, 135160}, {0x328E, 134504}, {0x328F, 134035}, {0x3290, 135018}, {0x3291, 134943}, {0x3292, 134262}, {0x3293, 134891}, {0x3294, 134551}, {0x3295, 134917}, {0x3296, 134165}, {0x3297, 133953}, {0x3298, 134385}, {0x3299, 134820}, {0x329A, 134454}, {0x329B, 134140}, {0x329C, 134991}, {0x329D, 134112}, {0x329E, 134643}, {0x329F, 133900}, {0x32A0, 134308}, {0x32A1, 134748}, {0x32A2, 133986}, {0x32A3, 134009}, {0x32A4, 134285}, {0x32A5, 133928}, {0x32A6, 134432}, {0x32A7, 134409}, {0x32A8, 134771}, {0x32A9, 134477}, {0x32AA, 134694}, {0x32AB, 134967}, {0x32AC, 135040}, {0x32AD, 134083}, {0x32AE, 134721}, {0x32AF, 133873}, {0x32B0, 134574}, {0x32B1, 138830}, {0x32B2, 138802}, {0x32B3, 138629}, {0x32B4, 138711}, {0x32B5, 138065}, {0x32B6, 138228}, {0x32B7, 138332}, {0x32B8, 138305}, {0x32B9, 138139}, {0x32BA, 138113}, {0x32BB, 138280}, {0x32BC, 138253}, {0x32BD, 138086}, {0x32BE, 138165}, {0x32BF, 138007}, {0x32C0, 354698}, {0x32C1, 353522}, {0x32C2, 354815}, {0x32C3, 351996}, {0x32C4, 354854}, {0x32C5, 354777}, {0x32C6, 354739}, {0x32C7, 352035}, {0x32C8, 354974}, {0x32C9, 354933}, {0x32CA, 354891}, {0x32CB, 353480}, {0x32CC, 555940}, {0x32CD, 555657}, {0x32CE, 555684}, {0x32CF, 425244}, {0x32D0, 135259}, {0x32D1, 135397}, {0x32D2, 136035}, {0x32D3, 135278}, {0x32D4, 135716}, {0x32D5, 135416}, {0x32D6, 135456}, {0x32D7, 135496}, {0x32D8, 135436}, {0x32D9, 135476}, {0x32DA, 135835}, {0x32DB, 135875}, {0x32DC, 135915}, {0x32DD, 135855}, {0x32DE, 135895}, {0x32DF, 135935}, {0x32E0, 135975}, {0x32E1, 136015}, {0x32E2, 135955}, {0x32E3, 135995}, {0x32E4, 135616}, {0x32E5, 135656}, {0x32E6, 135696}, {0x32E7, 135636}, {0x32E8, 135676}, {0x32E9, 135297}, {0x32EA, 135337}, {0x32EB, 135377}, {0x32EC, 135317}, {0x32ED, 135357}, {0x32EE, 135516}, {0x32EF, 135556}, {0x32F0, 135596}, {0x32F1, 135536}, {0x32F2, 135576}, {0x32F3, 136134}, {0x32F4, 136174}, {0x32F5, 136154}, {0x32F6, 135735}, {0x32F7, 135775}, {0x32F8, 135815}, {0x32F9, 135755}, {0x32FA, 135795}, {0x32FB, 136054}, {0x32FC, 136094}, {0x32FD, 136074}, {0x32FE, 136114}, {0x3300, 555159}, {0x3301, 555173}, {0x3302, 555146}, {0x3303, 555124}, {0x3304, 556167}, {0x3305, 556181}, {0x3306, 557980}, {0x3307, 555668}, {0x3308, 555552}, {0x3309, 557299}, {0x330A, 557311}, {0x330B, 556226}, {0x330C, 556239}, {0x330D, 556254}, {0x330E, 555760}, {0x330F, 555747}, {0x3310, 555794}, {0x3311, 555806}, {0x3312, 556573}, {0x3313, 555819}, {0x3314, 556325}, {0x3315, 556337}, {0x3316, 556355}, {0x3317, 556374}, {0x3318, 555845}, {0x3319, 555859}, {0x331A, 556536}, {0x331B, 556521}, {0x331C, 556291}, {0x331D, 556486}, {0x331E, 556473}, {0x331F, 557866}, {0x3320, 557881}, {0x3321, 557923}, {0x3322, 557897}, {0x3323, 557910}, {0x3324, 555441}, {0x3325, 555464}, {0x3326, 555540}, {0x3327, 557969}, {0x3328, 557224}, {0x3329, 557256}, {0x332A, 555896}, {0x332B, 557443}, {0x332C, 557459}, {0x332D, 555197}, {0x332E, 557554}, {0x332F, 557583}, {0x3330, 557571}, {0x3331, 555236}, {0x3332, 556028}, {0x3333, 556044}, {0x3334, 555272}, {0x3335, 556058}, {0x3336, 555909}, {0x3337, 557522}, {0x3338, 557495}, {0x3339, 555926}, {0x333A, 557509}, {0x333B, 557482}, {0x333C, 555223}, {0x333D, 557607}, {0x333E, 555248}, {0x333F, 555971}, {0x3340, 557621}, {0x3341, 555994}, {0x3342, 555982}, {0x3343, 556781}, {0x3344, 556796}, {0x3345, 556768}, {0x3346, 556824}, {0x3347, 556809}, {0x3348, 556927}, {0x3349, 556953}, {0x334A, 556965}, {0x334B, 556879}, {0x334C, 556891}, {0x334D, 556864}, {0x334E, 558564}, {0x334F, 558577}, {0x3350, 558590}, {0x3351, 557811}, {0x3352, 557799}, {0x3353, 557838}, {0x3354, 557851}, {0x3355, 557740}, {0x3356, 557752}, {0x3357, 558007}, {0x3358, 354655}, {0x3359, 353969}, {0x335A, 354613}, {0x335B, 354280}, {0x335C, 353789}, {0x335D, 353746}, {0x335E, 354103}, {0x335F, 354011}, {0x3360, 353564}, {0x3361, 353879}, {0x3362, 354191}, {0x3363, 353655}, {0x3364, 354324}, {0x3365, 354233}, {0x3366, 353832}, {0x3367, 353700}, {0x3368, 354145}, {0x3369, 354055}, {0x336A, 353608}, {0x336B, 353922}, {0x336C, 354369}, {0x336D, 354464}, {0x336E, 354564}, {0x336F, 354513}, {0x3370, 354414}, {0x3371, 556017}, {0x3372, 555431}, {0x3373, 555187}, {0x3374, 555212}, {0x3375, 557408}, {0x3376, 557472}, {0x3377, 555496}, {0x3378, 555522}, {0x3379, 555506}, {0x337A, 556193}, {0x337B, 555565}, {0x337C, 555610}, {0x337D, 555633}, {0x337E, 555588}, {0x337F, 555401}, {0x3380, 557428}, {0x3381, 557214}, {0x3382, 557068}, {0x3383, 556758}, {0x3384, 556216}, {0x3385, 556269}, {0x3386, 556838}, {0x3387, 555773}, {0x3388, 555305}, {0x3389, 556279}, {0x338A, 557534}, {0x338B, 557236}, {0x338C, 557080}, {0x338D, 557092}, {0x338E, 556906}, {0x338F, 556304}, {0x3390, 556071}, {0x3391, 556314}, {0x3392, 556916}, {0x3393, 555783}, {0x3394, 557958}, {0x3395, 557104}, {0x3396, 556982}, {0x3397, 555486}, {0x3398, 556401}, {0x3399, 555694}, {0x339A, 557246}, {0x339B, 557116}, {0x339C, 556992}, {0x339D, 555347}, {0x339E, 556411}, {0x339F, 557018}, {0x33A0, 555373}, {0x33A1, 556741}, {0x33A2, 556455}, {0x33A3, 557002}, {0x33A4, 555357}, {0x33A5, 556673}, {0x33A6, 556439}, {0x33A7, 556701}, {0x33A8, 556717}, {0x33A9, 557418}, {0x33AA, 556500}, {0x33AB, 557047}, {0x33AC, 555834}, {0x33AD, 557685}, {0x33AE, 557696}, {0x33AF, 557714}, {0x33B0, 557655}, {0x33B1, 557269}, {0x33B2, 557128}, {0x33B3, 557058}, {0x33B4, 557665}, {0x33B5, 557279}, {0x33B6, 557140}, {0x33B7, 557164}, {0x33B8, 556553}, {0x33B9, 557174}, {0x33BA, 557675}, {0x33BB, 557289}, {0x33BC, 557152}, {0x33BD, 557189}, {0x33BE, 556563}, {0x33BF, 557199}, {0x33C0, 556203}, {0x33C1, 556688}, {0x33C2, 555136}, {0x33C3, 555262}, {0x33C4, 555327}, {0x33C5, 555337}, {0x33C6, 555288}, {0x33C7, 555391}, {0x33C8, 555454}, {0x33C9, 555876}, {0x33CA, 555886}, {0x33CB, 556007}, {0x33CC, 556157}, {0x33CD, 556391}, {0x33CE, 556421}, {0x33CF, 556511}, {0x33D0, 556617}, {0x33D1, 556627}, {0x33D2, 556637}, {0x33D3, 556663}, {0x33D4, 556848}, {0x33D5, 556942}, {0x33D6, 557036}, {0x33D7, 557544}, {0x33D8, 557597}, {0x33D9, 557634}, {0x33DA, 557645}, {0x33DB, 557938}, {0x33DC, 557948}, {0x33DD, 558020}, {0x33DE, 557991}, {0x33DF, 555108}, {0x33E0, 352471}, {0x33E1, 353439}, {0x33E2, 352867}, {0x33E3, 352295}, {0x33E4, 352253}, {0x33E5, 352602}, {0x33E6, 352512}, {0x33E7, 352075}, {0x33E8, 352383}, {0x33E9, 352688}, {0x33EA, 352164}, {0x33EB, 352910}, {0x33EC, 352729}, {0x33ED, 352337}, {0x33EE, 352208}, {0x33EF, 352643}, {0x33F0, 352555}, {0x33F1, 352118}, {0x33F2, 352425}, {0x33F3, 352954}, {0x33F4, 353195}, {0x33F5, 353391}, {0x33F6, 353341}, {0x33F7, 353097}, {0x33F8, 353048}, {0x33F9, 353293}, {0x33FA, 353243}, {0x33FB, 352998}, {0x33FC, 353146}, {0x33FD, 352775}, {0x33FE, 352819}, {0x33FF, 555736}, {0x3400, 0}, {0x4DB5, 35}, {0x4DC0, 347520}, {0x4DC1, 347708}, {0x4DC2, 346539}, {0x4DC3, 347865}, {0x4DC4, 347811}, {0x4DC5, 346382}, {0x4DC6, 347407}, {0x4DC7, 346862}, {0x4DC8, 347297}, {0x4DC9, 347789}, {0x4DCA, 347130}, {0x4DCB, 347352}, {0x4DCC, 346650}, {0x4DCD, 346748}, {0x4DCE, 347009}, {0x4DCF, 346626}, {0x4DD0, 346674}, {0x4DD1, 347832}, {0x4DD2, 346247}, {0x4DD3, 346404}, {0x4DD4, 346300}, {0x4DD5, 346729}, {0x4DD6, 347323}, {0x4DD7, 347220}, {0x4DD8, 346962}, {0x4DD9, 346836}, {0x4DDA, 347030}, {0x4DDB, 346803}, {0x4DDC, 347376}, {0x4DDD, 347489}, {0x4DDE, 346914}, {0x4DDF, 346604}, {0x4DE0, 347199}, {0x4DE1, 346778}, {0x4DE2, 347149}, {0x4DE3, 346431}, {0x4DE4, 347553}, {0x4DE5, 347082}, {0x4DE6, 347057}, {0x4DE7, 346489}, {0x4DE8, 346467}, {0x4DE9, 346892}, {0x4DEA, 346328}, {0x4DEB, 346354}, {0x4DEC, 346697}, {0x4DED, 347171}, {0x4DEE, 347106}, {0x4DEF, 347767}, {0x4DF0, 347240}, {0x4DF1, 347463}, {0x4DF2, 347429}, {0x4DF3, 347635}, {0x4DF4, 346514}, {0x4DF5, 347675}, {0x4DF6, 346194}, {0x4DF7, 347741}, {0x4DF8, 347577}, {0x4DF9, 347606}, {0x4DFA, 346580}, {0x4DFB, 346985}, {0x4DFC, 346937}, {0x4DFD, 347264}, {0x4DFE, 346217}, {0x4DFF, 346269}, {0x4E00, 276}, {0x9FCB, 299}, {0xA000, 622291}, {0xA001, 622306}, {0xA002, 622199}, {0xA003, 622276}, {0xA004, 622244}, {0xA005, 622260}, {0xA006, 622213}, {0xA007, 622228}, {0xA008, 615804}, {0xA009, 615819}, {0xA00A, 615775}, {0xA00B, 615789}, {0xA00C, 632000}, {0xA00D, 631969}, {0xA00E, 631984}, {0xA00F, 628277}, {0xA010, 628292}, {0xA011, 628248}, {0xA012, 628262}, {0xA013, 618815}, {0xA014, 618801}, {0xA015, 632653}, {0xA016, 616586}, {0xA017, 616602}, {0xA018, 616488}, {0xA019, 616570}, {0xA01A, 616536}, {0xA01B, 616553}, {0xA01C, 616503}, {0xA01D, 616519}, {0xA01E, 615865}, {0xA01F, 615881}, {0xA020, 615834}, {0xA021, 615849}, {0xA022, 616729}, {0xA023, 616696}, {0xA024, 616712}, {0xA025, 616649}, {0xA026, 616665}, {0xA027, 616618}, {0xA028, 616633}, {0xA029, 616472}, {0xA02A, 616441}, {0xA02B, 616456}, {0xA02C, 616795}, {0xA02D, 616811}, {0xA02E, 616681}, {0xA02F, 616746}, {0xA030, 616778}, {0xA031, 616762}, {0xA032, 616891}, {0xA033, 616907}, {0xA034, 616827}, {0xA035, 616842}, {0xA036, 616874}, {0xA037, 616858}, {0xA038, 628451}, {0xA039, 628467}, {0xA03A, 628370}, {0xA03B, 628435}, {0xA03C, 628418}, {0xA03D, 628385}, {0xA03E, 628401}, {0xA03F, 628338}, {0xA040, 628354}, {0xA041, 628307}, {0xA042, 628322}, {0xA043, 628594}, {0xA044, 628561}, {0xA045, 628577}, {0xA046, 628514}, {0xA047, 628530}, {0xA048, 628483}, {0xA049, 628498}, {0xA04A, 628660}, {0xA04B, 628676}, {0xA04C, 628546}, {0xA04D, 628611}, {0xA04E, 628643}, {0xA04F, 628627}, {0xA050, 628756}, {0xA051, 628772}, {0xA052, 628692}, {0xA053, 628707}, {0xA054, 628739}, {0xA055, 628723}, {0xA056, 616118}, {0xA057, 616135}, {0xA058, 616014}, {0xA059, 616101}, {0xA05A, 616065}, {0xA05B, 616083}, {0xA05C, 616030}, {0xA05D, 616047}, {0xA05E, 615930}, {0xA05F, 615947}, {0xA060, 615897}, {0xA061, 615913}, {0xA062, 616270}, {0xA063, 616235}, {0xA064, 616252}, {0xA065, 616185}, {0xA066, 616202}, {0xA067, 616152}, {0xA068, 616168}, {0xA069, 615997}, {0xA06A, 615964}, {0xA06B, 615980}, {0xA06C, 616340}, {0xA06D, 616357}, {0xA06E, 616219}, {0xA06F, 616288}, {0xA070, 616322}, {0xA071, 616305}, {0xA072, 616407}, {0xA073, 616424}, {0xA074, 616374}, {0xA075, 616390}, {0xA076, 625280}, {0xA077, 625297}, {0xA078, 625194}, {0xA079, 625263}, {0xA07A, 625245}, {0xA07B, 625210}, {0xA07C, 625227}, {0xA07D, 625160}, {0xA07E, 625177}, {0xA07F, 625127}, {0xA080, 625143}, {0xA081, 625347}, {0xA082, 625364}, {0xA083, 625314}, {0xA084, 625330}, {0xA085, 625449}, {0xA086, 625466}, {0xA087, 625381}, {0xA088, 625397}, {0xA089, 625431}, {0xA08A, 625414}, {0xA08B, 625551}, {0xA08C, 625568}, {0xA08D, 625483}, {0xA08E, 625499}, {0xA08F, 625533}, {0xA090, 625516}, {0xA091, 620977}, {0xA092, 620994}, {0xA093, 620891}, {0xA094, 620960}, {0xA095, 620942}, {0xA096, 620907}, {0xA097, 620924}, {0xA098, 620857}, {0xA099, 620874}, {0xA09A, 620824}, {0xA09B, 620840}, {0xA09C, 621129}, {0xA09D, 621094}, {0xA09E, 621111}, {0xA09F, 621044}, {0xA0A0, 621061}, {0xA0A1, 621011}, {0xA0A2, 621027}, {0xA0A3, 621199}, {0xA0A4, 621216}, {0xA0A5, 621078}, {0xA0A6, 621147}, {0xA0A7, 621181}, {0xA0A8, 621164}, {0xA0A9, 621301}, {0xA0AA, 621233}, {0xA0AB, 621249}, {0xA0AC, 621283}, {0xA0AD, 621266}, {0xA0AE, 624759}, {0xA0AF, 624775}, {0xA0B0, 624678}, {0xA0B1, 624743}, {0xA0B2, 624726}, {0xA0B3, 624693}, {0xA0B4, 624709}, {0xA0B5, 624241}, {0xA0B6, 624257}, {0xA0B7, 624210}, {0xA0B8, 624225}, {0xA0B9, 624902}, {0xA0BA, 624919}, {0xA0BB, 624869}, {0xA0BC, 624885}, {0xA0BD, 624822}, {0xA0BE, 624838}, {0xA0BF, 624791}, {0xA0C0, 624806}, {0xA0C1, 624288}, {0xA0C2, 624273}, {0xA0C3, 624985}, {0xA0C4, 625001}, {0xA0C5, 624854}, {0xA0C6, 624936}, {0xA0C7, 624968}, {0xA0C8, 624952}, {0xA0C9, 625048}, {0xA0CA, 625064}, {0xA0CB, 625017}, {0xA0CC, 625032}, {0xA0CD, 618924}, {0xA0CE, 618940}, {0xA0CF, 618893}, {0xA0D0, 618908}, {0xA0D1, 618861}, {0xA0D2, 618877}, {0xA0D3, 618830}, {0xA0D4, 618845}, {0xA0D5, 618987}, {0xA0D6, 618956}, {0xA0D7, 618971}, {0xA0D8, 619067}, {0xA0D9, 619083}, {0xA0DA, 619003}, {0xA0DB, 619018}, {0xA0DC, 619050}, {0xA0DD, 619034}, {0xA0DE, 619130}, {0xA0DF, 619146}, {0xA0E0, 619099}, {0xA0E1, 619114}, {0xA0E2, 632209}, {0xA0E3, 632225}, {0xA0E4, 632111}, {0xA0E5, 632193}, {0xA0E6, 632159}, {0xA0E7, 632176}, {0xA0E8, 632126}, {0xA0E9, 632142}, {0xA0EA, 632047}, {0xA0EB, 632063}, {0xA0EC, 632016}, {0xA0ED, 632031}, {0xA0EE, 632272}, {0xA0EF, 632288}, {0xA0F0, 632241}, {0xA0F1, 632256}, {0xA0F2, 632095}, {0xA0F3, 632079}, {0xA0F4, 632368}, {0xA0F5, 632384}, {0xA0F6, 632304}, {0xA0F7, 632319}, {0xA0F8, 632351}, {0xA0F9, 632335}, {0xA0FA, 632464}, {0xA0FB, 632480}, {0xA0FC, 632400}, {0xA0FD, 632415}, {0xA0FE, 632447}, {0xA0FF, 632431}, {0xA100, 618577}, {0xA101, 618593}, {0xA102, 618496}, {0xA103, 618561}, {0xA104, 618544}, {0xA105, 618511}, {0xA106, 618527}, {0xA107, 617958}, {0xA108, 617974}, {0xA109, 617927}, {0xA10A, 617942}, {0xA10B, 618703}, {0xA10C, 618687}, {0xA10D, 618640}, {0xA10E, 618656}, {0xA10F, 618609}, {0xA110, 618624}, {0xA111, 618480}, {0xA112, 618449}, {0xA113, 618464}, {0xA114, 618769}, {0xA115, 618785}, {0xA116, 618672}, {0xA117, 618720}, {0xA118, 618752}, {0xA119, 618736}, {0xA11A, 631711}, {0xA11B, 631727}, {0xA11C, 631630}, {0xA11D, 631695}, {0xA11E, 631678}, {0xA11F, 631645}, {0xA120, 631661}, {0xA121, 631551}, {0xA122, 631567}, {0xA123, 631520}, {0xA124, 631535}, {0xA125, 631854}, {0xA126, 631871}, {0xA127, 631821}, {0xA128, 631837}, {0xA129, 631774}, {0xA12A, 631790}, {0xA12B, 631743}, {0xA12C, 631758}, {0xA12D, 631614}, {0xA12E, 631583}, {0xA12F, 631598}, {0xA130, 631937}, {0xA131, 631953}, {0xA132, 631806}, {0xA133, 631888}, {0xA134, 631920}, {0xA135, 631904}, {0xA136, 618193}, {0xA137, 618210}, {0xA138, 618107}, {0xA139, 618176}, {0xA13A, 618158}, {0xA13B, 618123}, {0xA13C, 618140}, {0xA13D, 618023}, {0xA13E, 618040}, {0xA13F, 617990}, {0xA140, 618006}, {0xA141, 618345}, {0xA142, 618310}, {0xA143, 618327}, {0xA144, 618260}, {0xA145, 618277}, {0xA146, 618227}, {0xA147, 618243}, {0xA148, 618090}, {0xA149, 618057}, {0xA14A, 618073}, {0xA14B, 618415}, {0xA14C, 618432}, {0xA14D, 618294}, {0xA14E, 618363}, {0xA14F, 618397}, {0xA150, 618380}, {0xA151, 625770}, {0xA152, 625787}, {0xA153, 625702}, {0xA154, 625753}, {0xA155, 625735}, {0xA156, 625718}, {0xA157, 625618}, {0xA158, 625635}, {0xA159, 625585}, {0xA15A, 625601}, {0xA15B, 625837}, {0xA15C, 625854}, {0xA15D, 625804}, {0xA15E, 625820}, {0xA15F, 625685}, {0xA160, 625652}, {0xA161, 625668}, {0xA162, 625939}, {0xA163, 625956}, {0xA164, 625871}, {0xA165, 625887}, {0xA166, 625921}, {0xA167, 625904}, {0xA168, 621539}, {0xA169, 621556}, {0xA16A, 621435}, {0xA16B, 621522}, {0xA16C, 621486}, {0xA16D, 621504}, {0xA16E, 621451}, {0xA16F, 621468}, {0xA170, 621351}, {0xA171, 621368}, {0xA172, 621318}, {0xA173, 621334}, {0xA174, 621641}, {0xA175, 621624}, {0xA176, 621590}, {0xA177, 621607}, {0xA178, 621573}, {0xA179, 621418}, {0xA17A, 621385}, {0xA17B, 621401}, {0xA17C, 621659}, {0xA17D, 626391}, {0xA17E, 626407}, {0xA17F, 626310}, {0xA180, 626375}, {0xA181, 626358}, {0xA182, 626325}, {0xA183, 626341}, {0xA184, 625111}, {0xA185, 625080}, {0xA186, 625095}, {0xA187, 627349}, {0xA188, 627316}, {0xA189, 627332}, {0xA18A, 626881}, {0xA18B, 626897}, {0xA18C, 626850}, {0xA18D, 626865}, {0xA18E, 626004}, {0xA18F, 625973}, {0xA190, 625988}, {0xA191, 627415}, {0xA192, 627431}, {0xA193, 627301}, {0xA194, 627366}, {0xA195, 627398}, {0xA196, 627382}, {0xA197, 620483}, {0xA198, 620500}, {0xA199, 620397}, {0xA19A, 620466}, {0xA19B, 620448}, {0xA19C, 620413}, {0xA19D, 620430}, {0xA19E, 620313}, {0xA19F, 620330}, {0xA1A0, 620280}, {0xA1A1, 620296}, {0xA1A2, 620618}, {0xA1A3, 620583}, {0xA1A4, 620600}, {0xA1A5, 620550}, {0xA1A6, 620517}, {0xA1A7, 620533}, {0xA1A8, 620380}, {0xA1A9, 620347}, {0xA1AA, 620363}, {0xA1AB, 620688}, {0xA1AC, 620705}, {0xA1AD, 620567}, {0xA1AE, 620636}, {0xA1AF, 620670}, {0xA1B0, 620653}, {0xA1B1, 620790}, {0xA1B2, 620807}, {0xA1B3, 620722}, {0xA1B4, 620738}, {0xA1B5, 620772}, {0xA1B6, 620755}, {0xA1B7, 623856}, {0xA1B8, 623872}, {0xA1B9, 623758}, {0xA1BA, 623840}, {0xA1BB, 623806}, {0xA1BC, 623823}, {0xA1BD, 623773}, {0xA1BE, 623789}, {0xA1BF, 623679}, {0xA1C0, 623695}, {0xA1C1, 623648}, {0xA1C2, 623663}, {0xA1C3, 623999}, {0xA1C4, 624016}, {0xA1C5, 623966}, {0xA1C6, 623982}, {0xA1C7, 623919}, {0xA1C8, 623935}, {0xA1C9, 623888}, {0xA1CA, 623903}, {0xA1CB, 623742}, {0xA1CC, 623711}, {0xA1CD, 623726}, {0xA1CE, 624082}, {0xA1CF, 624098}, {0xA1D0, 623951}, {0xA1D1, 624033}, {0xA1D2, 624065}, {0xA1D3, 624049}, {0xA1D4, 624178}, {0xA1D5, 624194}, {0xA1D6, 624114}, {0xA1D7, 624129}, {0xA1D8, 624161}, {0xA1D9, 624145}, {0xA1DA, 619863}, {0xA1DB, 619879}, {0xA1DC, 619765}, {0xA1DD, 619847}, {0xA1DE, 619813}, {0xA1DF, 619830}, {0xA1E0, 619780}, {0xA1E1, 619796}, {0xA1E2, 619193}, {0xA1E3, 619209}, {0xA1E4, 619162}, {0xA1E5, 619177}, {0xA1E6, 620006}, {0xA1E7, 620023}, {0xA1E8, 619973}, {0xA1E9, 619989}, {0xA1EA, 619926}, {0xA1EB, 619942}, {0xA1EC, 619895}, {0xA1ED, 619910}, {0xA1EE, 619256}, {0xA1EF, 619272}, {0xA1F0, 619225}, {0xA1F1, 619240}, {0xA1F2, 620089}, {0xA1F3, 620105}, {0xA1F4, 619958}, {0xA1F5, 620040}, {0xA1F6, 620072}, {0xA1F7, 620056}, {0xA1F8, 623407}, {0xA1F9, 623423}, {0xA1FA, 623326}, {0xA1FB, 623391}, {0xA1FC, 623374}, {0xA1FD, 623341}, {0xA1FE, 623357}, {0xA1FF, 623231}, {0xA200, 623247}, {0xA201, 623200}, {0xA202, 623215}, {0xA203, 623550}, {0xA204, 623517}, {0xA205, 623533}, {0xA206, 623470}, {0xA207, 623486}, {0xA208, 623439}, {0xA209, 623454}, {0xA20A, 623294}, {0xA20B, 623310}, {0xA20C, 623263}, {0xA20D, 623278}, {0xA20E, 623616}, {0xA20F, 623632}, {0xA210, 623502}, {0xA211, 623567}, {0xA212, 623599}, {0xA213, 623583}, {0xA214, 619491}, {0xA215, 619508}, {0xA216, 619422}, {0xA217, 619473}, {0xA218, 619438}, {0xA219, 619455}, {0xA21A, 619321}, {0xA21B, 619338}, {0xA21C, 619288}, {0xA21D, 619304}, {0xA21E, 619643}, {0xA21F, 619661}, {0xA220, 619608}, {0xA221, 619625}, {0xA222, 619558}, {0xA223, 619575}, {0xA224, 619525}, {0xA225, 619541}, {0xA226, 619388}, {0xA227, 619405}, {0xA228, 619355}, {0xA229, 619371}, {0xA22A, 619731}, {0xA22B, 619748}, {0xA22C, 619592}, {0xA22D, 619679}, {0xA22E, 619713}, {0xA22F, 619696}, {0xA230, 624438}, {0xA231, 624421}, {0xA232, 624337}, {0xA233, 624354}, {0xA234, 624304}, {0xA235, 624320}, {0xA236, 624574}, {0xA237, 624539}, {0xA238, 624556}, {0xA239, 624489}, {0xA23A, 624506}, {0xA23B, 624456}, {0xA23C, 624472}, {0xA23D, 624404}, {0xA23E, 624371}, {0xA23F, 624387}, {0xA240, 624644}, {0xA241, 624661}, {0xA242, 624523}, {0xA243, 624592}, {0xA244, 624626}, {0xA245, 624609}, {0xA246, 622027}, {0xA247, 622044}, {0xA248, 621923}, {0xA249, 622010}, {0xA24A, 621974}, {0xA24B, 621992}, {0xA24C, 621939}, {0xA24D, 621956}, {0xA24E, 621839}, {0xA24F, 621856}, {0xA250, 621806}, {0xA251, 621822}, {0xA252, 622163}, {0xA253, 622181}, {0xA254, 622128}, {0xA255, 622145}, {0xA256, 622094}, {0xA257, 622111}, {0xA258, 622061}, {0xA259, 622077}, {0xA25A, 621906}, {0xA25B, 621873}, {0xA25C, 621889}, {0xA25D, 626172}, {0xA25E, 626137}, {0xA25F, 626154}, {0xA260, 626053}, {0xA261, 626070}, {0xA262, 626020}, {0xA263, 626036}, {0xA264, 626274}, {0xA265, 626292}, {0xA266, 626257}, {0xA267, 626223}, {0xA268, 626240}, {0xA269, 626190}, {0xA26A, 626206}, {0xA26B, 626120}, {0xA26C, 626087}, {0xA26D, 626103}, {0xA26E, 620264}, {0xA26F, 620247}, {0xA270, 620231}, {0xA271, 620152}, {0xA272, 620168}, {0xA273, 620121}, {0xA274, 620136}, {0xA275, 621772}, {0xA276, 621789}, {0xA277, 621739}, {0xA278, 621755}, {0xA279, 621707}, {0xA27A, 621723}, {0xA27B, 621676}, {0xA27C, 621691}, {0xA27D, 620215}, {0xA27E, 620184}, {0xA27F, 620199}, {0xA280, 632527}, {0xA281, 632543}, {0xA282, 632496}, {0xA283, 632511}, {0xA284, 632701}, {0xA285, 632668}, {0xA286, 632684}, {0xA287, 632637}, {0xA288, 632606}, {0xA289, 632621}, {0xA28A, 632590}, {0xA28B, 632559}, {0xA28C, 632574}, {0xA28D, 634141}, {0xA28E, 634157}, {0xA28F, 634060}, {0xA290, 634125}, {0xA291, 634108}, {0xA292, 634075}, {0xA293, 634091}, {0xA294, 633523}, {0xA295, 633539}, {0xA296, 633492}, {0xA297, 633507}, {0xA298, 634284}, {0xA299, 634251}, {0xA29A, 634267}, {0xA29B, 634204}, {0xA29C, 634220}, {0xA29D, 634173}, {0xA29E, 634188}, {0xA29F, 633586}, {0xA2A0, 633555}, {0xA2A1, 633570}, {0xA2A2, 634350}, {0xA2A3, 634366}, {0xA2A4, 634236}, {0xA2A5, 634301}, {0xA2A6, 634333}, {0xA2A7, 634317}, {0xA2A8, 634446}, {0xA2A9, 634462}, {0xA2AA, 634382}, {0xA2AB, 634397}, {0xA2AC, 634429}, {0xA2AD, 634413}, {0xA2AE, 617590}, {0xA2AF, 617606}, {0xA2B0, 617492}, {0xA2B1, 617574}, {0xA2B2, 617540}, {0xA2B3, 617557}, {0xA2B4, 617507}, {0xA2B5, 617523}, {0xA2B6, 616954}, {0xA2B7, 616970}, {0xA2B8, 616923}, {0xA2B9, 616938}, {0xA2BA, 617733}, {0xA2BB, 617700}, {0xA2BC, 617716}, {0xA2BD, 617653}, {0xA2BE, 617669}, {0xA2BF, 617622}, {0xA2C0, 617637}, {0xA2C1, 617017}, {0xA2C2, 616986}, {0xA2C3, 617001}, {0xA2C4, 617799}, {0xA2C5, 617815}, {0xA2C6, 617685}, {0xA2C7, 617750}, {0xA2C8, 617782}, {0xA2C9, 617766}, {0xA2CA, 617895}, {0xA2CB, 617911}, {0xA2CC, 617831}, {0xA2CD, 617846}, {0xA2CE, 617878}, {0xA2CF, 617862}, {0xA2D0, 634699}, {0xA2D1, 634716}, {0xA2D2, 634595}, {0xA2D3, 634682}, {0xA2D4, 634646}, {0xA2D5, 634664}, {0xA2D6, 634611}, {0xA2D7, 634628}, {0xA2D8, 634511}, {0xA2D9, 634528}, {0xA2DA, 634478}, {0xA2DB, 634494}, {0xA2DC, 634766}, {0xA2DD, 634733}, {0xA2DE, 634749}, {0xA2DF, 634578}, {0xA2E0, 634545}, {0xA2E1, 634561}, {0xA2E2, 634851}, {0xA2E3, 634783}, {0xA2E4, 634799}, {0xA2E5, 634833}, {0xA2E6, 634816}, {0xA2E7, 634936}, {0xA2E8, 634953}, {0xA2E9, 634868}, {0xA2EA, 634884}, {0xA2EB, 634918}, {0xA2EC, 634901}, {0xA2ED, 627958}, {0xA2EE, 627975}, {0xA2EF, 627872}, {0xA2F0, 627941}, {0xA2F1, 627923}, {0xA2F2, 627888}, {0xA2F3, 627905}, {0xA2F4, 627805}, {0xA2F5, 627822}, {0xA2F6, 627772}, {0xA2F7, 627788}, {0xA2F8, 628059}, {0xA2F9, 628042}, {0xA2FA, 628009}, {0xA2FB, 627992}, {0xA2FC, 627855}, {0xA2FD, 627839}, {0xA2FE, 628129}, {0xA2FF, 628026}, {0xA300, 628077}, {0xA301, 628111}, {0xA302, 628094}, {0xA303, 628214}, {0xA304, 628231}, {0xA305, 628146}, {0xA306, 628162}, {0xA307, 628196}, {0xA308, 628179}, {0xA309, 630710}, {0xA30A, 630726}, {0xA30B, 630629}, {0xA30C, 630694}, {0xA30D, 630677}, {0xA30E, 630644}, {0xA30F, 630660}, {0xA310, 630092}, {0xA311, 630108}, {0xA312, 630061}, {0xA313, 630076}, {0xA314, 631326}, {0xA315, 631293}, {0xA316, 631309}, {0xA317, 630773}, {0xA318, 630789}, {0xA319, 630742}, {0xA31A, 630757}, {0xA31B, 630155}, {0xA31C, 630124}, {0xA31D, 630139}, {0xA31E, 631392}, {0xA31F, 631408}, {0xA320, 631278}, {0xA321, 631343}, {0xA322, 631375}, {0xA323, 631359}, {0xA324, 631488}, {0xA325, 631504}, {0xA326, 631424}, {0xA327, 631439}, {0xA328, 631471}, {0xA329, 631455}, {0xA32A, 631008}, {0xA32B, 631025}, {0xA32C, 630922}, {0xA32D, 630991}, {0xA32E, 630973}, {0xA32F, 630938}, {0xA330, 630955}, {0xA331, 630838}, {0xA332, 630855}, {0xA333, 630805}, {0xA334, 630821}, {0xA335, 631075}, {0xA336, 631092}, {0xA337, 631042}, {0xA338, 631058}, {0xA339, 630905}, {0xA33A, 630872}, {0xA33B, 630888}, {0xA33C, 631142}, {0xA33D, 631159}, {0xA33E, 631109}, {0xA33F, 631125}, {0xA340, 631244}, {0xA341, 631261}, {0xA342, 631176}, {0xA343, 631192}, {0xA344, 631226}, {0xA345, 631209}, {0xA346, 633635}, {0xA347, 633652}, {0xA348, 633602}, {0xA349, 633618}, {0xA34A, 633854}, {0xA34B, 633819}, {0xA34C, 633836}, {0xA34D, 633769}, {0xA34E, 633786}, {0xA34F, 633736}, {0xA350, 633752}, {0xA351, 633702}, {0xA352, 633719}, {0xA353, 633669}, {0xA354, 633685}, {0xA355, 633924}, {0xA356, 633941}, {0xA357, 633803}, {0xA358, 633872}, {0xA359, 633906}, {0xA35A, 633889}, {0xA35B, 634026}, {0xA35C, 634043}, {0xA35D, 633958}, {0xA35E, 633974}, {0xA35F, 634008}, {0xA360, 633991}, {0xA361, 617066}, {0xA362, 617083}, {0xA363, 617033}, {0xA364, 617049}, {0xA365, 617285}, {0xA366, 617303}, {0xA367, 617250}, {0xA368, 617267}, {0xA369, 617200}, {0xA36A, 617217}, {0xA36B, 617167}, {0xA36C, 617183}, {0xA36D, 617133}, {0xA36E, 617150}, {0xA36F, 617100}, {0xA370, 617116}, {0xA371, 617373}, {0xA372, 617234}, {0xA373, 617321}, {0xA374, 617355}, {0xA375, 617338}, {0xA376, 617458}, {0xA377, 617475}, {0xA378, 617390}, {0xA379, 617406}, {0xA37A, 617440}, {0xA37B, 617423}, {0xA37C, 629429}, {0xA37D, 629413}, {0xA37E, 629613}, {0xA37F, 629596}, {0xA380, 629546}, {0xA381, 629563}, {0xA382, 629513}, {0xA383, 629529}, {0xA384, 629479}, {0xA385, 629496}, {0xA386, 629446}, {0xA387, 629462}, {0xA388, 629683}, {0xA389, 629700}, {0xA38A, 629580}, {0xA38B, 629631}, {0xA38C, 629665}, {0xA38D, 629648}, {0xA38E, 629785}, {0xA38F, 629802}, {0xA390, 629717}, {0xA391, 629733}, {0xA392, 629767}, {0xA393, 629750}, {0xA394, 626946}, {0xA395, 626963}, {0xA396, 626913}, {0xA397, 626929}, {0xA398, 627080}, {0xA399, 627047}, {0xA39A, 627063}, {0xA39B, 627013}, {0xA39C, 627030}, {0xA39D, 626980}, {0xA39E, 626996}, {0xA39F, 627165}, {0xA3A0, 627182}, {0xA3A1, 627097}, {0xA3A2, 627113}, {0xA3A3, 627147}, {0xA3A4, 627130}, {0xA3A5, 627267}, {0xA3A6, 627284}, {0xA3A7, 627199}, {0xA3A8, 627215}, {0xA3A9, 627249}, {0xA3AA, 627232}, {0xA3AB, 630204}, {0xA3AC, 630221}, {0xA3AD, 630171}, {0xA3AE, 630187}, {0xA3AF, 630423}, {0xA3B0, 630388}, {0xA3B1, 630405}, {0xA3B2, 630338}, {0xA3B3, 630355}, {0xA3B4, 630305}, {0xA3B5, 630321}, {0xA3B6, 630271}, {0xA3B7, 630288}, {0xA3B8, 630238}, {0xA3B9, 630254}, {0xA3BA, 630493}, {0xA3BB, 630510}, {0xA3BC, 630372}, {0xA3BD, 630441}, {0xA3BE, 630475}, {0xA3BF, 630458}, {0xA3C0, 630595}, {0xA3C1, 630612}, {0xA3C2, 630527}, {0xA3C3, 630543}, {0xA3C4, 630577}, {0xA3C5, 630560}, {0xA3C6, 629271}, {0xA3C7, 629287}, {0xA3C8, 629240}, {0xA3C9, 629255}, {0xA3CA, 629867}, {0xA3CB, 629834}, {0xA3CC, 629850}, {0xA3CD, 629381}, {0xA3CE, 629397}, {0xA3CF, 629350}, {0xA3D0, 629365}, {0xA3D1, 629334}, {0xA3D2, 629303}, {0xA3D3, 629318}, {0xA3D4, 629933}, {0xA3D5, 629949}, {0xA3D6, 629819}, {0xA3D7, 629884}, {0xA3D8, 629916}, {0xA3D9, 629900}, {0xA3DA, 630029}, {0xA3DB, 630045}, {0xA3DC, 629965}, {0xA3DD, 629980}, {0xA3DE, 630012}, {0xA3DF, 629996}, {0xA3E0, 622419}, {0xA3E1, 622435}, {0xA3E2, 622321}, {0xA3E3, 622403}, {0xA3E4, 622369}, {0xA3E5, 622386}, {0xA3E6, 622336}, {0xA3E7, 622352}, {0xA3E8, 622989}, {0xA3E9, 623006}, {0xA3EA, 622956}, {0xA3EB, 622972}, {0xA3EC, 622909}, {0xA3ED, 622925}, {0xA3EE, 622878}, {0xA3EF, 622893}, {0xA3F0, 623072}, {0xA3F1, 623088}, {0xA3F2, 622941}, {0xA3F3, 623023}, {0xA3F4, 623055}, {0xA3F5, 623039}, {0xA3F6, 623168}, {0xA3F7, 623184}, {0xA3F8, 623104}, {0xA3F9, 623119}, {0xA3FA, 623151}, {0xA3FB, 623135}, {0xA3FC, 628886}, {0xA3FD, 628902}, {0xA3FE, 628788}, {0xA3FF, 628870}, {0xA400, 628836}, {0xA401, 628853}, {0xA402, 628803}, {0xA403, 628819}, {0xA404, 629029}, {0xA405, 629046}, {0xA406, 628996}, {0xA407, 629012}, {0xA408, 628949}, {0xA409, 628965}, {0xA40A, 628918}, {0xA40B, 628933}, {0xA40C, 629112}, {0xA40D, 629128}, {0xA40E, 628981}, {0xA40F, 629063}, {0xA410, 629095}, {0xA411, 629079}, {0xA412, 629208}, {0xA413, 629224}, {0xA414, 629144}, {0xA415, 629159}, {0xA416, 629191}, {0xA417, 629175}, {0xA418, 622555}, {0xA419, 622572}, {0xA41A, 622451}, {0xA41B, 622538}, {0xA41C, 622502}, {0xA41D, 622520}, {0xA41E, 622467}, {0xA41F, 622484}, {0xA420, 622707}, {0xA421, 622672}, {0xA422, 622689}, {0xA423, 622622}, {0xA424, 622639}, {0xA425, 622589}, {0xA426, 622605}, {0xA427, 622777}, {0xA428, 622794}, {0xA429, 622656}, {0xA42A, 622725}, {0xA42B, 622759}, {0xA42C, 622742}, {0xA42D, 622844}, {0xA42E, 622861}, {0xA42F, 622811}, {0xA430, 622827}, {0xA431, 626527}, {0xA432, 626544}, {0xA433, 626423}, {0xA434, 626510}, {0xA435, 626474}, {0xA436, 626492}, {0xA437, 626439}, {0xA438, 626456}, {0xA439, 626661}, {0xA43A, 626644}, {0xA43B, 626594}, {0xA43C, 626611}, {0xA43D, 626561}, {0xA43E, 626577}, {0xA43F, 626731}, {0xA440, 626628}, {0xA441, 626679}, {0xA442, 626713}, {0xA443, 626696}, {0xA444, 626816}, {0xA445, 626833}, {0xA446, 626748}, {0xA447, 626764}, {0xA448, 626798}, {0xA449, 626781}, {0xA44A, 627551}, {0xA44B, 627568}, {0xA44C, 627447}, {0xA44D, 627534}, {0xA44E, 627498}, {0xA44F, 627516}, {0xA450, 627463}, {0xA451, 627480}, {0xA452, 627703}, {0xA453, 627668}, {0xA454, 627685}, {0xA455, 627618}, {0xA456, 627635}, {0xA457, 627585}, {0xA458, 627601}, {0xA459, 627738}, {0xA45A, 627755}, {0xA45B, 627652}, {0xA45C, 627721}, {0xA45D, 632816}, {0xA45E, 632832}, {0xA45F, 632718}, {0xA460, 632800}, {0xA461, 632766}, {0xA462, 632783}, {0xA463, 632733}, {0xA464, 632749}, {0xA465, 632927}, {0xA466, 632911}, {0xA467, 632879}, {0xA468, 632895}, {0xA469, 632848}, {0xA46A, 632863}, {0xA46B, 633008}, {0xA46C, 633024}, {0xA46D, 632944}, {0xA46E, 632959}, {0xA46F, 632991}, {0xA470, 632975}, {0xA471, 633138}, {0xA472, 633154}, {0xA473, 633040}, {0xA474, 633122}, {0xA475, 633088}, {0xA476, 633105}, {0xA477, 633055}, {0xA478, 633071}, {0xA479, 633281}, {0xA47A, 633298}, {0xA47B, 633248}, {0xA47C, 633264}, {0xA47D, 633201}, {0xA47E, 633217}, {0xA47F, 633170}, {0xA480, 633185}, {0xA481, 633364}, {0xA482, 633380}, {0xA483, 633233}, {0xA484, 633315}, {0xA485, 633347}, {0xA486, 633331}, {0xA487, 633460}, {0xA488, 633476}, {0xA489, 633396}, {0xA48A, 633411}, {0xA48B, 633443}, {0xA48C, 633427}, {0xA490, 615504}, {0xA491, 615323}, {0xA492, 615308}, {0xA493, 615412}, {0xA494, 615034}, {0xA495, 615582}, {0xA496, 615123}, {0xA497, 615108}, {0xA498, 615367}, {0xA499, 615185}, {0xA49A, 615352}, {0xA49B, 614943}, {0xA49C, 615381}, {0xA49D, 615685}, {0xA49E, 615474}, {0xA49F, 615217}, {0xA4A0, 615597}, {0xA4A1, 615094}, {0xA4A2, 615728}, {0xA4A3, 615049}, {0xA4A4, 615064}, {0xA4A5, 614959}, {0xA4A6, 615139}, {0xA4A7, 615428}, {0xA4A8, 615612}, {0xA4A9, 615460}, {0xA4AA, 615249}, {0xA4AB, 615713}, {0xA4AC, 615489}, {0xA4AD, 615170}, {0xA4AE, 615670}, {0xA4AF, 615641}, {0xA4B0, 615567}, {0xA4B1, 615626}, {0xA4B2, 615699}, {0xA4B3, 615280}, {0xA4B4, 615444}, {0xA4B5, 615265}, {0xA4B6, 615155}, {0xA4B7, 615233}, {0xA4B8, 615656}, {0xA4B9, 615080}, {0xA4BA, 615551}, {0xA4BB, 615337}, {0xA4BC, 615020}, {0xA4BD, 615004}, {0xA4BE, 614989}, {0xA4BF, 615201}, {0xA4C0, 615519}, {0xA4C1, 615743}, {0xA4C2, 615535}, {0xA4C3, 614974}, {0xA4C4, 615758}, {0xA4C5, 615396}, {0xA4C6, 615294}, {0xA4D0, 431052}, {0xA4D1, 431385}, {0xA4D2, 431400}, {0xA4D3, 431098}, {0xA4D4, 431447}, {0xA4D5, 431462}, {0xA4D6, 431173}, {0xA4D7, 431264}, {0xA4D8, 431279}, {0xA4D9, 431249}, {0xA4DA, 431067}, {0xA4DB, 431082}, {0xA4DC, 431113}, {0xA4DD, 431623}, {0xA4DE, 431639}, {0xA4DF, 431310}, {0xA4E0, 431325}, {0xA4E1, 431295}, {0xA4E2, 431416}, {0xA4E3, 431760}, {0xA4E4, 431745}, {0xA4E5, 431340}, {0xA4E6, 431204}, {0xA4E7, 431715}, {0xA4E8, 431219}, {0xA4E9, 431158}, {0xA4EA, 431700}, {0xA4EB, 431431}, {0xA4EC, 431730}, {0xA4ED, 431188}, {0xA4EE, 431023}, {0xA4EF, 431037}, {0xA4F0, 431129}, {0xA4F1, 431143}, {0xA4F2, 431235}, {0xA4F3, 431356}, {0xA4F4, 431656}, {0xA4F5, 431670}, {0xA4F6, 431685}, {0xA4F7, 431370}, {0xA4F8, 431576}, {0xA4F9, 431600}, {0xA4FA, 431502}, {0xA4FB, 431478}, {0xA4FC, 431552}, {0xA4FD, 431527}, {0xA4FE, 431776}, {0xA4FF, 431799}, {0xA500, 599241}, {0xA501, 599257}, {0xA502, 599741}, {0xA503, 602586}, {0xA504, 602603}, {0xA505, 601726}, {0xA506, 598597}, {0xA507, 598546}, {0xA508, 600512}, {0xA509, 600203}, {0xA50A, 600668}, {0xA50B, 599454}, {0xA50C, 599322}, {0xA50D, 602455}, {0xA50E, 602189}, {0xA50F, 602240}, {0xA510, 598946}, {0xA511, 599000}, {0xA512, 600356}, {0xA513, 601840}, {0xA514, 598895}, {0xA515, 600875}, {0xA516, 601954}, {0xA517, 602005}, {0xA518, 602918}, {0xA519, 602969}, {0xA51A, 598781}, {0xA51B, 599954}, {0xA51C, 601373}, {0xA51D, 602804}, {0xA51E, 600085}, {0xA51F, 601194}, {0xA520, 599593}, {0xA521, 600615}, {0xA522, 601089}, {0xA523, 601543}, {0xA524, 599891}, {0xA525, 599906}, {0xA526, 599775}, {0xA527, 599791}, {0xA528, 602638}, {0xA529, 602654}, {0xA52A, 601743}, {0xA52B, 598615}, {0xA52C, 598684}, {0xA52D, 600530}, {0xA52E, 600239}, {0xA52F, 600687}, {0xA530, 599490}, {0xA531, 599339}, {0xA532, 602472}, {0xA533, 602327}, {0xA534, 602258}, {0xA535, 599092}, {0xA536, 599019}, {0xA537, 600397}, {0xA538, 601857}, {0xA539, 599161}, {0xA53A, 600893}, {0xA53B, 602092}, {0xA53C, 602023}, {0xA53D, 603056}, {0xA53E, 602987}, {0xA53F, 598798}, {0xA540, 599971}, {0xA541, 601391}, {0xA542, 602821}, {0xA543, 600102}, {0xA544, 601232}, {0xA545, 599627}, {0xA546, 600760}, {0xA547, 601323}, {0xA548, 601561}, {0xA549, 598483}, {0xA54A, 598498}, {0xA54B, 601122}, {0xA54C, 599692}, {0xA54D, 599708}, {0xA54E, 602537}, {0xA54F, 602553}, {0xA550, 601694}, {0xA551, 598563}, {0xA552, 598514}, {0xA553, 600478}, {0xA554, 600151}, {0xA555, 600168}, {0xA556, 600632}, {0xA557, 599420}, {0xA558, 599290}, {0xA559, 602423}, {0xA55A, 602157}, {0xA55B, 602206}, {0xA55C, 598912}, {0xA55D, 598964}, {0xA55E, 600324}, {0xA55F, 601808}, {0xA560, 598863}, {0xA561, 600841}, {0xA562, 601922}, {0xA563, 601971}, {0xA564, 602886}, {0xA565, 602935}, {0xA566, 598749}, {0xA567, 599922}, {0xA568, 601339}, {0xA569, 602772}, {0xA56A, 600036}, {0xA56B, 600052}, {0xA56C, 601158}, {0xA56D, 599404}, {0xA56E, 600462}, {0xA56F, 600825}, {0xA570, 601509}, {0xA571, 601661}, {0xA572, 601677}, {0xA573, 599841}, {0xA574, 602704}, {0xA575, 602721}, {0xA576, 601775}, {0xA577, 598649}, {0xA578, 598716}, {0xA579, 600564}, {0xA57A, 600273}, {0xA57B, 600723}, {0xA57C, 599542}, {0xA57D, 599371}, {0xA57E, 602504}, {0xA57F, 602359}, {0xA580, 602292}, {0xA581, 599126}, {0xA582, 599055}, {0xA583, 600429}, {0xA584, 601889}, {0xA585, 599193}, {0xA586, 601038}, {0xA587, 602124}, {0xA588, 602057}, {0xA589, 603088}, {0xA58A, 603021}, {0xA58B, 598830}, {0xA58C, 600003}, {0xA58D, 601425}, {0xA58E, 602853}, {0xA58F, 600134}, {0xA590, 601268}, {0xA591, 599659}, {0xA592, 600792}, {0xA593, 601476}, {0xA594, 601595}, {0xA595, 602392}, {0xA596, 602407}, {0xA597, 599858}, {0xA598, 599874}, {0xA599, 602739}, {0xA59A, 602755}, {0xA59B, 601792}, {0xA59C, 598667}, {0xA59D, 598733}, {0xA59E, 600582}, {0xA59F, 600291}, {0xA5A0, 600742}, {0xA5A1, 599560}, {0xA5A2, 599388}, {0xA5A3, 602521}, {0xA5A4, 602376}, {0xA5A5, 602310}, {0xA5A6, 599144}, {0xA5A7, 599074}, {0xA5A8, 600446}, {0xA5A9, 601906}, {0xA5AA, 599210}, {0xA5AB, 601056}, {0xA5AC, 602141}, {0xA5AD, 602075}, {0xA5AE, 603105}, {0xA5AF, 603039}, {0xA5B0, 598847}, {0xA5B1, 600020}, {0xA5B2, 601443}, {0xA5B3, 602870}, {0xA5B4, 600308}, {0xA5B5, 601287}, {0xA5B6, 599676}, {0xA5B7, 600809}, {0xA5B8, 601493}, {0xA5B9, 601613}, {0xA5BA, 601630}, {0xA5BB, 601645}, {0xA5BC, 601305}, {0xA5BD, 599808}, {0xA5BE, 599824}, {0xA5BF, 602671}, {0xA5C0, 602687}, {0xA5C1, 601759}, {0xA5C2, 598632}, {0xA5C3, 598700}, {0xA5C4, 600547}, {0xA5C5, 600256}, {0xA5C6, 600705}, {0xA5C7, 599507}, {0xA5C8, 599524}, {0xA5C9, 599355}, {0xA5CA, 602488}, {0xA5CB, 602343}, {0xA5CC, 602275}, {0xA5CD, 599109}, {0xA5CE, 599037}, {0xA5CF, 600413}, {0xA5D0, 601873}, {0xA5D1, 599177}, {0xA5D2, 600910}, {0xA5D3, 602108}, {0xA5D4, 602040}, {0xA5D5, 603072}, {0xA5D6, 603004}, {0xA5D7, 598814}, {0xA5D8, 599987}, {0xA5D9, 601408}, {0xA5DA, 602837}, {0xA5DB, 600118}, {0xA5DC, 601250}, {0xA5DD, 599643}, {0xA5DE, 600776}, {0xA5DF, 601460}, {0xA5E0, 601578}, {0xA5E1, 599226}, {0xA5E2, 599274}, {0xA5E3, 601140}, {0xA5E4, 599725}, {0xA5E5, 599758}, {0xA5E6, 602570}, {0xA5E7, 602621}, {0xA5E8, 601710}, {0xA5E9, 598580}, {0xA5EA, 598530}, {0xA5EB, 600495}, {0xA5EC, 600186}, {0xA5ED, 600221}, {0xA5EE, 600650}, {0xA5EF, 599437}, {0xA5F0, 599472}, {0xA5F1, 599306}, {0xA5F2, 602439}, {0xA5F3, 602173}, {0xA5F4, 602223}, {0xA5F5, 598929}, {0xA5F6, 598982}, {0xA5F7, 600340}, {0xA5F8, 601824}, {0xA5F9, 598879}, {0xA5FA, 600858}, {0xA5FB, 601938}, {0xA5FC, 601988}, {0xA5FD, 602902}, {0xA5FE, 602952}, {0xA5FF, 598765}, {0xA600, 599938}, {0xA601, 601356}, {0xA602, 602788}, {0xA603, 600069}, {0xA604, 601176}, {0xA605, 601213}, {0xA606, 599577}, {0xA607, 599610}, {0xA608, 600599}, {0xA609, 601073}, {0xA60A, 601526}, {0xA60B, 601106}, {0xA60C, 600373}, {0xA60D, 598291}, {0xA60E, 598451}, {0xA60F, 598465}, {0xA610, 600949}, {0xA611, 600971}, {0xA612, 601015}, {0xA613, 603201}, {0xA614, 603234}, {0xA615, 603297}, {0xA616, 603267}, {0xA617, 603121}, {0xA618, 603186}, {0xA619, 603282}, {0xA61A, 603137}, {0xA61B, 603169}, {0xA61C, 603251}, {0xA61D, 603313}, {0xA61E, 603153}, {0xA61F, 603218}, {0xA620, 598436}, {0xA621, 598362}, {0xA622, 598422}, {0xA623, 598406}, {0xA624, 598332}, {0xA625, 598317}, {0xA626, 598392}, {0xA627, 598376}, {0xA628, 598301}, {0xA629, 598347}, {0xA62A, 600993}, {0xA62B, 600927}, {0xA640, 226803}, {0xA641, 232776}, {0xA642, 222007}, {0xA643, 228229}, {0xA644, 225059}, {0xA645, 231136}, {0xA646, 223528}, {0xA647, 229662}, {0xA648, 221878}, {0xA649, 228108}, {0xA64A, 224625}, {0xA64B, 230697}, {0xA64C, 221504}, {0xA64D, 227754}, {0xA64E, 224662}, {0xA64F, 230732}, {0xA650, 226524}, {0xA651, 232513}, {0xA652, 223763}, {0xA653, 229885}, {0xA654, 225133}, {0xA655, 231206}, {0xA656, 223557}, {0xA657, 229689}, {0xA658, 221781}, {0xA659, 228017}, {0xA65A, 221468}, {0xA65B, 227720}, {0xA65C, 223633}, {0xA65D, 229761}, {0xA65E, 226638}, {0xA65F, 232621}, {0xA660, 225096}, {0xA661, 231171}, {0xA662, 225648}, {0xA663, 231691}, {0xA664, 225680}, {0xA665, 231721}, {0xA666, 225712}, {0xA667, 231751}, {0xA668, 224589}, {0xA669, 230663}, {0xA66A, 221432}, {0xA66B, 227686}, {0xA66C, 221908}, {0xA66D, 228136}, {0xA66E, 227129}, {0xA66F, 180155}, {0xA670, 180051}, {0xA671, 178798}, {0xA672, 180088}, {0xA673, 552300}, {0xA67C, 178881}, {0xA67D, 179962}, {0xA67E, 227113}, {0xA67F, 227217}, {0xA680, 221951}, {0xA681, 228177}, {0xA682, 222066}, {0xA683, 228284}, {0xA684, 226987}, {0xA685, 232950}, {0xA686, 221589}, {0xA687, 227835}, {0xA688, 222095}, {0xA689, 228311}, {0xA68A, 225958}, {0xA68B, 231983}, {0xA68C, 226117}, {0xA68D, 232132}, {0xA68E, 226088}, {0xA68F, 232105}, {0xA690, 226059}, {0xA691, 232078}, {0xA692, 225860}, {0xA693, 231891}, {0xA694, 223228}, {0xA695, 229380}, {0xA696, 225619}, {0xA697, 231664}, {0xA6A0, 57899}, {0xA6A1, 58015}, {0xA6A2, 74704}, {0xA6A3, 58171}, {0xA6A4, 57914}, {0xA6A5, 74376}, {0xA6A6, 74637}, {0xA6A7, 58707}, {0xA6A8, 58690}, {0xA6A9, 58000}, {0xA6AA, 58205}, {0xA6AB, 58722}, {0xA6AC, 74446}, {0xA6AD, 74428}, {0xA6AE, 58221}, {0xA6AF, 58356}, {0xA6B0, 74620}, {0xA6B1, 58456}, {0xA6B2, 58546}, {0xA6B3, 58289}, {0xA6B4, 74603}, {0xA6B5, 58424}, {0xA6B6, 74535}, {0xA6B7, 74587}, {0xA6B8, 74516}, {0xA6B9, 74498}, {0xA6BA, 58187}, {0xA6BB, 58048}, {0xA6BC, 58672}, {0xA6BD, 58656}, {0xA6BE, 58583}, {0xA6BF, 74768}, {0xA6C0, 74570}, {0xA6C1, 74785}, {0xA6C2, 74752}, {0xA6C3, 58602}, {0xA6C4, 58065}, {0xA6C5, 58755}, {0xA6C6, 58565}, {0xA6C7, 58620}, {0xA6C8, 74342}, {0xA6C9, 74735}, {0xA6CA, 58738}, {0xA6CB, 57950}, {0xA6CC, 74463}, {0xA6CD, 58273}, {0xA6CE, 58392}, {0xA6CF, 58530}, {0xA6D0, 74410}, {0xA6D1, 74359}, {0xA6D2, 58031}, {0xA6D3, 58509}, {0xA6D4, 58491}, {0xA6D5, 58474}, {0xA6D6, 74553}, {0xA6D7, 74324}, {0xA6D8, 57984}, {0xA6D9, 57967}, {0xA6DA, 74719}, {0xA6DB, 58440}, {0xA6DC, 58240}, {0xA6DD, 74308}, {0xA6DE, 58256}, {0xA6DF, 58099}, {0xA6E0, 58338}, {0xA6E1, 74393}, {0xA6E2, 58375}, {0xA6E3, 58304}, {0xA6E4, 74688}, {0xA6E5, 58083}, {0xA6E6, 58408}, {0xA6E7, 58320}, {0xA6E8, 74671}, {0xA6E9, 58154}, {0xA6EA, 74654}, {0xA6EB, 58638}, {0xA6EC, 74479}, {0xA6ED, 57930}, {0xA6EE, 58135}, {0xA6EF, 58115}, {0xA6F0, 57811}, {0xA6F1, 57840}, {0xA6F2, 74802}, {0xA6F3, 57883}, {0xA6F4, 57799}, {0xA6F5, 57871}, {0xA6F6, 74836}, {0xA6F7, 74816}, {0xA700, 478272}, {0xA701, 478119}, {0xA702, 478382}, {0xA703, 478232}, {0xA704, 478310}, {0xA705, 478158}, {0xA706, 478346}, {0xA707, 478195}, {0xA708, 478860}, {0xA709, 479331}, {0xA70A, 480192}, {0xA70B, 479617}, {0xA70C, 479037}, {0xA70D, 478807}, {0xA70E, 479284}, {0xA70F, 480146}, {0xA710, 479571}, {0xA711, 478985}, {0xA712, 478903}, {0xA713, 479368}, {0xA714, 480228}, {0xA715, 479833}, {0xA716, 479079}, {0xA717, 478595}, {0xA718, 478569}, {0xA719, 478534}, {0xA71A, 480082}, {0xA71B, 480672}, {0xA71C, 480549}, {0xA71D, 480583}, {0xA71E, 480623}, {0xA71F, 479721}, {0xA720, 483446}, {0xA721, 483483}, {0xA722, 382913}, {0xA723, 400992}, {0xA724, 382874}, {0xA725, 400955}, {0xA726, 384073}, {0xA727, 402525}, {0xA728, 391373}, {0xA729, 412520}, {0xA72A, 391121}, {0xA72B, 411631}, {0xA72C, 381204}, {0xA72D, 398882}, {0xA72E, 381235}, {0xA72F, 398911}, {0xA730, 395227}, {0xA731, 395894}, {0xA732, 380273}, {0xA733, 397716}, {0xA734, 380450}, {0xA735, 397897}, {0xA736, 380474}, {0xA737, 397919}, {0xA738, 380498}, {0xA739, 397941}, {0xA73A, 380522}, {0xA73B, 397963}, {0xA73C, 380566}, {0xA73D, 398005}, {0xA73E, 389711}, {0xA73F, 409346}, {0xA740, 385483}, {0xA741, 404035}, {0xA742, 385286}, {0xA743, 403809}, {0xA744, 385518}, {0xA745, 404068}, {0xA746, 380831}, {0xA747, 398393}, {0xA748, 385903}, {0xA749, 404518}, {0xA74A, 388072}, {0xA74B, 407243}, {0xA74C, 388120}, {0xA74D, 407289}, {0xA74E, 388675}, {0xA74F, 407819}, {0xA750, 389021}, {0xA751, 408313}, {0xA752, 388874}, {0xA753, 408096}, {0xA754, 388944}, {0xA755, 408240}, {0xA756, 389141}, {0xA757, 408517}, {0xA758, 389097}, {0xA759, 408408}, {0xA75A, 389217}, {0xA75B, 408619}, {0xA75C, 389784}, {0xA75D, 409617}, {0xA75E, 392729}, {0xA75F, 413961}, {0xA760, 392938}, {0xA761, 414234}, {0xA762, 392904}, {0xA763, 414202}, {0xA764, 390934}, {0xA765, 411424}, {0xA766, 390973}, {0xA767, 411461}, {0xA768, 392878}, {0xA769, 414178}, {0xA76A, 383003}, {0xA76B, 401193}, {0xA76C, 385000}, {0xA76D, 403470}, {0xA76E, 381179}, {0xA76F, 398859}, {0xA770, 483662}, {0xA771, 399703}, {0xA772, 405103}, {0xA773, 405459}, {0xA774, 406187}, {0xA775, 409594}, {0xA776, 395863}, {0xA777, 411689}, {0xA778, 413821}, {0xA779, 384788}, {0xA77A, 403236}, {0xA77B, 384819}, {0xA77C, 403265}, {0xA77D, 384850}, {0xA77E, 391245}, {0xA77F, 412038}, {0xA780, 391283}, {0xA781, 412102}, {0xA782, 384881}, {0xA783, 403323}, {0xA784, 384912}, {0xA785, 403352}, {0xA786, 384943}, {0xA787, 403381}, {0xA788, 479533}, {0xA789, 478455}, {0xA78A, 480887}, {0xA78B, 390329}, {0xA78C, 410243}, {0xA78D, 391215}, {0xA78E, 404749}, {0xA790, 386575}, {0xA791, 405719}, {0xA7A0, 383547}, {0xA7A1, 401922}, {0xA7A2, 385440}, {0xA7A3, 403955}, {0xA7A4, 386843}, {0xA7A5, 406012}, {0xA7A6, 389600}, {0xA7A7, 409143}, {0xA7A8, 390247}, {0xA7A9, 410126}, {0xA7FA, 395988}, {0xA7FB, 394398}, {0xA7FC, 394433}, {0xA7FD, 394363}, {0xA7FE, 394331}, {0xA7FF, 394297}, {0xA800, 564947}, {0xA801, 565251}, {0xA802, 565828}, {0xA803, 565671}, {0xA804, 565159}, {0xA805, 565436}, {0xA806, 565855}, {0xA807, 565344}, {0xA808, 565320}, {0xA809, 565205}, {0xA80A, 565181}, {0xA80B, 565801}, {0xA80C, 565040}, {0xA80D, 565016}, {0xA80E, 565297}, {0xA80F, 565273}, {0xA810, 565647}, {0xA811, 565622}, {0xA812, 565088}, {0xA813, 565063}, {0xA814, 565599}, {0xA815, 565575}, {0xA816, 565136}, {0xA817, 565112}, {0xA818, 565413}, {0xA819, 565482}, {0xA81A, 565458}, {0xA81B, 564993}, {0xA81C, 564969}, {0xA81D, 565390}, {0xA81E, 565505}, {0xA81F, 565367}, {0xA820, 565528}, {0xA821, 565552}, {0xA822, 565228}, {0xA823, 565881}, {0xA824, 565933}, {0xA825, 565986}, {0xA826, 565907}, {0xA827, 565959}, {0xA828, 565693}, {0xA829, 565720}, {0xA82A, 565747}, {0xA82B, 565774}, {0xA830, 507706}, {0xA831, 507676}, {0xA832, 507774}, {0xA833, 507739}, {0xA834, 507644}, {0xA835, 507810}, {0xA836, 507903}, {0xA837, 507848}, {0xA838, 507928}, {0xA839, 507877}, {0xA840, 524695}, {0xA841, 524714}, {0xA842, 524600}, {0xA843, 524791}, {0xA844, 524418}, {0xA845, 524465}, {0xA846, 524676}, {0xA847, 524831}, {0xA848, 525009}, {0xA849, 525028}, {0xA84A, 524485}, {0xA84B, 524772}, {0xA84C, 524869}, {0xA84D, 524888}, {0xA84E, 524399}, {0xA84F, 524753}, {0xA850, 525048}, {0xA851, 525068}, {0xA852, 524524}, {0xA853, 525204}, {0xA854, 525280}, {0xA855, 525261}, {0xA856, 524985}, {0xA857, 525242}, {0xA858, 524927}, {0xA859, 524734}, {0xA85A, 524965}, {0xA85B, 524946}, {0xA85C, 524639}, {0xA85D, 524323}, {0xA85E, 524658}, {0xA85F, 525130}, {0xA860, 524544}, {0xA861, 524851}, {0xA862, 524908}, {0xA863, 525223}, {0xA864, 524581}, {0xA865, 524619}, {0xA866, 524562}, {0xA867, 525400}, {0xA868, 525429}, {0xA869, 525089}, {0xA86A, 525109}, {0xA86B, 524504}, {0xA86C, 524811}, {0xA86D, 524341}, {0xA86E, 525174}, {0xA86F, 525148}, {0xA870, 524370}, {0xA871, 525371}, {0xA872, 525458}, {0xA873, 524437}, {0xA874, 525345}, {0xA875, 524297}, {0xA876, 525326}, {0xA877, 525300}, {0xA880, 546966}, {0xA881, 547014}, {0xA882, 545871}, {0xA883, 545891}, {0xA884, 546233}, {0xA885, 546253}, {0xA886, 546769}, {0xA887, 546789}, {0xA888, 546888}, {0xA889, 546916}, {0xA88A, 546831}, {0xA88B, 546859}, {0xA88C, 546128}, {0xA88D, 546148}, {0xA88E, 545912}, {0xA88F, 546511}, {0xA890, 546531}, {0xA891, 545933}, {0xA892, 546317}, {0xA893, 546338}, {0xA894, 546169}, {0xA895, 546190}, {0xA896, 546445}, {0xA897, 545997}, {0xA898, 546018}, {0xA899, 546274}, {0xA89A, 546295}, {0xA89B, 546489}, {0xA89C, 546724}, {0xA89D, 546746}, {0xA89E, 546061}, {0xA89F, 546083}, {0xA8A0, 546467}, {0xA8A1, 546681}, {0xA8A2, 546702}, {0xA8A3, 546040}, {0xA8A4, 546106}, {0xA8A5, 546424}, {0xA8A6, 546552}, {0xA8A7, 546573}, {0xA8A8, 545954}, {0xA8A9, 545975}, {0xA8AA, 546403}, {0xA8AB, 546945}, {0xA8AC, 546595}, {0xA8AD, 546360}, {0xA8AE, 546810}, {0xA8AF, 546637}, {0xA8B0, 546659}, {0xA8B1, 546616}, {0xA8B2, 546212}, {0xA8B3, 546381}, {0xA8B4, 545578}, {0xA8B5, 547038}, {0xA8B6, 547162}, {0xA8B7, 547186}, {0xA8B8, 547260}, {0xA8B9, 547284}, {0xA8BA, 547374}, {0xA8BB, 547406}, {0xA8BC, 547309}, {0xA8BD, 547341}, {0xA8BE, 547113}, {0xA8BF, 547137}, {0xA8C0, 547063}, {0xA8C1, 547211}, {0xA8C2, 547235}, {0xA8C3, 547088}, {0xA8C4, 546991}, {0xA8CE, 545610}, {0xA8CF, 545847}, {0xA8D0, 545825}, {0xA8D1, 545716}, {0xA8D2, 545804}, {0xA8D3, 545781}, {0xA8D4, 545672}, {0xA8D5, 545650}, {0xA8D6, 545760}, {0xA8D7, 545737}, {0xA8D8, 545627}, {0xA8D9, 545694}, {0xA8E0, 180468}, {0xA8E1, 180309}, {0xA8E2, 180437}, {0xA8E3, 180404}, {0xA8E4, 180245}, {0xA8E5, 180213}, {0xA8E6, 180373}, {0xA8E7, 180340}, {0xA8E8, 180180}, {0xA8E9, 180277}, {0xA8EA, 180500}, {0xA8EB, 180654}, {0xA8EC, 180530}, {0xA8ED, 180561}, {0xA8EE, 180592}, {0xA8EF, 180623}, {0xA8F0, 180684}, {0xA8F1, 180715}, {0xA8F2, 238796}, {0xA8F3, 238602}, {0xA8F4, 238637}, {0xA8F5, 238570}, {0xA8F6, 238536}, {0xA8F7, 238499}, {0xA8F8, 238771}, {0xA8F9, 236606}, {0xA8FA, 236328}, {0xA8FB, 236652}, {0xA900, 371758}, {0xA901, 371659}, {0xA902, 371739}, {0xA903, 371718}, {0xA904, 371619}, {0xA905, 371599}, {0xA906, 371699}, {0xA907, 371678}, {0xA908, 371578}, {0xA909, 371639}, {0xA90A, 371929}, {0xA90B, 371948}, {0xA90C, 371853}, {0xA90D, 372025}, {0xA90E, 372161}, {0xA90F, 372180}, {0xA910, 372296}, {0xA911, 372045}, {0xA912, 372200}, {0xA913, 371891}, {0xA914, 372006}, {0xA915, 372103}, {0xA916, 372122}, {0xA917, 371987}, {0xA918, 371834}, {0xA919, 371796}, {0xA91A, 372142}, {0xA91B, 372277}, {0xA91C, 371968}, {0xA91D, 372258}, {0xA91E, 372219}, {0xA91F, 371872}, {0xA920, 372239}, {0xA921, 371815}, {0xA922, 371778}, {0xA923, 372065}, {0xA924, 371911}, {0xA925, 372084}, {0xA926, 372489}, {0xA927, 372420}, {0xA928, 372472}, {0xA929, 372437}, {0xA92A, 372455}, {0xA92B, 372399}, {0xA92C, 372352}, {0xA92D, 372372}, {0xA92E, 372315}, {0xA92F, 372333}, {0xA930, 534361}, {0xA931, 534310}, {0xA932, 534465}, {0xA933, 534590}, {0xA934, 534293}, {0xA935, 534430}, {0xA936, 534539}, {0xA937, 534259}, {0xA938, 534395}, {0xA939, 534276}, {0xA93A, 534344}, {0xA93B, 534502}, {0xA93C, 534573}, {0xA93D, 534556}, {0xA93E, 534378}, {0xA93F, 534624}, {0xA940, 534607}, {0xA941, 534327}, {0xA942, 534412}, {0xA943, 534483}, {0xA944, 534447}, {0xA945, 534520}, {0xA946, 534243}, {0xA947, 534779}, {0xA948, 534819}, {0xA949, 534717}, {0xA94A, 534675}, {0xA94B, 534799}, {0xA94C, 534696}, {0xA94D, 534758}, {0xA94E, 534737}, {0xA94F, 534194}, {0xA950, 534170}, {0xA951, 534219}, {0xA952, 534146}, {0xA953, 534661}, {0xA95F, 534641}, {0xA960, 331414}, {0xA961, 331443}, {0xA962, 331501}, {0xA963, 331355}, {0xA964, 330220}, {0xA965, 330360}, {0xA966, 330461}, {0xA967, 330427}, {0xA968, 330249}, {0xA969, 330305}, {0xA96A, 330394}, {0xA96B, 330154}, {0xA96C, 330333}, {0xA96D, 330098}, {0xA96E, 330190}, {0xA96F, 329152}, {0xA970, 329236}, {0xA971, 329209}, {0xA972, 329916}, {0xA973, 329672}, {0xA974, 329644}, {0xA975, 331186}, {0xA976, 328782}, {0xA977, 328609}, {0xA978, 330964}, {0xA979, 331218}, {0xA97A, 329504}, {0xA97B, 328502}, {0xA97C, 331275}, {0xA980, 361265}, {0xA981, 361200}, {0xA982, 361245}, {0xA983, 361289}, {0xA984, 359833}, {0xA985, 360155}, {0xA986, 360137}, {0xA987, 360178}, {0xA988, 360820}, {0xA989, 360559}, {0xA98A, 360416}, {0xA98B, 360442}, {0xA98C, 360056}, {0xA98D, 359851}, {0xA98E, 360522}, {0xA98F, 360245}, {0xA990, 360289}, {0xA991, 360264}, {0xA992, 360074}, {0xA993, 360093}, {0xA994, 360396}, {0xA995, 359914}, {0xA996, 359933}, {0xA997, 360197}, {0xA998, 360496}, {0xA999, 360216}, {0xA99A, 360476}, {0xA99B, 360770}, {0xA99C, 360790}, {0xA99D, 360006}, {0xA99E, 360026}, {0xA99F, 360371}, {0xA9A0, 360726}, {0xA9A1, 360745}, {0xA9A2, 359958}, {0xA9A3, 359977}, {0xA9A4, 360352}, {0xA9A5, 360540}, {0xA9A6, 360584}, {0xA9A7, 359870}, {0xA9A8, 359889}, {0xA9A9, 360333}, {0xA9AA, 360857}, {0xA9AB, 360609}, {0xA9AC, 360628}, {0xA9AD, 360314}, {0xA9AE, 360838}, {0xA9AF, 360701}, {0xA9B0, 360672}, {0xA9B1, 360653}, {0xA9B2, 360118}, {0xA9B3, 361220}, {0xA9B4, 361481}, {0xA9B5, 361508}, {0xA9B6, 361535}, {0xA9B7, 361560}, {0xA9B8, 361397}, {0xA9B9, 361422}, {0xA9BA, 361454}, {0xA9BB, 361340}, {0xA9BC, 361371}, {0xA9BD, 359547}, {0xA9BE, 359577}, {0xA9BF, 359517}, {0xA9C0, 361137}, {0xA9C1, 359809}, {0xA9C2, 361175}, {0xA9C3, 360919}, {0xA9C4, 361025}, {0xA9C5, 360984}, {0xA9C6, 361117}, {0xA9C7, 361045}, {0xA9C8, 360963}, {0xA9C9, 361004}, {0xA9CA, 360876}, {0xA9CB, 360895}, {0xA9CC, 361067}, {0xA9CD, 361311}, {0xA9CF, 361154}, {0xA9D0, 359789}, {0xA9D1, 359690}, {0xA9D2, 359770}, {0xA9D3, 359749}, {0xA9D4, 359650}, {0xA9D5, 359630}, {0xA9D6, 359730}, {0xA9D7, 359709}, {0xA9D8, 359609}, {0xA9D9, 359670}, {0xA9DE, 361089}, {0xA9DF, 360939}, {0xAA00, 129186}, {0xAA01, 129625}, {0xAA02, 129999}, {0xAA03, 129342}, {0xAA04, 129200}, {0xAA05, 129861}, {0xAA06, 129670}, {0xAA07, 129685}, {0xAA08, 129579}, {0xAA09, 129594}, {0xAA0A, 129778}, {0xAA0B, 129762}, {0xAA0C, 129262}, {0xAA0D, 129278}, {0xAA0E, 129639}, {0xAA0F, 129654}, {0xAA10, 129828}, {0xAA11, 129795}, {0xAA12, 129811}, {0xAA13, 129968}, {0xAA14, 129983}, {0xAA15, 129295}, {0xAA16, 129326}, {0xAA17, 129845}, {0xAA18, 129747}, {0xAA19, 129310}, {0xAA1A, 129875}, {0xAA1B, 129906}, {0xAA1C, 129890}, {0xAA1D, 129215}, {0xAA1E, 129246}, {0xAA1F, 129731}, {0xAA20, 129716}, {0xAA21, 129230}, {0xAA22, 130028}, {0xAA23, 129922}, {0xAA24, 129701}, {0xAA25, 130013}, {0xAA26, 129952}, {0xAA27, 129937}, {0xAA28, 129610}, {0xAA29, 130150}, {0xAA2A, 130226}, {0xAA2B, 130244}, {0xAA2C, 130207}, {0xAA2D, 130300}, {0xAA2E, 130281}, {0xAA2F, 130263}, {0xAA30, 130169}, {0xAA31, 130188}, {0xAA32, 130318}, {0xAA33, 129003}, {0xAA34, 128957}, {0xAA35, 128934}, {0xAA36, 128980}, {0xAA40, 129397}, {0xAA41, 129377}, {0xAA42, 129457}, {0xAA43, 128905}, {0xAA44, 129356}, {0xAA45, 129539}, {0xAA46, 129437}, {0xAA47, 129478}, {0xAA48, 129559}, {0xAA49, 129498}, {0xAA4A, 129417}, {0xAA4B, 129518}, {0xAA4C, 128877}, {0xAA4D, 128849}, {0xAA50, 129170}, {0xAA51, 129091}, {0xAA52, 129155}, {0xAA53, 129138}, {0xAA54, 129059}, {0xAA55, 129043}, {0xAA56, 129123}, {0xAA57, 129106}, {0xAA58, 129026}, {0xAA59, 129075}, {0xAA5C, 130096}, {0xAA5D, 130043}, {0xAA5E, 130066}, {0xAA5F, 130120}, {0xAA60, 496815}, {0xAA61, 496660}, {0xAA62, 496685}, {0xAA63, 496891}, {0xAA64, 496916}, {0xAA65, 496967}, {0xAA66, 497043}, {0xAA67, 497069}, {0xAA68, 496711}, {0xAA69, 496737}, {0xAA6A, 496764}, {0xAA6B, 496942}, {0xAA6C, 497018}, {0xAA6D, 496840}, {0xAA6E, 496865}, {0xAA6F, 496790}, {0xAA70, 498329}, {0xAA71, 497096}, {0xAA72, 497121}, {0xAA73, 496993}, {0xAA74, 498274}, {0xAA75, 498302}, {0xAA76, 498247}, {0xAA77, 499309}, {0xAA78, 499342}, {0xAA79, 499367}, {0xAA7A, 496151}, {0xAA7B, 498759}, {0xAA80, 575980}, {0xAA81, 575406}, {0xAA82, 575956}, {0xAA83, 575381}, {0xAA84, 575931}, {0xAA85, 575355}, {0xAA86, 575885}, {0xAA87, 575307}, {0xAA88, 576049}, {0xAA89, 575478}, {0xAA8A, 575816}, {0xAA8B, 575235}, {0xAA8C, 575792}, {0xAA8D, 575210}, {0xAA8E, 576212}, {0xAA8F, 575648}, {0xAA90, 576096}, {0xAA91, 575527}, {0xAA92, 575839}, {0xAA93, 575259}, {0xAA94, 576259}, {0xAA95, 575697}, {0xAA96, 576235}, {0xAA97, 575672}, {0xAA98, 576073}, {0xAA99, 575503}, {0xAA9A, 575769}, {0xAA9B, 575186}, {0xAA9C, 576166}, {0xAA9D, 575600}, {0xAA9E, 576142}, {0xAA9F, 575575}, {0xAAA0, 575862}, {0xAAA1, 575283}, {0xAAA2, 576026}, {0xAAA3, 575454}, {0xAAA4, 576305}, {0xAAA5, 575745}, {0xAAA6, 576189}, {0xAAA7, 575624}, {0xAAA8, 576003}, {0xAAA9, 575430}, {0xAAAA, 576282}, {0xAAAB, 575721}, {0xAAAC, 575908}, {0xAAAD, 575331}, {0xAAAE, 576120}, {0xAAAF, 575552}, {0xAAB0, 576328}, {0xAAB1, 576563}, {0xAAB2, 576671}, {0xAAB3, 576758}, {0xAAB4, 576723}, {0xAAB5, 576654}, {0xAAB6, 576706}, {0xAAB7, 576346}, {0xAAB8, 576688}, {0xAAB9, 576776}, {0xAABA, 576740}, {0xAABB, 576617}, {0xAABC, 576636}, {0xAABD, 576599}, {0xAABE, 576581}, {0xAABF, 576473}, {0xAAC0, 576494}, {0xAAC1, 576541}, {0xAAC2, 576518}, {0xAADB, 576411}, {0xAADC, 576431}, {0xAADD, 576453}, {0xAADE, 576364}, {0xAADF, 576387}, {0xAB01, 286634}, {0xAB02, 286588}, {0xAB03, 286517}, {0xAB04, 286564}, {0xAB05, 286541}, {0xAB06, 286611}, {0xAB09, 279748}, {0xAB0A, 279702}, {0xAB0B, 279631}, {0xAB0C, 279678}, {0xAB0D, 279655}, {0xAB0E, 279725}, {0xAB11, 280145}, {0xAB12, 280101}, {0xAB13, 280033}, {0xAB14, 280078}, {0xAB15, 280056}, {0xAB16, 280123}, {0xAB20, 278841}, {0xAB21, 278987}, {0xAB22, 278939}, {0xAB23, 278865}, {0xAB24, 278914}, {0xAB25, 278890}, {0xAB26, 278963}, {0xAB28, 278241}, {0xAB29, 278375}, {0xAB2A, 278331}, {0xAB2B, 278263}, {0xAB2C, 278308}, {0xAB2D, 278286}, {0xAB2E, 278353}, {0xABC0, 475843}, {0xABC1, 476220}, {0xABC2, 475898}, {0xABC3, 475953}, {0xABC4, 476118}, {0xABC5, 476008}, {0xABC6, 475571}, {0xABC7, 476269}, {0xABC8, 475818}, {0xABC9, 476061}, {0xABCA, 476244}, {0xABCB, 476347}, {0xABCC, 476371}, {0xABCD, 475694}, {0xABCE, 476324}, {0xABCF, 475718}, {0xABD0, 476171}, {0xABD1, 475497}, {0xABD2, 475670}, {0xABD3, 475769}, {0xABD4, 476196}, {0xABD5, 475523}, {0xABD6, 475794}, {0xABD7, 475621}, {0xABD8, 475645}, {0xABD9, 475596}, {0xABDA, 475546}, {0xABDB, 475867}, {0xABDC, 475922}, {0xABDD, 475977}, {0xABDE, 476141}, {0xABDF, 476031}, {0xABE0, 476293}, {0xABE1, 476086}, {0xABE2, 475740}, {0xABE3, 476537}, {0xABE4, 476479}, {0xABE5, 476418}, {0xABE6, 476626}, {0xABE7, 476566}, {0xABE8, 476597}, {0xABE9, 476447}, {0xABEA, 476508}, {0xABEB, 475235}, {0xABEC, 476396}, {0xABED, 475212}, {0xABF0, 475473}, {0xABF1, 475354}, {0xABF2, 475450}, {0xABF3, 475425}, {0xABF4, 475306}, {0xABF5, 475282}, {0xABF6, 475402}, {0xABF7, 475377}, {0xABF8, 475257}, {0xABF9, 475330}, {0xAC00, 321}, {0xD7A3, 346}, {0xD7B0, 336842}, {0xD7B1, 336731}, {0xD7B2, 337472}, {0xD7B3, 337494}, {0xD7B4, 337517}, {0xD7B5, 337066}, {0xD7B6, 337000}, {0xD7B7, 337697}, {0xD7B8, 337787}, {0xD7B9, 336159}, {0xD7BA, 336203}, {0xD7BB, 336181}, {0xD7BC, 336249}, {0xD7BD, 336512}, {0xD7BE, 336536}, {0xD7BF, 336581}, {0xD7C0, 336559}, {0xD7C1, 336446}, {0xD7C2, 336604}, {0xD7C3, 336626}, {0xD7C4, 336404}, {0xD7C5, 335907}, {0xD7C6, 335932}, {0xD7CB, 332979}, {0xD7CC, 332829}, {0xD7CD, 335234}, {0xD7CE, 335263}, {0xD7CF, 335440}, {0xD7D0, 335500}, {0xD7D1, 335529}, {0xD7D2, 335379}, {0xD7D3, 335347}, {0xD7D4, 335565}, {0xD7D5, 334287}, {0xD7D6, 333792}, {0xD7D7, 335103}, {0xD7D8, 333892}, {0xD7D9, 334223}, {0xD7DA, 334152}, {0xD7DB, 334528}, {0xD7DC, 334487}, {0xD7DD, 332088}, {0xD7DE, 332559}, {0xD7DF, 332739}, {0xD7E0, 334991}, {0xD7E1, 332648}, {0xD7E2, 332471}, {0xD7E3, 333612}, {0xD7E4, 333512}, {0xD7E5, 333423}, {0xD7E6, 335047}, {0xD7E7, 333577}, {0xD7E8, 333365}, {0xD7E9, 333334}, {0xD7EA, 334733}, {0xD7EB, 334668}, {0xD7EC, 335166}, {0xD7ED, 335200}, {0xD7EE, 334761}, {0xD7EF, 334612}, {0xD7F0, 334582}, {0xD7F1, 334847}, {0xD7F2, 334640}, {0xD7F3, 333161}, {0xD7F4, 333122}, {0xD7F5, 335684}, {0xD7F6, 335652}, {0xD7F7, 331672}, {0xD7F8, 331701}, {0xD7F9, 334906}, {0xD7FA, 333248}, {0xD7FB, 333278}, {0xD800, 415}, {0xDB7F, 455}, {0xDB80, 612}, {0xDBFF, 648}, {0xDC00, 370}, {0xDFFF, 393}, {0xE000, 683}, {0xF8FF, 704}, {0xF900, 157997}, {0xF901, 158030}, {0xF902, 158063}, {0xF903, 158096}, {0xF904, 158129}, {0xF905, 158162}, {0xF906, 158195}, {0xF907, 158228}, {0xF908, 158261}, {0xF909, 158294}, {0xF90A, 158327}, {0xF90B, 158360}, {0xF90C, 158393}, {0xF90D, 158426}, {0xF90E, 158459}, {0xF90F, 158492}, {0xF910, 158525}, {0xF911, 158558}, {0xF912, 158591}, {0xF913, 158624}, {0xF914, 158657}, {0xF915, 158690}, {0xF916, 158723}, {0xF917, 158756}, {0xF918, 158789}, {0xF919, 158822}, {0xF91A, 158855}, {0xF91B, 158888}, {0xF91C, 158921}, {0xF91D, 158954}, {0xF91E, 158987}, {0xF91F, 159020}, {0xF920, 159053}, {0xF921, 159086}, {0xF922, 159119}, {0xF923, 159152}, {0xF924, 159185}, {0xF925, 159218}, {0xF926, 159251}, {0xF927, 159284}, {0xF928, 159317}, {0xF929, 159350}, {0xF92A, 159383}, {0xF92B, 159416}, {0xF92C, 159449}, {0xF92D, 159482}, {0xF92E, 159515}, {0xF92F, 159548}, {0xF930, 159581}, {0xF931, 159614}, {0xF932, 159647}, {0xF933, 159680}, {0xF934, 159713}, {0xF935, 159746}, {0xF936, 159779}, {0xF937, 159812}, {0xF938, 159845}, {0xF939, 159878}, {0xF93A, 159911}, {0xF93B, 159944}, {0xF93C, 159977}, {0xF93D, 160010}, {0xF93E, 160043}, {0xF93F, 160076}, {0xF940, 160109}, {0xF941, 160142}, {0xF942, 160175}, {0xF943, 160208}, {0xF944, 160241}, {0xF945, 160274}, {0xF946, 160307}, {0xF947, 160340}, {0xF948, 160373}, {0xF949, 160406}, {0xF94A, 160439}, {0xF94B, 160472}, {0xF94C, 160505}, {0xF94D, 160538}, {0xF94E, 160571}, {0xF94F, 160604}, {0xF950, 160637}, {0xF951, 160670}, {0xF952, 160703}, {0xF953, 160736}, {0xF954, 160769}, {0xF955, 160802}, {0xF956, 160835}, {0xF957, 160868}, {0xF958, 160901}, {0xF959, 160934}, {0xF95A, 160967}, {0xF95B, 161000}, {0xF95C, 161033}, {0xF95D, 161066}, {0xF95E, 161099}, {0xF95F, 161132}, {0xF960, 161165}, {0xF961, 161198}, {0xF962, 161231}, {0xF963, 161264}, {0xF964, 161297}, {0xF965, 161330}, {0xF966, 161363}, {0xF967, 161396}, {0xF968, 161429}, {0xF969, 161462}, {0xF96A, 161495}, {0xF96B, 161528}, {0xF96C, 161561}, {0xF96D, 161594}, {0xF96E, 161627}, {0xF96F, 161660}, {0xF970, 161693}, {0xF971, 161726}, {0xF972, 161759}, {0xF973, 161792}, {0xF974, 161825}, {0xF975, 161858}, {0xF976, 161891}, {0xF977, 161924}, {0xF978, 161957}, {0xF979, 161990}, {0xF97A, 162023}, {0xF97B, 162056}, {0xF97C, 162089}, {0xF97D, 162122}, {0xF97E, 162155}, {0xF97F, 162188}, {0xF980, 162221}, {0xF981, 162254}, {0xF982, 162287}, {0xF983, 162320}, {0xF984, 162353}, {0xF985, 162386}, {0xF986, 162419}, {0xF987, 162452}, {0xF988, 162485}, {0xF989, 162518}, {0xF98A, 162551}, {0xF98B, 162584}, {0xF98C, 162617}, {0xF98D, 162650}, {0xF98E, 162683}, {0xF98F, 162716}, {0xF990, 162749}, {0xF991, 162782}, {0xF992, 162815}, {0xF993, 162848}, {0xF994, 162881}, {0xF995, 162914}, {0xF996, 162947}, {0xF997, 162980}, {0xF998, 163013}, {0xF999, 163046}, {0xF99A, 163079}, {0xF99B, 163112}, {0xF99C, 163145}, {0xF99D, 163178}, {0xF99E, 163211}, {0xF99F, 163244}, {0xF9A0, 163277}, {0xF9A1, 163310}, {0xF9A2, 163343}, {0xF9A3, 163376}, {0xF9A4, 163409}, {0xF9A5, 163442}, {0xF9A6, 163475}, {0xF9A7, 163508}, {0xF9A8, 163541}, {0xF9A9, 163574}, {0xF9AA, 163607}, {0xF9AB, 163640}, {0xF9AC, 163673}, {0xF9AD, 163706}, {0xF9AE, 163739}, {0xF9AF, 163772}, {0xF9B0, 163805}, {0xF9B1, 163838}, {0xF9B2, 163871}, {0xF9B3, 163904}, {0xF9B4, 163937}, {0xF9B5, 163970}, {0xF9B6, 164003}, {0xF9B7, 164036}, {0xF9B8, 164069}, {0xF9B9, 164102}, {0xF9BA, 164135}, {0xF9BB, 164168}, {0xF9BC, 164201}, {0xF9BD, 164234}, {0xF9BE, 164267}, {0xF9BF, 164300}, {0xF9C0, 164333}, {0xF9C1, 164366}, {0xF9C2, 164399}, {0xF9C3, 164432}, {0xF9C4, 164465}, {0xF9C5, 164498}, {0xF9C6, 164531}, {0xF9C7, 164564}, {0xF9C8, 164597}, {0xF9C9, 164630}, {0xF9CA, 164663}, {0xF9CB, 164696}, {0xF9CC, 164729}, {0xF9CD, 164762}, {0xF9CE, 164795}, {0xF9CF, 164828}, {0xF9D0, 164861}, {0xF9D1, 164894}, {0xF9D2, 164927}, {0xF9D3, 164960}, {0xF9D4, 164993}, {0xF9D5, 165026}, {0xF9D6, 165059}, {0xF9D7, 165092}, {0xF9D8, 165125}, {0xF9D9, 165158}, {0xF9DA, 165191}, {0xF9DB, 165224}, {0xF9DC, 165257}, {0xF9DD, 165290}, {0xF9DE, 165323}, {0xF9DF, 165356}, {0xF9E0, 165389}, {0xF9E1, 165422}, {0xF9E2, 165455}, {0xF9E3, 165488}, {0xF9E4, 165521}, {0xF9E5, 165554}, {0xF9E6, 165587}, {0xF9E7, 165620}, {0xF9E8, 165653}, {0xF9E9, 165686}, {0xF9EA, 165719}, {0xF9EB, 165752}, {0xF9EC, 165785}, {0xF9ED, 165818}, {0xF9EE, 165851}, {0xF9EF, 165884}, {0xF9F0, 165917}, {0xF9F1, 165950}, {0xF9F2, 165983}, {0xF9F3, 166016}, {0xF9F4, 166049}, {0xF9F5, 166082}, {0xF9F6, 166115}, {0xF9F7, 166148}, {0xF9F8, 166181}, {0xF9F9, 166214}, {0xF9FA, 166247}, {0xF9FB, 166280}, {0xF9FC, 166313}, {0xF9FD, 166346}, {0xF9FE, 166379}, {0xF9FF, 166412}, {0xFA00, 166445}, {0xFA01, 166478}, {0xFA02, 166511}, {0xFA03, 166544}, {0xFA04, 166577}, {0xFA05, 166610}, {0xFA06, 166643}, {0xFA07, 166676}, {0xFA08, 166709}, {0xFA09, 166742}, {0xFA0A, 166775}, {0xFA0B, 166808}, {0xFA0C, 166841}, {0xFA0D, 166874}, {0xFA0E, 166907}, {0xFA0F, 166940}, {0xFA10, 166973}, {0xFA11, 167006}, {0xFA12, 167039}, {0xFA13, 167072}, {0xFA14, 167105}, {0xFA15, 167138}, {0xFA16, 167171}, {0xFA17, 167204}, {0xFA18, 167237}, {0xFA19, 167270}, {0xFA1A, 167303}, {0xFA1B, 167336}, {0xFA1C, 167369}, {0xFA1D, 167402}, {0xFA1E, 167435}, {0xFA1F, 167468}, {0xFA20, 167501}, {0xFA21, 167534}, {0xFA22, 167567}, {0xFA23, 167600}, {0xFA24, 167633}, {0xFA25, 167666}, {0xFA26, 167699}, {0xFA27, 167732}, {0xFA28, 167765}, {0xFA29, 167798}, {0xFA2A, 167831}, {0xFA2B, 167864}, {0xFA2C, 167897}, {0xFA2D, 167930}, {0xFA30, 167963}, {0xFA31, 167996}, {0xFA32, 168029}, {0xFA33, 168062}, {0xFA34, 168095}, {0xFA35, 168128}, {0xFA36, 168161}, {0xFA37, 168194}, {0xFA38, 168227}, {0xFA39, 168260}, {0xFA3A, 168293}, {0xFA3B, 168326}, {0xFA3C, 168359}, {0xFA3D, 168392}, {0xFA3E, 168425}, {0xFA3F, 168458}, {0xFA40, 168491}, {0xFA41, 168524}, {0xFA42, 168557}, {0xFA43, 168590}, {0xFA44, 168623}, {0xFA45, 168656}, {0xFA46, 168689}, {0xFA47, 168722}, {0xFA48, 168755}, {0xFA49, 168788}, {0xFA4A, 168821}, {0xFA4B, 168854}, {0xFA4C, 168887}, {0xFA4D, 168920}, {0xFA4E, 168953}, {0xFA4F, 168986}, {0xFA50, 169019}, {0xFA51, 169052}, {0xFA52, 169085}, {0xFA53, 169118}, {0xFA54, 169151}, {0xFA55, 169184}, {0xFA56, 169217}, {0xFA57, 169250}, {0xFA58, 169283}, {0xFA59, 169316}, {0xFA5A, 169349}, {0xFA5B, 169382}, {0xFA5C, 169415}, {0xFA5D, 169448}, {0xFA5E, 169481}, {0xFA5F, 169514}, {0xFA60, 169547}, {0xFA61, 169580}, {0xFA62, 169613}, {0xFA63, 169646}, {0xFA64, 169679}, {0xFA65, 169712}, {0xFA66, 169745}, {0xFA67, 169778}, {0xFA68, 169811}, {0xFA69, 169844}, {0xFA6A, 169877}, {0xFA6B, 169910}, {0xFA6C, 169943}, {0xFA6D, 169976}, {0xFA70, 170009}, {0xFA71, 170042}, {0xFA72, 170075}, {0xFA73, 170108}, {0xFA74, 170141}, {0xFA75, 170174}, {0xFA76, 170207}, {0xFA77, 170240}, {0xFA78, 170273}, {0xFA79, 170306}, {0xFA7A, 170339}, {0xFA7B, 170372}, {0xFA7C, 170405}, {0xFA7D, 170438}, {0xFA7E, 170471}, {0xFA7F, 170504}, {0xFA80, 170537}, {0xFA81, 170570}, {0xFA82, 170603}, {0xFA83, 170636}, {0xFA84, 170669}, {0xFA85, 170702}, {0xFA86, 170735}, {0xFA87, 170768}, {0xFA88, 170801}, {0xFA89, 170834}, {0xFA8A, 170867}, {0xFA8B, 170900}, {0xFA8C, 170933}, {0xFA8D, 170966}, {0xFA8E, 170999}, {0xFA8F, 171032}, {0xFA90, 171065}, {0xFA91, 171098}, {0xFA92, 171131}, {0xFA93, 171164}, {0xFA94, 171197}, {0xFA95, 171230}, {0xFA96, 171263}, {0xFA97, 171296}, {0xFA98, 171329}, {0xFA99, 171362}, {0xFA9A, 171395}, {0xFA9B, 171428}, {0xFA9C, 171461}, {0xFA9D, 171494}, {0xFA9E, 171527}, {0xFA9F, 171560}, {0xFAA0, 171593}, {0xFAA1, 171626}, {0xFAA2, 171659}, {0xFAA3, 171692}, {0xFAA4, 171725}, {0xFAA5, 171758}, {0xFAA6, 171791}, {0xFAA7, 171824}, {0xFAA8, 171857}, {0xFAA9, 171890}, {0xFAAA, 171923}, {0xFAAB, 171956}, {0xFAAC, 171989}, {0xFAAD, 172022}, {0xFAAE, 172055}, {0xFAAF, 172088}, {0xFAB0, 172121}, {0xFAB1, 172154}, {0xFAB2, 172187}, {0xFAB3, 172220}, {0xFAB4, 172253}, {0xFAB5, 172286}, {0xFAB6, 172319}, {0xFAB7, 172352}, {0xFAB8, 172385}, {0xFAB9, 172418}, {0xFABA, 172451}, {0xFABB, 172484}, {0xFABC, 172517}, {0xFABD, 172550}, {0xFABE, 172583}, {0xFABF, 172616}, {0xFAC0, 172649}, {0xFAC1, 172682}, {0xFAC2, 172715}, {0xFAC3, 172748}, {0xFAC4, 172781}, {0xFAC5, 172814}, {0xFAC6, 172847}, {0xFAC7, 172880}, {0xFAC8, 172913}, {0xFAC9, 172946}, {0xFACA, 172979}, {0xFACB, 173012}, {0xFACC, 173045}, {0xFACD, 173078}, {0xFACE, 173111}, {0xFACF, 173144}, {0xFAD0, 173177}, {0xFAD1, 173210}, {0xFAD2, 173243}, {0xFAD3, 173276}, {0xFAD4, 173309}, {0xFAD5, 173342}, {0xFAD6, 173375}, {0xFAD7, 173408}, {0xFAD8, 173441}, {0xFAD9, 173474}, {0xFB00, 415692}, {0xFB01, 415766}, {0xFB02, 415790}, {0xFB03, 415716}, {0xFB04, 415741}, {0xFB05, 415838}, {0xFB06, 415892}, {0xFB13, 52661}, {0xFB14, 52597}, {0xFB15, 52629}, {0xFB16, 52725}, {0xFB17, 52693}, {0xFB1D, 345200}, {0xFB1E, 345694}, {0xFB1F, 345410}, {0xFB20, 343560}, {0xFB21, 344957}, {0xFB22, 344981}, {0xFB23, 345035}, {0xFB24, 345057}, {0xFB25, 345080}, {0xFB26, 345006}, {0xFB27, 345105}, {0xFB28, 345129}, {0xFB29, 343591}, {0xFB2A, 344667}, {0xFB2B, 344700}, {0xFB2C, 344580}, {0xFB2D, 344624}, {0xFB2E, 343499}, {0xFB2F, 343529}, {0xFB30, 343469}, {0xFB31, 343664}, {0xFB32, 343986}, {0xFB33, 343742}, {0xFB34, 344035}, {0xFB35, 344898}, {0xFB36, 345249}, {0xFB38, 344798}, {0xFB39, 345170}, {0xFB3A, 343798}, {0xFB3B, 344099}, {0xFB3C, 344177}, {0xFB3E, 344227}, {0xFB40, 344275}, {0xFB41, 344497}, {0xFB43, 343905}, {0xFB44, 344322}, {0xFB46, 344848}, {0xFB47, 344396}, {0xFB48, 344445}, {0xFB49, 344549}, {0xFB4A, 344750}, {0xFB4B, 344928}, {0xFB4C, 343694}, {0xFB4D, 344129}, {0xFB4E, 344351}, {0xFB4F, 345281}, {0xFB50, 10767}, {0xFB51, 10731}, {0xFB52, 11494}, {0xFB53, 11432}, {0xFB54, 11462}, {0xFB55, 11527}, {0xFB56, 19186}, {0xFB57, 19126}, {0xFB58, 19155}, {0xFB59, 19218}, {0xFB5A, 12151}, {0xFB5B, 12087}, {0xFB5C, 12118}, {0xFB5D, 12185}, {0xFB5E, 22872}, {0xFB5F, 22806}, {0xFB60, 22838}, {0xFB61, 22907}, {0xFB62, 22347}, {0xFB63, 22283}, {0xFB64, 22314}, {0xFB65, 22381}, {0xFB66, 22721}, {0xFB67, 22659}, {0xFB68, 22689}, {0xFB69, 22754}, {0xFB6A, 23370}, {0xFB6B, 23310}, {0xFB6C, 23339}, {0xFB6D, 23402}, {0xFB6E, 19332}, {0xFB6F, 19268}, {0xFB70, 19299}, {0xFB71, 19366}, {0xFB72, 13302}, {0xFB73, 13240}, {0xFB74, 13270}, {0xFB75, 13335}, {0xFB76, 18968}, {0xFB77, 18906}, {0xFB78, 18936}, {0xFB79, 19001}, {0xFB7A, 21650}, {0xFB7B, 21586}, {0xFB7C, 21617}, {0xFB7D, 21684}, {0xFB7E, 21841}, {0xFB7F, 21773}, {0xFB80, 21806}, {0xFB81, 21877}, {0xFB82, 12947}, {0xFB83, 12915}, {0xFB84, 12441}, {0xFB85, 12410}, {0xFB86, 13189}, {0xFB87, 13160}, {0xFB88, 13031}, {0xFB89, 13001}, {0xFB8A, 16570}, {0xFB8B, 16541}, {0xFB8C, 20350}, {0xFB8D, 20320}, {0xFB8E, 16992}, {0xFB8F, 16928}, {0xFB90, 16959}, {0xFB91, 17026}, {0xFB92, 14425}, {0xFB93, 14365}, {0xFB94, 14394}, {0xFB95, 14457}, {0xFB96, 14859}, {0xFB97, 14797}, {0xFB98, 14827}, {0xFB99, 14892}, {0xFB9A, 18364}, {0xFB9B, 18300}, {0xFB9C, 18331}, {0xFB9D, 18398}, {0xFB9E, 18542}, {0xFB9F, 18505}, {0xFBA0, 20235}, {0xFBA1, 20171}, {0xFBA2, 20202}, {0xFBA3, 20269}, {0xFBA4, 16218}, {0xFBA5, 16174}, {0xFBA6, 15902}, {0xFBA7, 15832}, {0xFBA8, 15866}, {0xFBA9, 15939}, {0xFBAA, 15694}, {0xFBAB, 15610}, {0xFBAC, 15651}, {0xFBAD, 15738}, {0xFBAE, 23943}, {0xFBAF, 23907}, {0xFBB0, 24215}, {0xFBB1, 24162}, {0xFBB2, 49153}, {0xFBB3, 49177}, {0xFBB4, 49542}, {0xFBB5, 49571}, {0xFBB6, 49380}, {0xFBB7, 49411}, {0xFBB8, 49442}, {0xFBB9, 49492}, {0xFBBA, 49241}, {0xFBBB, 49271}, {0xFBBC, 49201}, {0xFBBD, 49600}, {0xFBBE, 49640}, {0xFBBF, 49301}, {0xFBC0, 49320}, {0xFBC1, 49350}, {0xFBD3, 18220}, {0xFBD4, 18162}, {0xFBD5, 18190}, {0xFBD6, 18251}, {0xFBD7, 22983}, {0xFBD8, 22956}, {0xFBD9, 19077}, {0xFBDA, 19049}, {0xFBDB, 24762}, {0xFBDC, 24734}, {0xFBDD, 23046}, {0xFBDE, 23261}, {0xFBDF, 23233}, {0xFBE0, 17482}, {0xFBE1, 17446}, {0xFBE2, 17582}, {0xFBE3, 17546}, {0xFBE4, 13438}, {0xFBE5, 13382}, {0xFBE6, 13409}, {0xFBE7, 13468}, {0xFBE8, 23093}, {0xFBE9, 23155}, {0xFBEA, 45014}, {0xFBEB, 44956}, {0xFBEC, 44897}, {0xFBED, 44841}, {0xFBEE, 46435}, {0xFBEF, 46378}, {0xFBF0, 46320}, {0xFBF1, 46265}, {0xFBF2, 46149}, {0xFBF3, 46093}, {0xFBF4, 46668}, {0xFBF5, 46612}, {0xFBF6, 45322}, {0xFBF7, 45210}, {0xFBF8, 45265}, {0xFBF9, 44483}, {0xFBFA, 44319}, {0xFBFB, 44400}, {0xFBFC, 13592}, {0xFBFD, 13520}, {0xFBFE, 13555}, {0xFBFF, 13630}, {0xFC00, 45676}, {0xFC01, 45439}, {0xFC02, 45915}, {0xFC03, 45141}, {0xFC04, 46552}, {0xFC05, 26382}, {0xFC06, 26164}, {0xFC07, 26469}, {0xFC08, 26647}, {0xFC09, 26070}, {0xFC0A, 26854}, {0xFC0B, 42591}, {0xFC0C, 42268}, {0xFC0D, 42840}, {0xFC0E, 43130}, {0xFC0F, 42174}, {0xFC10, 43604}, {0xFC11, 43890}, {0xFC12, 44021}, {0xFC13, 43795}, {0xFC14, 44233}, {0xFC15, 30157}, {0xFC16, 30354}, {0xFC17, 29176}, {0xFC18, 29313}, {0xFC19, 31908}, {0xFC1A, 31820}, {0xFC1B, 31997}, {0xFC1C, 38570}, {0xFC1D, 38302}, {0xFC1E, 38815}, {0xFC1F, 39058}, {0xFC20, 37386}, {0xFC21, 37664}, {0xFC22, 27320}, {0xFC23, 27127}, {0xFC24, 27407}, {0xFC25, 27598}, {0xFC26, 41665}, {0xFC27, 41751}, {0xFC28, 47664}, {0xFC29, 25159}, {0xFC2A, 25350}, {0xFC2B, 28642}, {0xFC2C, 28733}, {0xFC2D, 28037}, {0xFC2E, 27951}, {0xFC2F, 28124}, {0xFC30, 28315}, {0xFC31, 27857}, {0xFC32, 28449}, {0xFC33, 36673}, {0xFC34, 36759}, {0xFC35, 36579}, {0xFC36, 37046}, {0xFC37, 30740}, {0xFC38, 31013}, {0xFC39, 30927}, {0xFC3A, 31100}, {0xFC3B, 31226}, {0xFC3C, 31394}, {0xFC3D, 30833}, {0xFC3E, 31674}, {0xFC3F, 33049}, {0xFC40, 32712}, {0xFC41, 33394}, {0xFC42, 33626}, {0xFC43, 32261}, {0xFC44, 33904}, {0xFC45, 34329}, {0xFC46, 34085}, {0xFC47, 34630}, {0xFC48, 34920}, {0xFC49, 33989}, {0xFC4A, 35016}, {0xFC4B, 35580}, {0xFC4C, 35245}, {0xFC4D, 35990}, {0xFC4E, 36121}, {0xFC4F, 35149}, {0xFC50, 36444}, {0xFC51, 29644}, {0xFC52, 29731}, {0xFC53, 29549}, {0xFC54, 29936}, {0xFC55, 46911}, {0xFC56, 44749}, {0xFC57, 47048}, {0xFC58, 47176}, {0xFC59, 44655}, {0xFC5A, 47537}, {0xFC5B, 43688}, {0xFC5C, 37187}, {0xFC5D, 25825}, {0xFC5E, 39674}, {0xFC5F, 39913}, {0xFC60, 39725}, {0xFC61, 39580}, {0xFC62, 39819}, {0xFC63, 39964}, {0xFC64, 46208}, {0xFC65, 46727}, {0xFC66, 45797}, {0xFC67, 46035}, {0xFC68, 45075}, {0xFC69, 46495}, {0xFC6A, 26774}, {0xFC6B, 26897}, {0xFC6C, 26563}, {0xFC6D, 26733}, {0xFC6E, 26021}, {0xFC6F, 26814}, {0xFC70, 43524}, {0xFC71, 43647}, {0xFC72, 43046}, {0xFC73, 43483}, {0xFC74, 42125}, {0xFC75, 43564}, {0xFC76, 44151}, {0xFC77, 44277}, {0xFC78, 43935}, {0xFC79, 44109}, {0xFC7A, 43745}, {0xFC7B, 44192}, {0xFC7C, 27808}, {0xFC7D, 28409}, {0xFC7E, 36530}, {0xFC7F, 37006}, {0xFC80, 30699}, {0xFC81, 31144}, {0xFC82, 31310}, {0xFC83, 30784}, {0xFC84, 31634}, {0xFC85, 33542}, {0xFC86, 32212}, {0xFC87, 33864}, {0xFC88, 33947}, {0xFC89, 34834}, {0xFC8A, 36362}, {0xFC8B, 36488}, {0xFC8C, 36035}, {0xFC8D, 36320}, {0xFC8E, 35099}, {0xFC8F, 36403}, {0xFC90, 25763}, {0xFC91, 47457}, {0xFC92, 47580}, {0xFC93, 47092}, {0xFC94, 47416}, {0xFC95, 44606}, {0xFC96, 47497}, {0xFC97, 45616}, {0xFC98, 45380}, {0xFC99, 45737}, {0xFC9A, 45855}, {0xFC9B, 45499}, {0xFC9C, 26339}, {0xFC9D, 26122}, {0xFC9E, 26426}, {0xFC9F, 26604}, {0xFCA0, 26256}, {0xFCA1, 42548}, {0xFCA2, 42226}, {0xFCA3, 42797}, {0xFCA4, 43087}, {0xFCA5, 42465}, {0xFCA6, 43977}, {0xFCA7, 30114}, {0xFCA8, 30310}, {0xFCA9, 29133}, {0xFCAA, 29270}, {0xFCAB, 31864}, {0xFCAC, 31953}, {0xFCAD, 38526}, {0xFCAE, 38259}, {0xFCAF, 38771}, {0xFCB0, 39014}, {0xFCB1, 37344}, {0xFCB2, 37578}, {0xFCB3, 37621}, {0xFCB4, 27277}, {0xFCB5, 27085}, {0xFCB6, 27364}, {0xFCB7, 27555}, {0xFCB8, 41623}, {0xFCB9, 47621}, {0xFCBA, 25116}, {0xFCBB, 25307}, {0xFCBC, 28597}, {0xFCBD, 28688}, {0xFCBE, 27994}, {0xFCBF, 27909}, {0xFCC0, 28081}, {0xFCC1, 28272}, {0xFCC2, 36631}, {0xFCC3, 36716}, {0xFCC4, 30970}, {0xFCC5, 30885}, {0xFCC6, 31057}, {0xFCC7, 31184}, {0xFCC8, 31351}, {0xFCC9, 33006}, {0xFCCA, 32670}, {0xFCCB, 33351}, {0xFCCC, 33583}, {0xFCCD, 32964}, {0xFCCE, 34285}, {0xFCCF, 34042}, {0xFCD0, 34586}, {0xFCD1, 34876}, {0xFCD2, 35536}, {0xFCD3, 35202}, {0xFCD4, 35946}, {0xFCD5, 36077}, {0xFCD6, 35451}, {0xFCD7, 29601}, {0xFCD8, 29688}, {0xFCD9, 29881}, {0xFCDA, 46868}, {0xFCDB, 44707}, {0xFCDC, 47005}, {0xFCDD, 47133}, {0xFCDE, 46785}, {0xFCDF, 45976}, {0xFCE0, 45558}, {0xFCE1, 26691}, {0xFCE2, 26298}, {0xFCE3, 43174}, {0xFCE4, 42507}, {0xFCE5, 44066}, {0xFCE6, 43848}, {0xFCE7, 39103}, {0xFCE8, 38484}, {0xFCE9, 41088}, {0xFCEA, 40503}, {0xFCEB, 31269}, {0xFCEC, 31438}, {0xFCED, 33670}, {0xFCEE, 36166}, {0xFCEF, 35494}, {0xFCF0, 47220}, {0xFCF1, 46827}, {0xFCF2, 39773}, {0xFCF3, 39628}, {0xFCF4, 39867}, {0xFCF5, 41571}, {0xFCF6, 42082}, {0xFCF7, 25064}, {0xFCF8, 25647}, {0xFCF9, 28543}, {0xFCFA, 28987}, {0xFCFB, 38206}, {0xFCFC, 39536}, {0xFCFD, 40074}, {0xFCFE, 41477}, {0xFCFF, 29081}, {0xFD00, 29506}, {0xFD01, 30061}, {0xFD02, 30655}, {0xFD03, 31767}, {0xFD04, 32083}, {0xFD05, 37292}, {0xFD06, 37935}, {0xFD07, 27033}, {0xFD08, 27765}, {0xFD09, 40634}, {0xFD0A, 40214}, {0xFD0B, 40864}, {0xFD0C, 41042}, {0xFD0D, 41390}, {0xFD0E, 39451}, {0xFD0F, 37852}, {0xFD10, 27682}, {0xFD11, 41522}, {0xFD12, 42042}, {0xFD13, 25015}, {0xFD14, 25607}, {0xFD15, 28492}, {0xFD16, 28945}, {0xFD17, 38156}, {0xFD18, 39495}, {0xFD19, 40023}, {0xFD1A, 41435}, {0xFD1B, 29032}, {0xFD1C, 29466}, {0xFD1D, 30011}, {0xFD1E, 30614}, {0xFD1F, 31717}, {0xFD20, 32042}, {0xFD21, 37243}, {0xFD22, 37895}, {0xFD23, 26984}, {0xFD24, 27725}, {0xFD25, 40546}, {0xFD26, 40128}, {0xFD27, 40776}, {0xFD28, 40954}, {0xFD29, 41348}, {0xFD2A, 39410}, {0xFD2B, 37812}, {0xFD2C, 27642}, {0xFD2D, 40589}, {0xFD2E, 40170}, {0xFD2F, 40819}, {0xFD30, 40997}, {0xFD31, 38441}, {0xFD32, 40459}, {0xFD33, 41708}, {0xFD34, 38615}, {0xFD35, 38346}, {0xFD36, 38860}, {0xFD37, 40680}, {0xFD38, 40259}, {0xFD39, 40910}, {0xFD3A, 41795}, {0xFD3B, 47708}, {0xFD3C, 25890}, {0xFD3D, 25936}, {0xFD3E, 518117}, {0xFD3F, 518141}, {0xFD50, 42694}, {0xFD51, 42311}, {0xFD52, 42361}, {0xFD53, 42413}, {0xFD54, 42943}, {0xFD55, 43327}, {0xFD56, 43275}, {0xFD57, 43380}, {0xFD58, 30459}, {0xFD59, 30510}, {0xFD5A, 29416}, {0xFD5B, 29357}, {0xFD5C, 38388}, {0xFD5D, 38718}, {0xFD5E, 38658}, {0xFD5F, 39146}, {0xFD60, 39197}, {0xFD61, 39250}, {0xFD62, 39304}, {0xFD63, 39356}, {0xFD64, 37429}, {0xFD65, 37478}, {0xFD66, 37708}, {0xFD67, 40302}, {0xFD68, 40354}, {0xFD69, 40724}, {0xFD6A, 41132}, {0xFD6B, 41185}, {0xFD6C, 41240}, {0xFD6D, 41293}, {0xFD6E, 27170}, {0xFD6F, 27451}, {0xFD70, 27502}, {0xFD71, 41837}, {0xFD72, 41887}, {0xFD73, 41939}, {0xFD74, 41992}, {0xFD75, 25203}, {0xFD76, 25453}, {0xFD77, 25504}, {0xFD78, 25394}, {0xFD79, 28840}, {0xFD7A, 28893}, {0xFD7B, 28779}, {0xFD7C, 28168}, {0xFD7D, 28219}, {0xFD7E, 36803}, {0xFD7F, 36905}, {0xFD80, 32813}, {0xFD81, 32915}, {0xFD82, 32755}, {0xFD83, 33144}, {0xFD84, 33093}, {0xFD85, 33438}, {0xFD86, 33489}, {0xFD87, 33712}, {0xFD88, 33762}, {0xFD89, 34129}, {0xFD8A, 34182}, {0xFD8B, 34235}, {0xFD8C, 34374}, {0xFD8D, 34481}, {0xFD8E, 34675}, {0xFD8F, 34729}, {0xFD92, 34427}, {0xFD93, 29775}, {0xFD94, 29828}, {0xFD95, 35348}, {0xFD96, 35289}, {0xFD97, 35789}, {0xFD98, 35841}, {0xFD99, 35625}, {0xFD9A, 36269}, {0xFD9B, 36209}, {0xFD9C, 47262}, {0xFD9D, 47313}, {0xFD9E, 26513}, {0xFD9F, 42747}, {0xFDA0, 42635}, {0xFDA1, 42996}, {0xFDA2, 42884}, {0xFDA3, 43433}, {0xFDA4, 43216}, {0xFDA5, 30563}, {0xFDA6, 30201}, {0xFDA7, 30399}, {0xFDA8, 38903}, {0xFDA9, 37529}, {0xFDAA, 40408}, {0xFDAB, 27228}, {0xFDAC, 33301}, {0xFDAD, 33814}, {0xFDAE, 44792}, {0xFDAF, 46955}, {0xFDB0, 47366}, {0xFDB1, 34965}, {0xFDB2, 36956}, {0xFDB3, 35401}, {0xFDB4, 36853}, {0xFDB5, 32863}, {0xFDB6, 25557}, {0xFDB7, 31584}, {0xFDB8, 35736}, {0xFDB9, 34783}, {0xFDBA, 33248}, {0xFDBB, 31480}, {0xFDBC, 33197}, {0xFDBD, 35685}, {0xFDBE, 30260}, {0xFDBF, 29220}, {0xFDC0, 34535}, {0xFDC1, 28359}, {0xFDC2, 26207}, {0xFDC3, 31531}, {0xFDC4, 25254}, {0xFDC5, 37759}, {0xFDC6, 38963}, {0xFDC7, 35895}, {0xFDF0, 38050}, {0xFDF1, 37089}, {0xFDF2, 25985}, {0xFDF3, 25690}, {0xFDF4, 35060}, {0xFDF5, 37978}, {0xFDF6, 37150}, {0xFDF7, 25726}, {0xFDF8, 44567}, {0xFDF9, 38014}, {0xFDFA, 38112}, {0xFDFB, 29979}, {0xFDFC, 535581}, {0xFDFD, 26938}, {0xFE00, 603329}, {0xFE01, 605870}, {0xFE02, 607422}, {0xFE03, 607663}, {0xFE04, 607904}, {0xFE05, 608145}, {0xFE06, 608386}, {0xFE07, 608627}, {0xFE08, 608868}, {0xFE09, 603350}, {0xFE0A, 603602}, {0xFE0B, 603854}, {0xFE0C, 604106}, {0xFE0D, 604358}, {0xFE0E, 604610}, {0xFE0F, 604862}, {0xFE10, 530270}, {0xFE11, 530484}, {0xFE12, 530533}, {0xFE13, 530233}, {0xFE14, 531771}, {0xFE15, 530385}, {0xFE16, 531171}, {0xFE17, 531070}, {0xFE18, 531709}, {0xFE19, 530433}, {0xFE20, 184096}, {0xFE21, 184125}, {0xFE22, 181335}, {0xFE23, 181368}, {0xFE24, 184350}, {0xFE25, 184377}, {0xFE26, 178736}, {0xFE30, 531812}, {0xFE31, 530307}, {0xFE32, 530346}, {0xFE33, 531131}, {0xFE34, 531858}, {0xFE35, 530855}, {0xFE36, 531490}, {0xFE37, 530748}, {0xFE38, 531381}, {0xFE39, 530954}, {0xFE3A, 531591}, {0xFE3B, 530636}, {0xFE3C, 531267}, {0xFE3D, 530798}, {0xFE3E, 531432}, {0xFE3F, 530586}, {0xFE40, 531216}, {0xFE41, 530697}, {0xFE42, 531329}, {0xFE43, 531013}, {0xFE44, 531651}, {0xFE45, 547849}, {0xFE46, 613701}, {0xFE47, 530903}, {0xFE48, 531539}, {0xFE49, 233164}, {0xFE4A, 128816}, {0xFE4B, 611851}, {0xFE4C, 246481}, {0xFE4D, 233148}, {0xFE4E, 128796}, {0xFE4F, 611837}, {0xFE50, 552477}, {0xFE51, 552865}, {0xFE52, 552806}, {0xFE54, 553620}, {0xFE55, 552465}, {0xFE56, 553066}, {0xFE57, 552783}, {0xFE58, 552751}, {0xFE59, 552914}, {0xFE5A, 553134}, {0xFE5B, 552889}, {0xFE5C, 553108}, {0xFE5D, 552937}, {0xFE5E, 553158}, {0xFE5F, 552992}, {0xFE60, 552415}, {0xFE61, 552431}, {0xFE62, 553050}, {0xFE63, 552846}, {0xFE64, 552971}, {0xFE65, 552822}, {0xFE66, 552765}, {0xFE68, 553086}, {0xFE69, 552623}, {0xFE6A, 553031}, {0xFE6B, 552489}, {0xFE70, 9909}, {0xFE71, 49716}, {0xFE72, 9646}, {0xFE73, 49680}, {0xFE74, 10145}, {0xFE76, 9814}, {0xFE77, 9841}, {0xFE78, 9578}, {0xFE79, 9605}, {0xFE7A, 10077}, {0xFE7B, 10104}, {0xFE7C, 48010}, {0xFE7D, 48038}, {0xFE7E, 49101}, {0xFE7F, 49128}, {0xFE80, 15528}, {0xFE81, 11281}, {0xFE82, 11234}, {0xFE83, 11015}, {0xFE84, 10968}, {0xFE85, 23749}, {0xFE86, 23703}, {0xFE87, 11148}, {0xFE88, 11101}, {0xFE89, 24522}, {0xFE8A, 24428}, {0xFE8B, 24474}, {0xFE8C, 24571}, {0xFE8D, 10567}, {0xFE8E, 10537}, {0xFE8F, 11636}, {0xFE90, 11576}, {0xFE91, 11605}, {0xFE92, 11668}, {0xFE93, 22115}, {0xFE94, 22047}, {0xFE95, 21989}, {0xFE96, 21929}, {0xFE97, 21958}, {0xFE98, 22155}, {0xFE99, 22576}, {0xFE9A, 22514}, {0xFE9B, 22544}, {0xFE9C, 22609}, {0xFE9D, 16459}, {0xFE9E, 16397}, {0xFE9F, 16427}, {0xFEA0, 16492}, {0xFEA1, 15001}, {0xFEA2, 14941}, {0xFEA3, 14970}, {0xFEA4, 15033}, {0xFEA5, 17357}, {0xFEA6, 17295}, {0xFEA7, 17325}, {0xFEA8, 17390}, {0xFEA9, 12522}, {0xFEAA, 12493}, {0xFEAB, 22462}, {0xFEAC, 22432}, {0xFEAD, 19658}, {0xFEAE, 19629}, {0xFEAF, 24982}, {0xFEB0, 24952}, {0xFEB1, 20682}, {0xFEB2, 20620}, {0xFEB3, 20650}, {0xFEB4, 20715}, {0xFEB5, 21230}, {0xFEB6, 21166}, {0xFEB7, 21197}, {0xFEB8, 21264}, {0xFEB9, 20461}, {0xFEBA, 20401}, {0xFEBB, 20430}, {0xFEBC, 20493}, {0xFEBD, 12295}, {0xFEBE, 12235}, {0xFEBF, 12264}, {0xFEC0, 12327}, {0xFEC1, 21464}, {0xFEC2, 21404}, {0xFEC3, 21433}, {0xFEC4, 21496}, {0xFEC5, 24871}, {0xFEC6, 24811}, {0xFEC7, 24840}, {0xFEC8, 24903}, {0xFEC9, 10270}, {0xFECA, 10210}, {0xFECB, 10239}, {0xFECC, 10302}, {0xFECD, 14677}, {0xFECE, 14613}, {0xFECF, 14644}, {0xFED0, 14711}, {0xFED1, 14078}, {0xFED2, 14018}, {0xFED3, 14047}, {0xFED4, 14110}, {0xFED5, 19476}, {0xFED6, 19416}, {0xFED7, 19445}, {0xFED8, 19508}, {0xFED9, 16680}, {0xFEDA, 16620}, {0xFEDB, 16649}, {0xFEDC, 16712}, {0xFEDD, 17699}, {0xFEDE, 17639}, {0xFEDF, 17668}, {0xFEE0, 17731}, {0xFEE1, 18013}, {0xFEE2, 17951}, {0xFEE3, 17981}, {0xFEE4, 18046}, {0xFEE5, 18614}, {0xFEE6, 18449}, {0xFEE7, 18582}, {0xFEE8, 18647}, {0xFEE9, 16045}, {0xFEEA, 15780}, {0xFEEB, 16014}, {0xFEEC, 16077}, {0xFEED, 23479}, {0xFEEE, 23450}, {0xFEEF, 10665}, {0xFEF0, 10627}, {0xFEF1, 24331}, {0xFEF2, 24271}, {0xFEF3, 24300}, {0xFEF4, 24363}, {0xFEF5, 32609}, {0xFEF6, 32551}, {0xFEF7, 32371}, {0xFEF8, 32313}, {0xFEF9, 32490}, {0xFEFA, 32432}, {0xFEFB, 32168}, {0xFEFC, 32127}, {0xFEFF, 635372}, {0xFF01, 291203}, {0xFF02, 293297}, {0xFF03, 293187}, {0xFF04, 291159}, {0xFF05, 293209}, {0xFF06, 290764}, {0xFF07, 290784}, {0xFF08, 293017}, {0xFF09, 293378}, {0xFF0A, 290805}, {0xFF0B, 293232}, {0xFF0C, 290909}, {0xFF0D, 291301}, {0xFF0E, 291230}, {0xFF0F, 293491}, {0xFF10, 291138}, {0xFF11, 291034}, {0xFF12, 291118}, {0xFF13, 291096}, {0xFF14, 290992}, {0xFF15, 290971}, {0xFF16, 291076}, {0xFF17, 291054}, {0xFF18, 290949}, {0xFF19, 291013}, {0xFF1A, 290893}, {0xFF1B, 293471}, {0xFF1C, 293107}, {0xFF1D, 291181}, {0xFF1E, 291273}, {0xFF1F, 293273}, {0xFF20, 290925}, {0xFF21, 291324}, {0xFF22, 291357}, {0xFF23, 291390}, {0xFF24, 291423}, {0xFF25, 291456}, {0xFF26, 291489}, {0xFF27, 291522}, {0xFF28, 291555}, {0xFF29, 291588}, {0xFF2A, 291621}, {0xFF2B, 291654}, {0xFF2C, 291687}, {0xFF2D, 291720}, {0xFF2E, 291753}, {0xFF2F, 291786}, {0xFF30, 291819}, {0xFF31, 291852}, {0xFF32, 291885}, {0xFF33, 291918}, {0xFF34, 291951}, {0xFF35, 291984}, {0xFF36, 292017}, {0xFF37, 292050}, {0xFF38, 292083}, {0xFF39, 292116}, {0xFF3A, 292149}, {0xFF3B, 293044}, {0xFF3C, 293322}, {0xFF3D, 293406}, {0xFF3E, 290865}, {0xFF3F, 293132}, {0xFF40, 291250}, {0xFF41, 292182}, {0xFF42, 292213}, {0xFF43, 292244}, {0xFF44, 292275}, {0xFF45, 292306}, {0xFF46, 292337}, {0xFF47, 292368}, {0xFF48, 292399}, {0xFF49, 292430}, {0xFF4A, 292461}, {0xFF4B, 292492}, {0xFF4C, 292523}, {0xFF4D, 292554}, {0xFF4E, 292585}, {0xFF4F, 292616}, {0xFF50, 292647}, {0xFF51, 292678}, {0xFF52, 292709}, {0xFF53, 292740}, {0xFF54, 292771}, {0xFF55, 292802}, {0xFF56, 292833}, {0xFF57, 292864}, {0xFF58, 292895}, {0xFF59, 292926}, {0xFF5A, 292957}, {0xFF5B, 292988}, {0xFF5C, 293525}, {0xFF5D, 293348}, {0xFF5E, 293509}, {0xFF5F, 293074}, {0xFF60, 293437}, {0xFF61, 325925}, {0xFF62, 327753}, {0xFF63, 327809}, {0xFF64, 325897}, {0xFF65, 327595}, {0xFF66, 327479}, {0xFF67, 326909}, {0xFF68, 326977}, {0xFF69, 327080}, {0xFF6A, 326943}, {0xFF6B, 327011}, {0xFF6C, 327114}, {0xFF6D, 327184}, {0xFF6E, 327149}, {0xFF6F, 327045}, {0xFF70, 327704}, {0xFF71, 325957}, {0xFF72, 326158}, {0xFF73, 327422}, {0xFF74, 325985}, {0xFF75, 326649}, {0xFF76, 326186}, {0xFF77, 326244}, {0xFF78, 326302}, {0xFF79, 326215}, {0xFF7A, 326273}, {0xFF7B, 326822}, {0xFF7C, 326880}, {0xFF7D, 327248}, {0xFF7E, 326851}, {0xFF7F, 327219}, {0xFF80, 327277}, {0xFF81, 327335}, {0xFF82, 327393}, {0xFF83, 327306}, {0xFF84, 327364}, {0xFF85, 326504}, {0xFF86, 326562}, {0xFF87, 326620}, {0xFF88, 326533}, {0xFF89, 326591}, {0xFF8A, 326013}, {0xFF8B, 326071}, {0xFF8C, 326129}, {0xFF8D, 326042}, {0xFF8E, 326100}, {0xFF8F, 326331}, {0xFF90, 326389}, {0xFF91, 326447}, {0xFF92, 326360}, {0xFF93, 326418}, {0xFF94, 327508}, {0xFF95, 327566}, {0xFF96, 327537}, {0xFF97, 326677}, {0xFF98, 326735}, {0xFF99, 326793}, {0xFF9A, 326706}, {0xFF9B, 326764}, {0xFF9C, 327450}, {0xFF9D, 326476}, {0xFF9E, 327667}, {0xFF9F, 327625}, {0xFFA0, 324303}, {0xFFA1, 324640}, {0xFFA2, 325339}, {0xFFA3, 324671}, {0xFFA4, 324737}, {0xFFA5, 324767}, {0xFFA6, 324803}, {0xFFA7, 325512}, {0xFFA8, 325444}, {0xFFA9, 324989}, {0xFFAA, 325055}, {0xFFAB, 325092}, {0xFFAC, 325166}, {0xFFAD, 325202}, {0xFFAE, 325237}, {0xFFAF, 325128}, {0xFFB0, 325019}, {0xFFB1, 324707}, {0xFFB2, 324924}, {0xFFB3, 325375}, {0xFFB4, 324954}, {0xFFB5, 325275}, {0xFFB6, 325410}, {0xFFB7, 324578}, {0xFFB8, 324412}, {0xFFB9, 325304}, {0xFFBA, 324380}, {0xFFBB, 324608}, {0xFFBC, 325480}, {0xFFBD, 324892}, {0xFFBE, 324522}, {0xFFC2, 324327}, {0xFFC3, 324353}, {0xFFC4, 325706}, {0xFFC5, 325733}, {0xFFC6, 324468}, {0xFFC7, 324442}, {0xFFCA, 325788}, {0xFFCB, 325761}, {0xFFCC, 324839}, {0xFFCD, 325569}, {0xFFCE, 325596}, {0xFFCF, 324865}, {0xFFD2, 325843}, {0xFFD3, 325543}, {0xFFD4, 325651}, {0xFFD5, 325624}, {0xFFD6, 325679}, {0xFFD7, 325870}, {0xFFDA, 324495}, {0xFFDB, 325816}, {0xFFDC, 324552}, {0xFFE0, 290845}, {0xFFE1, 293252}, {0xFFE2, 293168}, {0xFFE3, 293151}, {0xFFE4, 290824}, {0xFFE5, 293568}, {0xFFE6, 293549}, {0xFFE8, 324272}, {0xFFE9, 327783}, {0xFFEA, 327867}, {0xFFEB, 327840}, {0xFFEC, 324246}, {0xFFED, 324223}, {0xFFEE, 327891}, {0xFFF9, 358748}, {0xFFFA, 358778}, {0xFFFB, 358811}, {0xFFFC, 509057}, {0xFFFD, 534853}, {0x10000, 428950}, {0x10001, 429599}, {0x10002, 429390}, {0x10003, 430119}, {0x10004, 429001}, {0x10005, 428768}, {0x10006, 429780}, {0x10007, 428924}, {0x10008, 429104}, {0x10009, 429885}, {0x1000A, 430015}, {0x1000B, 429806}, {0x1000D, 429547}, {0x1000E, 430171}, {0x1000F, 430487}, {0x10010, 429754}, {0x10011, 430224}, {0x10012, 430303}, {0x10013, 430565}, {0x10014, 430539}, {0x10015, 429078}, {0x10016, 430382}, {0x10017, 429130}, {0x10018, 429260}, {0x10019, 428898}, {0x1001A, 429286}, {0x1001B, 429442}, {0x1001C, 429911}, {0x1001D, 429989}, {0x1001E, 428820}, {0x1001F, 430356}, {0x10020, 429624}, {0x10021, 429026}, {0x10022, 429859}, {0x10023, 429156}, {0x10024, 430513}, {0x10025, 429234}, {0x10026, 429494}, {0x10028, 430093}, {0x10029, 429364}, {0x1002A, 429937}, {0x1002B, 428794}, {0x1002C, 429338}, {0x1002D, 429468}, {0x1002E, 428975}, {0x1002F, 429676}, {0x10030, 429052}, {0x10031, 430041}, {0x10032, 430067}, {0x10033, 428846}, {0x10034, 429573}, {0x10035, 428872}, {0x10036, 430277}, {0x10037, 429963}, {0x10038, 430434}, {0x10039, 429650}, {0x1003A, 429702}, {0x1003C, 429182}, {0x1003D, 430408}, {0x1003F, 429208}, {0x10040, 429312}, {0x10041, 429728}, {0x10042, 430591}, {0x10043, 430329}, {0x10044, 430644}, {0x10045, 429832}, {0x10046, 429415}, {0x10047, 430144}, {0x10048, 430460}, {0x10049, 429520}, {0x1004A, 430250}, {0x1004B, 430197}, {0x1004C, 430617}, {0x1004D, 430671}, {0x10050, 430698}, {0x10051, 430719}, {0x10052, 430740}, {0x10053, 430761}, {0x10054, 430782}, {0x10055, 430803}, {0x10056, 430824}, {0x10057, 430845}, {0x10058, 430866}, {0x10059, 430887}, {0x1005A, 430908}, {0x1005B, 430929}, {0x1005C, 430950}, {0x1005D, 430971}, {0x10080, 425425}, {0x10081, 425452}, {0x10082, 425481}, {0x10083, 425509}, {0x10084, 425538}, {0x10085, 425567}, {0x10086, 425600}, {0x10087, 425628}, {0x10088, 425656}, {0x10089, 425689}, {0x1008A, 425721}, {0x1008B, 425749}, {0x1008C, 425778}, {0x1008D, 425806}, {0x1008E, 425835}, {0x1008F, 425864}, {0x10090, 425894}, {0x10091, 425923}, {0x10092, 425952}, {0x10093, 428595}, {0x10094, 428623}, {0x10095, 425983}, {0x10096, 426010}, {0x10097, 426038}, {0x10098, 428653}, {0x10099, 428682}, {0x1009A, 426061}, {0x1009B, 426091}, {0x1009C, 426119}, {0x1009D, 426142}, {0x1009E, 426170}, {0x1009F, 426193}, {0x100A0, 426216}, {0x100A1, 426244}, {0x100A2, 426267}, {0x100A3, 426290}, {0x100A4, 428710}, {0x100A5, 426313}, {0x100A6, 426336}, {0x100A7, 426359}, {0x100A8, 426388}, {0x100A9, 426411}, {0x100AA, 426434}, {0x100AB, 426465}, {0x100AC, 426495}, {0x100AD, 426518}, {0x100AE, 426541}, {0x100AF, 426564}, {0x100B0, 426587}, {0x100B1, 426610}, {0x100B2, 426633}, {0x100B3, 426656}, {0x100B4, 426679}, {0x100B5, 426702}, {0x100B6, 426731}, {0x100B7, 426754}, {0x100B8, 426782}, {0x100B9, 426805}, {0x100BA, 426828}, {0x100BB, 426851}, {0x100BC, 426874}, {0x100BD, 426897}, {0x100BE, 426920}, {0x100BF, 426943}, {0x100C0, 426966}, {0x100C1, 426989}, {0x100C2, 427012}, {0x100C3, 427035}, {0x100C4, 427065}, {0x100C5, 427098}, {0x100C6, 427129}, {0x100C7, 427158}, {0x100C8, 427187}, {0x100C9, 427210}, {0x100CA, 427239}, {0x100CB, 427262}, {0x100CC, 427285}, {0x100CD, 427324}, {0x100CE, 427355}, {0x100CF, 427392}, {0x100D0, 427421}, {0x100D1, 427444}, {0x100D2, 428739}, {0x100D3, 427467}, {0x100D4, 427490}, {0x100D5, 427513}, {0x100D6, 427536}, {0x100D7, 427559}, {0x100D8, 427582}, {0x100D9, 427610}, {0x100DA, 427633}, {0x100DB, 427656}, {0x100DC, 427679}, {0x100DD, 427702}, {0x100DE, 427725}, {0x100DF, 427755}, {0x100E0, 427785}, {0x100E1, 427815}, {0x100E2, 427845}, {0x100E3, 427875}, {0x100E4, 427905}, {0x100E5, 427935}, {0x100E6, 427965}, {0x100E7, 427995}, {0x100E8, 428025}, {0x100E9, 428055}, {0x100EA, 428085}, {0x100EB, 428115}, {0x100EC, 428145}, {0x100ED, 428175}, {0x100EE, 428205}, {0x100EF, 428235}, {0x100F0, 428265}, {0x100F1, 428295}, {0x100F2, 428325}, {0x100F3, 428355}, {0x100F4, 428385}, {0x100F5, 428415}, {0x100F6, 428445}, {0x100F7, 428475}, {0x100F8, 428505}, {0x100F9, 428535}, {0x100FA, 428565}, {0x10100, 2299}, {0x10101, 2273}, {0x10102, 874}, {0x10107, 1519}, {0x10108, 2064}, {0x10109, 1936}, {0x1010A, 1320}, {0x1010B, 1197}, {0x1010C, 1720}, {0x1010D, 1590}, {0x1010E, 1020}, {0x1010F, 1394}, {0x10110, 1840}, {0x10111, 2013}, {0x10112, 1885}, {0x10113, 1271}, {0x10114, 1148}, {0x10115, 1791}, {0x10116, 1667}, {0x10117, 1097}, {0x10118, 1468}, {0x10119, 1537}, {0x1011A, 2082}, {0x1011B, 1956}, {0x1011C, 1339}, {0x1011D, 1216}, {0x1011E, 1738}, {0x1011F, 1610}, {0x10120, 1040}, {0x10121, 1413}, {0x10122, 1563}, {0x10123, 2108}, {0x10124, 1984}, {0x10125, 1366}, {0x10126, 1243}, {0x10127, 1764}, {0x10128, 1638}, {0x10129, 1068}, {0x1012A, 1440}, {0x1012B, 1858}, {0x1012C, 2034}, {0x1012D, 1906}, {0x1012E, 1291}, {0x1012F, 1168}, {0x10130, 1811}, {0x10131, 1689}, {0x10132, 1118}, {0x10133, 1489}, {0x10137, 2135}, {0x10138, 2159}, {0x10139, 2216}, {0x1013A, 2245}, {0x1013B, 2187}, {0x1013C, 892}, {0x1013D, 925}, {0x1013E, 961}, {0x1013F, 991}, {0x10140, 302107}, {0x10141, 301989}, {0x10142, 301954}, {0x10143, 301648}, {0x10144, 301461}, {0x10145, 301676}, {0x10146, 301872}, {0x10147, 301564}, {0x10148, 301836}, {0x10149, 302297}, {0x1014A, 301527}, {0x1014B, 302064}, {0x1014C, 301756}, {0x1014D, 302186}, {0x1014E, 301909}, {0x1014F, 301800}, {0x10150, 302262}, {0x10151, 301490}, {0x10152, 302021}, {0x10153, 301712}, {0x10154, 302142}, {0x10155, 302332}, {0x10156, 301602}, {0x10157, 302230}, {0x10158, 302604}, {0x10159, 302956}, {0x1015A, 302676}, {0x1015B, 302531}, {0x1015C, 303166}, {0x1015D, 302416}, {0x1015E, 302563}, {0x1015F, 303279}, {0x10160, 303353}, {0x10161, 303385}, {0x10162, 302708}, {0x10163, 302740}, {0x10164, 303063}, {0x10165, 303093}, {0x10166, 303196}, {0x10167, 303230}, {0x10168, 302642}, {0x10169, 302845}, {0x1016A, 302986}, {0x1016B, 303126}, {0x1016C, 302490}, {0x1016D, 303312}, {0x1016E, 302877}, {0x1016F, 302376}, {0x10170, 302771}, {0x10171, 303024}, {0x10172, 302916}, {0x10173, 302455}, {0x10174, 302808}, {0x10175, 311778}, {0x10176, 311798}, {0x10177, 319630}, {0x10178, 319546}, {0x10179, 320689}, {0x1017A, 319486}, {0x1017B, 309770}, {0x1017C, 311762}, {0x1017D, 319609}, {0x1017E, 319523}, {0x1017F, 309811}, {0x10180, 309789}, {0x10181, 311702}, {0x10182, 311301}, {0x10183, 311606}, {0x10184, 311833}, {0x10185, 320671}, {0x10186, 303467}, {0x10187, 303449}, {0x10188, 309833}, {0x10189, 319584}, {0x1018A, 320725}, {0x10190, 541165}, {0x10191, 541222}, {0x10192, 541123}, {0x10193, 541184}, {0x10194, 540479}, {0x10195, 541203}, {0x10196, 540459}, {0x10197, 541102}, {0x10198, 541143}, {0x10199, 540506}, {0x1019A, 540424}, {0x1019B, 540438}, {0x101D0, 526256}, {0x101D1, 526316}, {0x101D2, 526552}, {0x101D3, 525644}, {0x101D4, 525729}, {0x101D5, 526688}, {0x101D6, 526026}, {0x101D7, 525972}, {0x101D8, 526585}, {0x101D9, 525488}, {0x101DA, 525592}, {0x101DB, 526420}, {0x101DC, 525754}, {0x101DD, 526147}, {0x101DE, 526175}, {0x101DF, 526397}, {0x101E0, 526100}, {0x101E1, 525563}, {0x101E2, 525671}, {0x101E3, 525872}, {0x101E4, 525804}, {0x101E5, 526470}, {0x101E6, 525778}, {0x101E7, 525536}, {0x101E8, 526446}, {0x101E9, 526076}, {0x101EA, 526052}, {0x101EB, 525615}, {0x101EC, 525706}, {0x101ED, 526347}, {0x101EE, 525922}, {0x101EF, 525898}, {0x101F0, 526610}, {0x101F1, 525513}, {0x101F2, 526286}, {0x101F3, 526635}, {0x101F4, 526229}, {0x101F5, 526370}, {0x101F6, 526123}, {0x101F7, 526202}, {0x101F8, 525947}, {0x101F9, 526000}, {0x101FA, 526524}, {0x101FB, 526495}, {0x101FC, 526659}, {0x101FD, 525828}, {0x10280, 433417}, {0x10281, 433499}, {0x10282, 433450}, {0x10283, 433466}, {0x10284, 433532}, {0x10285, 433483}, {0x10286, 433564}, {0x10287, 433841}, {0x10288, 433873}, {0x10289, 433791}, {0x1028A, 433580}, {0x1028B, 433596}, {0x1028C, 433727}, {0x1028D, 433629}, {0x1028E, 433645}, {0x1028F, 433678}, {0x10290, 433661}, {0x10291, 433694}, {0x10292, 433825}, {0x10293, 433711}, {0x10294, 433612}, {0x10295, 433743}, {0x10296, 433759}, {0x10297, 433775}, {0x10298, 433808}, {0x10299, 433433}, {0x1029A, 433515}, {0x1029B, 433548}, {0x1029C, 433857}, {0x102A0, 127797}, {0x102A1, 128286}, {0x102A2, 127884}, {0x102A3, 128049}, {0x102A4, 128539}, {0x102A5, 128319}, {0x102A6, 128065}, {0x102A7, 127813}, {0x102A8, 128303}, {0x102A9, 127830}, {0x102AA, 128100}, {0x102AB, 128254}, {0x102AC, 127900}, {0x102AD, 128455}, {0x102AE, 128368}, {0x102AF, 128385}, {0x102B0, 128352}, {0x102B1, 127846}, {0x102B2, 128506}, {0x102B3, 128237}, {0x102B4, 128614}, {0x102B5, 128187}, {0x102B6, 128488}, {0x102B7, 128270}, {0x102B8, 128403}, {0x102B9, 127983}, {0x102BA, 127917}, {0x102BB, 128595}, {0x102BC, 128016}, {0x102BD, 128032}, {0x102BE, 128203}, {0x102BF, 128522}, {0x102C0, 127950}, {0x102C1, 127966}, {0x102C2, 128420}, {0x102C3, 128437}, {0x102C4, 128220}, {0x102C5, 127999}, {0x102C6, 127865}, {0x102C7, 128471}, {0x102C8, 128557}, {0x102C9, 128335}, {0x102CA, 128116}, {0x102CB, 128133}, {0x102CC, 128151}, {0x102CD, 128169}, {0x102CE, 128082}, {0x102CF, 127933}, {0x102D0, 128576}, {0x10300, 510902}, {0x10301, 510922}, {0x10302, 511281}, {0x10303, 510965}, {0x10304, 510986}, {0x10305, 511514}, {0x10306, 511535}, {0x10307, 511198}, {0x10308, 511451}, {0x10309, 511219}, {0x1030A, 511260}, {0x1030B, 511049}, {0x1030C, 511070}, {0x1030D, 511091}, {0x1030E, 511176}, {0x1030F, 511345}, {0x10310, 511365}, {0x10311, 511408}, {0x10312, 511324}, {0x10313, 511112}, {0x10314, 511155}, {0x10315, 511430}, {0x10316, 511473}, {0x10317, 511027}, {0x10318, 511386}, {0x10319, 511302}, {0x1031A, 511006}, {0x1031B, 511133}, {0x1031C, 510943}, {0x1031D, 511239}, {0x1031E, 511493}, {0x10320, 511605}, {0x10321, 511581}, {0x10322, 511628}, {0x10323, 511556}, {0x10330, 299840}, {0x10331, 299880}, {0x10332, 299959}, {0x10333, 299902}, {0x10334, 299859}, {0x10335, 300246}, {0x10336, 300037}, {0x10337, 299978}, {0x10338, 300329}, {0x10339, 299921}, {0x1033A, 300074}, {0x1033B, 300094}, {0x1033C, 300114}, {0x1033D, 300134}, {0x1033E, 300056}, {0x1033F, 300350}, {0x10340, 300223}, {0x10341, 300182}, {0x10342, 300269}, {0x10343, 300289}, {0x10344, 300309}, {0x10345, 300369}, {0x10346, 299939}, {0x10347, 300017}, {0x10348, 299997}, {0x10349, 300203}, {0x1034A, 300155}, {0x10380, 595314}, {0x10381, 595335}, {0x10382, 595399}, {0x10383, 595521}, {0x10384, 595356}, {0x10385, 595443}, {0x10386, 595829}, {0x10387, 595868}, {0x10388, 595462}, {0x10389, 595749}, {0x1038A, 595848}, {0x1038B, 595501}, {0x1038C, 595708}, {0x1038D, 595541}, {0x1038E, 595563}, {0x1038F, 595378}, {0x10390, 595583}, {0x10391, 595889}, {0x10392, 595686}, {0x10393, 595294}, {0x10394, 595603}, {0x10395, 595665}, {0x10396, 595622}, {0x10397, 595643}, {0x10398, 595769}, {0x10399, 595421}, {0x1039A, 595792}, {0x1039B, 595483}, {0x1039C, 595811}, {0x1039D, 595729}, {0x1039F, 595908}, {0x103A0, 511773}, {0x103A1, 512163}, {0x103A2, 512565}, {0x103A3, 512222}, {0x103A4, 512242}, {0x103A5, 512103}, {0x103A6, 512123}, {0x103A7, 512624}, {0x103A8, 511947}, {0x103A9, 512182}, {0x103AA, 512202}, {0x103AB, 512504}, {0x103AC, 512545}, {0x103AD, 511967}, {0x103AE, 512043}, {0x103AF, 512063}, {0x103B0, 512524}, {0x103B1, 512382}, {0x103B2, 511880}, {0x103B3, 512083}, {0x103B4, 512342}, {0x103B5, 512362}, {0x103B6, 512282}, {0x103B7, 512302}, {0x103B8, 512322}, {0x103B9, 512674}, {0x103BA, 512584}, {0x103BB, 512604}, {0x103BC, 512402}, {0x103BD, 512422}, {0x103BE, 512262}, {0x103BF, 512442}, {0x103C0, 512694}, {0x103C1, 512462}, {0x103C2, 512483}, {0x103C3, 512143}, {0x103C8, 511792}, {0x103C9, 511820}, {0x103CA, 511850}, {0x103CB, 512644}, {0x103CC, 511987}, {0x103CD, 512014}, {0x103CE, 511900}, {0x103CF, 511922}, {0x103D0, 512714}, {0x103D1, 511678}, {0x103D2, 511750}, {0x103D3, 511701}, {0x103D4, 511724}, {0x103D5, 511651}, {0x10400, 234691}, {0x10401, 234661}, {0x10402, 234600}, {0x10403, 234630}, {0x10404, 234721}, {0x10405, 234751}, {0x10406, 234955}, {0x10407, 234924}, {0x10408, 234861}, {0x10409, 234892}, {0x1040A, 234986}, {0x1040B, 235017}, {0x1040C, 234123}, {0x1040D, 234808}, {0x1040E, 235131}, {0x1040F, 235157}, {0x10410, 234521}, {0x10411, 234834}, {0x10412, 234149}, {0x10413, 235049}, {0x10414, 234204}, {0x10415, 234176}, {0x10416, 234546}, {0x10417, 234573}, {0x10418, 234494}, {0x10419, 234231}, {0x1041A, 235104}, {0x1041B, 234441}, {0x1041C, 235076}, {0x1041D, 234388}, {0x1041E, 235184}, {0x1041F, 234414}, {0x10420, 235211}, {0x10421, 234362}, {0x10422, 234257}, {0x10423, 234283}, {0x10424, 234309}, {0x10425, 234335}, {0x10426, 234782}, {0x10427, 234468}, {0x10428, 235765}, {0x10429, 235737}, {0x1042A, 235680}, {0x1042B, 235708}, {0x1042C, 235793}, {0x1042D, 235821}, {0x1042E, 236011}, {0x1042F, 235982}, {0x10430, 235923}, {0x10431, 235952}, {0x10432, 236040}, {0x10433, 236069}, {0x10434, 235239}, {0x10435, 235874}, {0x10436, 236175}, {0x10437, 236199}, {0x10438, 235607}, {0x10439, 235898}, {0x1043A, 235263}, {0x1043B, 236099}, {0x1043C, 235314}, {0x1043D, 235288}, {0x1043E, 235630}, {0x1043F, 235655}, {0x10440, 235582}, {0x10441, 235339}, {0x10442, 236150}, {0x10443, 235533}, {0x10444, 236124}, {0x10445, 235484}, {0x10446, 236224}, {0x10447, 235508}, {0x10448, 236249}, {0x10449, 235460}, {0x1044A, 235363}, {0x1044B, 235387}, {0x1044C, 235411}, {0x1044D, 235435}, {0x1044E, 235850}, {0x1044F, 235558}, {0x10450, 548643}, {0x10451, 548762}, {0x10452, 548428}, {0x10453, 548272}, {0x10454, 548741}, {0x10455, 548683}, {0x10456, 548701}, {0x10457, 548154}, {0x10458, 548857}, {0x10459, 548331}, {0x1045A, 548135}, {0x1045B, 548176}, {0x1045C, 548291}, {0x1045D, 548799}, {0x1045E, 548721}, {0x1045F, 548895}, {0x10460, 548468}, {0x10461, 548407}, {0x10462, 548818}, {0x10463, 548310}, {0x10464, 548448}, {0x10465, 548491}, {0x10466, 548389}, {0x10467, 548234}, {0x10468, 548097}, {0x10469, 547982}, {0x1046A, 548568}, {0x1046B, 548837}, {0x1046C, 548624}, {0x1046D, 548020}, {0x1046E, 548663}, {0x1046F, 548511}, {0x10470, 548215}, {0x10471, 548001}, {0x10472, 548370}, {0x10473, 548781}, {0x10474, 548530}, {0x10475, 548586}, {0x10476, 548549}, {0x10477, 548116}, {0x10478, 548057}, {0x10479, 548606}, {0x1047A, 548038}, {0x1047B, 548253}, {0x1047C, 548076}, {0x1047D, 548196}, {0x1047E, 548351}, {0x1047F, 548876}, {0x10480, 518406}, {0x10481, 518426}, {0x10482, 518838}, {0x10483, 518609}, {0x10484, 518892}, {0x10485, 518647}, {0x10486, 518464}, {0x10487, 518781}, {0x10488, 518799}, {0x10489, 518817}, {0x1048A, 518484}, {0x1048B, 518444}, {0x1048C, 518556}, {0x1048D, 518538}, {0x1048E, 518761}, {0x1048F, 518627}, {0x10490, 518666}, {0x10491, 518686}, {0x10492, 518706}, {0x10493, 518873}, {0x10494, 518574}, {0x10495, 518910}, {0x10496, 518371}, {0x10497, 518503}, {0x10498, 518592}, {0x10499, 518726}, {0x1049A, 518856}, {0x1049B, 518388}, {0x1049C, 518520}, {0x1049D, 518743}, {0x104A0, 518352}, {0x104A1, 518258}, {0x104A2, 518334}, {0x104A3, 518314}, {0x104A4, 518220}, {0x104A5, 518201}, {0x104A6, 518296}, {0x104A7, 518276}, {0x104A8, 518181}, {0x104A9, 518239}, {0x10800, 219859}, {0x10801, 219878}, {0x10802, 219897}, {0x10803, 220356}, {0x10804, 220775}, {0x10805, 219916}, {0x10808, 219936}, {0x1080A, 219956}, {0x1080B, 219976}, {0x1080C, 219996}, {0x1080D, 220016}, {0x1080E, 220036}, {0x1080F, 220056}, {0x10810, 220076}, {0x10811, 220096}, {0x10812, 220116}, {0x10813, 220136}, {0x10814, 220156}, {0x10815, 220176}, {0x10816, 220196}, {0x10817, 220216}, {0x10818, 220236}, {0x10819, 220256}, {0x1081A, 220276}, {0x1081B, 220296}, {0x1081C, 220316}, {0x1081D, 220336}, {0x1081E, 220375}, {0x1081F, 220395}, {0x10820, 220415}, {0x10821, 220435}, {0x10822, 220455}, {0x10823, 220475}, {0x10824, 220495}, {0x10825, 220515}, {0x10826, 220535}, {0x10827, 220555}, {0x10828, 220575}, {0x10829, 220595}, {0x1082A, 220615}, {0x1082B, 220635}, {0x1082C, 220655}, {0x1082D, 220675}, {0x1082E, 220695}, {0x1082F, 220715}, {0x10830, 220735}, {0x10831, 220755}, {0x10832, 220794}, {0x10833, 220814}, {0x10834, 220834}, {0x10835, 220854}, {0x10837, 220874}, {0x10838, 220894}, {0x1083C, 220914}, {0x1083F, 220934}, {0x10840, 355097}, {0x10841, 355156}, {0x10842, 355216}, {0x10843, 355185}, {0x10844, 355246}, {0x10845, 355650}, {0x10846, 355707}, {0x10847, 355273}, {0x10848, 355621}, {0x10849, 355678}, {0x1084A, 355302}, {0x1084B, 355331}, {0x1084C, 355362}, {0x1084D, 355390}, {0x1084E, 355533}, {0x1084F, 355127}, {0x10850, 355418}, {0x10851, 355503}, {0x10852, 355445}, {0x10853, 355474}, {0x10854, 355564}, {0x10855, 355593}, {0x10857, 355992}, {0x10858, 355737}, {0x10859, 355964}, {0x1085A, 355903}, {0x1085B, 355838}, {0x1085C, 355933}, {0x1085D, 355765}, {0x1085E, 355801}, {0x1085F, 355866}, {0x10900, 526795}, {0x10901, 526817}, {0x10902, 526862}, {0x10903, 526839}, {0x10904, 526885}, {0x10905, 527196}, {0x10906, 527240}, {0x10907, 526906}, {0x10908, 527174}, {0x10909, 527218}, {0x1090A, 526928}, {0x1090B, 526950}, {0x1090C, 526973}, {0x1090D, 526995}, {0x1090E, 527106}, {0x1090F, 526773}, {0x10910, 527017}, {0x10911, 527083}, {0x10912, 527038}, {0x10913, 527060}, {0x10914, 527129}, {0x10915, 527152}, {0x10916, 527262}, {0x10917, 527314}, {0x10918, 527360}, {0x10919, 527284}, {0x1091A, 527385}, {0x1091B, 527336}, {0x1091F, 527407}, {0x10920, 433889}, {0x10921, 433922}, {0x10922, 434019}, {0x10923, 433954}, {0x10924, 433970}, {0x10925, 434279}, {0x10926, 434035}, {0x10927, 434295}, {0x10928, 434051}, {0x10929, 434067}, {0x1092A, 434100}, {0x1092B, 434116}, {0x1092C, 434149}, {0x1092D, 434181}, {0x1092E, 434213}, {0x1092F, 434230}, {0x10930, 434263}, {0x10931, 434003}, {0x10932, 434165}, {0x10933, 434197}, {0x10934, 434246}, {0x10935, 433905}, {0x10936, 433986}, {0x10937, 434083}, {0x10938, 434132}, {0x10939, 433938}, {0x1093F, 434311}, {0x10A00, 372630}, {0x10A01, 374005}, {0x10A02, 374053}, {0x10A03, 374077}, {0x10A05, 373981}, {0x10A06, 374029}, {0x10A0C, 373952}, {0x10A0D, 373876}, {0x10A0E, 373777}, {0x10A0F, 373910}, {0x10A10, 372909}, {0x10A11, 372930}, {0x10A12, 372824}, {0x10A13, 372845}, {0x10A15, 372693}, {0x10A16, 372714}, {0x10A17, 372888}, {0x10A19, 373059}, {0x10A1A, 373253}, {0x10A1B, 373275}, {0x10A1C, 372757}, {0x10A1D, 372779}, {0x10A1E, 373037}, {0x10A1F, 373210}, {0x10A20, 373231}, {0x10A21, 372736}, {0x10A22, 372802}, {0x10A23, 373016}, {0x10A24, 373081}, {0x10A25, 373102}, {0x10A26, 372650}, {0x10A27, 372671}, {0x10A28, 372995}, {0x10A29, 373343}, {0x10A2A, 373124}, {0x10A2B, 372974}, {0x10A2C, 373322}, {0x10A2D, 373166}, {0x10A2E, 373188}, {0x10A2F, 373145}, {0x10A30, 373364}, {0x10A31, 372867}, {0x10A32, 372952}, {0x10A33, 373298}, {0x10A38, 373802}, {0x10A39, 373828}, {0x10A3A, 373850}, {0x10A3F, 373934}, {0x10A40, 372565}, {0x10A41, 372609}, {0x10A42, 372586}, {0x10A43, 372543}, {0x10A44, 373446}, {0x10A45, 373468}, {0x10A46, 373385}, {0x10A47, 373415}, {0x10A50, 373588}, {0x10A51, 373741}, {0x10A52, 373493}, {0x10A53, 373523}, {0x10A54, 373709}, {0x10A55, 373680}, {0x10A56, 373559}, {0x10A57, 373615}, {0x10A58, 373651}, {0x10A60, 513015}, {0x10A61, 513134}, {0x10A62, 513043}, {0x10A63, 513166}, {0x10A64, 513224}, {0x10A65, 513526}, {0x10A66, 513376}, {0x10A67, 513254}, {0x10A68, 512798}, {0x10A69, 513406}, {0x10A6A, 513347}, {0x10A6B, 513073}, {0x10A6C, 513195}, {0x10A6D, 513103}, {0x10A6E, 513284}, {0x10A6F, 513315}, {0x10A70, 512925}, {0x10A71, 512739}, {0x10A72, 512769}, {0x10A73, 512860}, {0x10A74, 512984}, {0x10A75, 512828}, {0x10A76, 512953}, {0x10A77, 513435}, {0x10A78, 513585}, {0x10A79, 512892}, {0x10A7A, 513555}, {0x10A7B, 513465}, {0x10A7C, 513495}, {0x10A7D, 513646}, {0x10A7E, 513615}, {0x10A7F, 513675}, {0x10B00, 53226}, {0x10B01, 53243}, {0x10B02, 53354}, {0x10B03, 53280}, {0x10B04, 53336}, {0x10B05, 53261}, {0x10B06, 53299}, {0x10B07, 53317}, {0x10B08, 53464}, {0x10B09, 53481}, {0x10B0A, 53832}, {0x10B0B, 53849}, {0x10B0C, 53610}, {0x10B0D, 53627}, {0x10B0E, 54036}, {0x10B0F, 54053}, {0x10B10, 53663}, {0x10B11, 54089}, {0x10B12, 54126}, {0x10B13, 54107}, {0x10B14, 53517}, {0x10B15, 53535}, {0x10B16, 53554}, {0x10B17, 53409}, {0x10B18, 53645}, {0x10B19, 53980}, {0x10B1A, 53998}, {0x10B1B, 53427}, {0x10B1C, 53445}, {0x10B1D, 54017}, {0x10B1E, 53867}, {0x10B1F, 53499}, {0x10B20, 53372}, {0x10B21, 53390}, {0x10B22, 53735}, {0x10B23, 53774}, {0x10B24, 53754}, {0x10B25, 53717}, {0x10B26, 53813}, {0x10B27, 53794}, {0x10B28, 53699}, {0x10B29, 53591}, {0x10B2A, 54163}, {0x10B2B, 54145}, {0x10B2C, 54071}, {0x10B2D, 53885}, {0x10B2E, 53681}, {0x10B2F, 53903}, {0x10B30, 54182}, {0x10B31, 53921}, {0x10B32, 54200}, {0x10B33, 53940}, {0x10B34, 53960}, {0x10B35, 53573}, {0x10B39, 53200}, {0x10B3A, 592816}, {0x10B3B, 553648}, {0x10B3C, 378788}, {0x10B3D, 378633}, {0x10B3E, 378828}, {0x10B3F, 378673}, {0x10B40, 357361}, {0x10B41, 357432}, {0x10B42, 357504}, {0x10B43, 357467}, {0x10B44, 357540}, {0x10B45, 358028}, {0x10B46, 358097}, {0x10B47, 357573}, {0x10B48, 357993}, {0x10B49, 358062}, {0x10B4A, 357608}, {0x10B4B, 357643}, {0x10B4C, 357680}, {0x10B4D, 357714}, {0x10B4E, 357887}, {0x10B4F, 357397}, {0x10B50, 357748}, {0x10B51, 357851}, {0x10B52, 357781}, {0x10B53, 357816}, {0x10B54, 357924}, {0x10B55, 357959}, {0x10B58, 358168}, {0x10B59, 358394}, {0x10B5A, 358321}, {0x10B5B, 358133}, {0x10B5C, 358287}, {0x10B5D, 358357}, {0x10B5E, 358202}, {0x10B5F, 358244}, {0x10B60, 356411}, {0x10B61, 356446}, {0x10B62, 356516}, {0x10B63, 356480}, {0x10B64, 356551}, {0x10B65, 356962}, {0x10B66, 357039}, {0x10B67, 356583}, {0x10B68, 356928}, {0x10B69, 357005}, {0x10B6A, 356617}, {0x10B6B, 356651}, {0x10B6C, 356687}, {0x10B6D, 356725}, {0x10B6E, 356825}, {0x10B6F, 356758}, {0x10B70, 356790}, {0x10B71, 356861}, {0x10B72, 356895}, {0x10B78, 357108}, {0x10B79, 357328}, {0x10B7A, 357257}, {0x10B7B, 357074}, {0x10B7C, 357224}, {0x10B7D, 357292}, {0x10B7E, 357141}, {0x10B7F, 357182}, {0x10C00, 513711}, {0x10C01, 514904}, {0x10C02, 514990}, {0x10C03, 514653}, {0x10C04, 515670}, {0x10C05, 515464}, {0x10C06, 514736}, {0x10C07, 514763}, {0x10C08, 515727}, {0x10C09, 513738}, {0x10C0A, 514932}, {0x10C0B, 513794}, {0x10C0C, 515019}, {0x10C0D, 514084}, {0x10C0E, 515230}, {0x10C0F, 513852}, {0x10C10, 515049}, {0x10C11, 513766}, {0x10C12, 514961}, {0x10C13, 513823}, {0x10C14, 514625}, {0x10C15, 515641}, {0x10C16, 514309}, {0x10C17, 515435}, {0x10C18, 514055}, {0x10C19, 515200}, {0x10C1A, 513881}, {0x10C1B, 515079}, {0x10C1C, 514791}, {0x10C1D, 515756}, {0x10C1E, 514112}, {0x10C1F, 515259}, {0x10C20, 513910}, {0x10C21, 514395}, {0x10C22, 514424}, {0x10C23, 514140}, {0x10C24, 513939}, {0x10C25, 515109}, {0x10C26, 514510}, {0x10C27, 515551}, {0x10C28, 514452}, {0x10C29, 515521}, {0x10C2A, 514539}, {0x10C2B, 515581}, {0x10C2C, 515288}, {0x10C2D, 514481}, {0x10C2E, 515139}, {0x10C2F, 514568}, {0x10C30, 514820}, {0x10C31, 514680}, {0x10C32, 514367}, {0x10C33, 515492}, {0x10C34, 514168}, {0x10C35, 515318}, {0x10C36, 514708}, {0x10C37, 515698}, {0x10C38, 514848}, {0x10C39, 515786}, {0x10C3A, 514196}, {0x10C3B, 515347}, {0x10C3C, 513968}, {0x10C3D, 514224}, {0x10C3E, 513997}, {0x10C3F, 514252}, {0x10C40, 515376}, {0x10C41, 514596}, {0x10C42, 515611}, {0x10C43, 514281}, {0x10C44, 515406}, {0x10C45, 514026}, {0x10C46, 515170}, {0x10C47, 514876}, {0x10C48, 514337}, {0x10E60, 541446}, {0x10E61, 541510}, {0x10E62, 541493}, {0x10E63, 541414}, {0x10E64, 541398}, {0x10E65, 541478}, {0x10E66, 541461}, {0x10E67, 541381}, {0x10E68, 541430}, {0x10E69, 541910}, {0x10E6A, 541971}, {0x10E6B, 541926}, {0x10E6C, 541711}, {0x10E6D, 541668}, {0x10E6E, 541892}, {0x10E6F, 541848}, {0x10E70, 541649}, {0x10E71, 541779}, {0x10E72, 541798}, {0x10E73, 541990}, {0x10E74, 541945}, {0x10E75, 541729}, {0x10E76, 541686}, {0x10E77, 541868}, {0x10E78, 541822}, {0x10E79, 541623}, {0x10E7A, 541754}, {0x10E7B, 541525}, {0x10E7C, 541548}, {0x10E7D, 541574}, {0x10E7E, 541598}, {0x11000, 89452}, {0x11001, 89431}, {0x11002, 89524}, {0x11003, 89476}, {0x11004, 89500}, {0x11005, 87942}, {0x11006, 87958}, {0x11007, 88219}, {0x11008, 88235}, {0x11009, 88724}, {0x1100A, 88740}, {0x1100B, 88823}, {0x1100C, 88847}, {0x1100D, 88774}, {0x1100E, 88798}, {0x1100F, 88151}, {0x11010, 87975}, {0x11011, 88445}, {0x11012, 87992}, {0x11013, 88287}, {0x11014, 88304}, {0x11015, 88167}, {0x11016, 88184}, {0x11017, 88391}, {0x11018, 88044}, {0x11019, 88061}, {0x1101A, 88252}, {0x1101B, 88269}, {0x1101C, 88427}, {0x1101D, 88687}, {0x1101E, 88705}, {0x1101F, 88096}, {0x11020, 88114}, {0x11021, 88409}, {0x11022, 88652}, {0x11023, 88669}, {0x11024, 88079}, {0x11025, 88133}, {0x11026, 88374}, {0x11027, 88547}, {0x11028, 88564}, {0x11029, 88009}, {0x1102A, 88026}, {0x1102B, 88357}, {0x1102C, 88872}, {0x1102D, 88582}, {0x1102E, 88322}, {0x1102F, 88757}, {0x11030, 88616}, {0x11031, 88634}, {0x11032, 88599}, {0x11033, 88202}, {0x11034, 88339}, {0x11035, 88461}, {0x11036, 88519}, {0x11037, 88490}, {0x11038, 89558}, {0x11039, 89621}, {0x1103A, 89674}, {0x1103B, 89694}, {0x1103C, 89735}, {0x1103D, 89755}, {0x1103E, 89833}, {0x1103F, 89861}, {0x11040, 89776}, {0x11041, 89804}, {0x11042, 89654}, {0x11043, 89579}, {0x11044, 89715}, {0x11045, 89600}, {0x11046, 89544}, {0x11047, 87729}, {0x11048, 87922}, {0x11049, 89329}, {0x1104A, 89352}, {0x1104B, 89382}, {0x1104C, 89297}, {0x1104D, 89406}, {0x11052, 89048}, {0x11053, 89279}, {0x11054, 89238}, {0x11055, 88989}, {0x11056, 88950}, {0x11057, 89161}, {0x11058, 89119}, {0x11059, 88889}, {0x1105A, 89008}, {0x1105B, 89199}, {0x1105C, 89258}, {0x1105D, 89217}, {0x1105E, 88969}, {0x1105F, 88930}, {0x11060, 89179}, {0x11061, 89139}, {0x11062, 88909}, {0x11063, 89027}, {0x11064, 89066}, {0x11065, 89092}, {0x11066, 87904}, {0x11067, 87815}, {0x11068, 87887}, {0x11069, 87868}, {0x1106A, 87779}, {0x1106B, 87761}, {0x1106C, 87851}, {0x1106D, 87832}, {0x1106E, 87742}, {0x1106F, 87797}, {0x11080, 362567}, {0x11081, 362546}, {0x11082, 362628}, {0x11083, 361724}, {0x11084, 361740}, {0x11085, 362021}, {0x11086, 362037}, {0x11087, 362440}, {0x11088, 362456}, {0x11089, 361953}, {0x1108A, 361757}, {0x1108B, 362229}, {0x1108C, 361774}, {0x1108D, 362089}, {0x1108E, 362106}, {0x1108F, 361969}, {0x11090, 361986}, {0x11091, 362175}, {0x11092, 361826}, {0x11093, 361843}, {0x11094, 362054}, {0x11095, 362071}, {0x11096, 362211}, {0x11097, 362403}, {0x11098, 362421}, {0x11099, 361878}, {0x1109A, 361896}, {0x1109B, 361916}, {0x1109C, 362297}, {0x1109D, 362193}, {0x1109E, 362368}, {0x1109F, 362385}, {0x110A0, 361861}, {0x110A1, 361935}, {0x110A2, 362158}, {0x110A3, 362245}, {0x110A4, 362262}, {0x110A5, 361791}, {0x110A6, 361808}, {0x110A7, 362141}, {0x110A8, 362490}, {0x110A9, 362280}, {0x110AA, 362124}, {0x110AB, 362473}, {0x110AC, 362332}, {0x110AD, 362350}, {0x110AE, 362315}, {0x110AF, 362004}, {0x110B0, 362648}, {0x110B1, 362731}, {0x110B2, 362751}, {0x110B3, 362792}, {0x110B4, 362812}, {0x110B5, 362711}, {0x110B6, 362669}, {0x110B7, 362772}, {0x110B8, 362690}, {0x110B9, 362609}, {0x110BA, 362591}, {0x110BB, 361615}, {0x110BC, 361700}, {0x110BD, 362507}, {0x110BE, 362526}, {0x110BF, 361673}, {0x110C0, 361640}, {0x110C1, 361653}, {0x12000, 195105}, {0x12001, 195122}, {0x12002, 195147}, {0x12003, 195174}, {0x12004, 195207}, {0x12005, 195233}, {0x12006, 195260}, {0x12007, 195294}, {0x12008, 195322}, {0x12009, 195349}, {0x1200A, 195367}, {0x1200B, 195408}, {0x1200C, 195437}, {0x1200D, 195471}, {0x1200E, 195499}, {0x1200F, 195533}, {0x12010, 195560}, {0x12011, 195593}, {0x12012, 195622}, {0x12013, 195652}, {0x12014, 195682}, {0x12015, 195385}, {0x12016, 195722}, {0x12017, 195741}, {0x12018, 195772}, {0x12019, 195807}, {0x1201A, 195843}, {0x1201B, 195873}, {0x1201C, 195903}, {0x1201D, 195921}, {0x1201E, 195939}, {0x1201F, 195969}, {0x12020, 196009}, {0x12021, 196027}, {0x12022, 196054}, {0x12023, 196083}, {0x12024, 196112}, {0x12025, 196139}, {0x12026, 196168}, {0x12027, 196195}, {0x12028, 196223}, {0x12029, 196251}, {0x1202A, 196271}, {0x1202B, 196292}, {0x1202C, 196312}, {0x1202D, 196342}, {0x1202E, 196360}, {0x1202F, 196472}, {0x12030, 196386}, {0x12031, 196436}, {0x12032, 196502}, {0x12033, 196523}, {0x12034, 196543}, {0x12035, 196563}, {0x12036, 196593}, {0x12037, 196614}, {0x12038, 196635}, {0x12039, 196850}, {0x1203A, 196654}, {0x1203B, 196788}, {0x1203C, 196683}, {0x1203D, 196720}, {0x1203E, 196879}, {0x1203F, 196899}, {0x12040, 196921}, {0x12041, 196939}, {0x12042, 196958}, {0x12043, 196978}, {0x12044, 197000}, {0x12045, 197019}, {0x12046, 197047}, {0x12047, 197068}, {0x12048, 197087}, {0x12049, 197108}, {0x1204A, 197126}, {0x1204B, 197152}, {0x1204C, 197180}, {0x1204D, 197213}, {0x1204E, 197261}, {0x1204F, 197290}, {0x12050, 197231}, {0x12051, 197319}, {0x12052, 197340}, {0x12053, 197372}, {0x12054, 197391}, {0x12055, 197411}, {0x12056, 197429}, {0x12057, 197448}, {0x12058, 197492}, {0x12059, 197529}, {0x1205A, 197567}, {0x1205B, 197602}, {0x1205C, 197637}, {0x1205D, 197682}, {0x1205E, 197717}, {0x1205F, 197754}, {0x12060, 197790}, {0x12061, 197825}, {0x12062, 197860}, {0x12063, 197903}, {0x12064, 197939}, {0x12065, 197974}, {0x12066, 198009}, {0x12067, 198055}, {0x12068, 198091}, {0x12069, 198126}, {0x1206A, 198171}, {0x1206B, 198206}, {0x1206C, 198243}, {0x1206D, 198288}, {0x1206E, 198324}, {0x1206F, 198343}, {0x12070, 198362}, {0x12071, 198383}, {0x12072, 198404}, {0x12073, 198422}, {0x12074, 198441}, {0x12075, 198460}, {0x12076, 198489}, {0x12077, 198509}, {0x12078, 198528}, {0x12079, 198566}, {0x1207A, 198586}, {0x1207B, 198627}, {0x1207C, 198604}, {0x1207D, 198653}, {0x1207E, 198679}, {0x1207F, 198698}, {0x12080, 198728}, {0x12081, 198748}, {0x12082, 198767}, {0x12083, 198788}, {0x12084, 198807}, {0x12085, 198826}, {0x12086, 198846}, {0x12087, 198871}, {0x12088, 198901}, {0x12089, 198921}, {0x1208A, 198941}, {0x1208B, 198995}, {0x1208C, 198958}, {0x1208D, 199022}, {0x1208E, 199040}, {0x1208F, 199082}, {0x12090, 199110}, {0x12091, 199137}, {0x12092, 199165}, {0x12093, 199193}, {0x12094, 199219}, {0x12095, 199239}, {0x12096, 199259}, {0x12097, 199277}, {0x12098, 199381}, {0x12099, 199410}, {0x1209A, 199444}, {0x1209B, 199295}, {0x1209C, 199325}, {0x1209D, 199355}, {0x1209E, 199471}, {0x1209F, 199491}, {0x120A0, 199512}, {0x120A1, 199532}, {0x120A2, 199552}, {0x120A3, 199580}, {0x120A4, 199617}, {0x120A5, 199664}, {0x120A6, 199693}, {0x120A7, 199723}, {0x120A8, 199759}, {0x120A9, 199800}, {0x120AA, 199829}, {0x120AB, 199863}, {0x120AC, 199898}, {0x120AD, 199931}, {0x120AE, 199972}, {0x120AF, 200002}, {0x120B0, 200031}, {0x120B1, 200071}, {0x120B2, 200100}, {0x120B3, 200129}, {0x120B4, 200158}, {0x120B5, 200187}, {0x120B6, 200205}, {0x120B7, 200228}, {0x120B8, 200275}, {0x120B9, 200318}, {0x120BA, 200353}, {0x120BB, 200389}, {0x120BC, 200432}, {0x120BD, 200460}, {0x120BE, 200489}, {0x120BF, 200528}, {0x120C0, 200557}, {0x120C1, 200594}, {0x120C2, 200623}, {0x120C3, 200660}, {0x120C4, 200688}, {0x120C5, 200716}, {0x120C6, 200755}, {0x120C7, 200784}, {0x120C8, 200812}, {0x120C9, 200848}, {0x120CA, 200876}, {0x120CB, 200920}, {0x120CC, 200955}, {0x120CD, 200984}, {0x120CE, 201012}, {0x120CF, 201041}, {0x120D0, 201077}, {0x120D1, 201115}, {0x120D2, 201161}, {0x120D3, 201190}, {0x120D4, 201227}, {0x120D5, 201263}, {0x120D6, 201293}, {0x120D7, 201327}, {0x120D8, 201373}, {0x120D9, 201402}, {0x120DA, 201434}, {0x120DB, 201463}, {0x120DC, 201501}, {0x120DD, 201538}, {0x120DE, 201566}, {0x120DF, 201602}, {0x120E0, 201630}, {0x120E1, 201659}, {0x120E2, 201697}, {0x120E3, 201725}, {0x120E4, 201754}, {0x120E5, 201783}, {0x120E6, 201812}, {0x120E7, 201850}, {0x120E8, 201880}, {0x120E9, 201909}, {0x120EA, 201939}, {0x120EB, 201966}, {0x120EC, 201994}, {0x120ED, 200247}, {0x120EE, 202030}, {0x120EF, 202050}, {0x120F0, 202084}, {0x120F1, 202103}, {0x120F2, 202144}, {0x120F3, 202163}, {0x120F4, 202208}, {0x120F5, 202229}, {0x120F6, 202248}, {0x120F7, 202267}, {0x120F8, 202351}, {0x120F9, 202321}, {0x120FA, 202287}, {0x120FB, 202376}, {0x120FC, 202395}, {0x120FD, 202415}, {0x120FE, 202437}, {0x120FF, 202460}, {0x12100, 202493}, {0x12101, 202541}, {0x12102, 202567}, {0x12103, 202511}, {0x12104, 202593}, {0x12105, 202644}, {0x12106, 202612}, {0x12107, 202672}, {0x12108, 202693}, {0x12109, 202713}, {0x1210A, 202738}, {0x1210B, 202758}, {0x1210C, 202795}, {0x1210D, 202831}, {0x1210E, 202861}, {0x1210F, 202899}, {0x12110, 202928}, {0x12111, 202949}, {0x12112, 202969}, {0x12113, 203028}, {0x12114, 203058}, {0x12115, 203003}, {0x12116, 203089}, {0x12117, 203107}, {0x12118, 203137}, {0x12119, 203180}, {0x1211A, 203209}, {0x1211B, 203253}, {0x1211C, 203282}, {0x1211D, 203156}, {0x1211E, 203321}, {0x1211F, 203374}, {0x12120, 203410}, {0x12121, 203340}, {0x12122, 203439}, {0x12123, 203458}, {0x12124, 203477}, {0x12125, 203506}, {0x12126, 203525}, {0x12127, 203545}, {0x12128, 203566}, {0x12129, 203588}, {0x1212A, 203629}, {0x1212B, 203606}, {0x1212C, 203652}, {0x1212D, 203671}, {0x1212E, 203689}, {0x1212F, 203717}, {0x12130, 203746}, {0x12131, 203774}, {0x12132, 203803}, {0x12133, 203831}, {0x12134, 203859}, {0x12135, 203887}, {0x12136, 203915}, {0x12137, 203941}, {0x12138, 203959}, {0x12139, 203979}, {0x1213A, 204008}, {0x1213B, 204038}, {0x1213C, 204071}, {0x1213D, 204102}, {0x1213E, 204131}, {0x1213F, 204151}, {0x12140, 204168}, {0x12141, 204187}, {0x12142, 204205}, {0x12143, 204225}, {0x12144, 204259}, {0x12145, 204297}, {0x12146, 204315}, {0x12147, 204334}, {0x12148, 204435}, {0x12149, 204381}, {0x1214A, 204357}, {0x1214B, 204457}, {0x1214C, 204475}, {0x1214D, 204509}, {0x1214E, 204528}, {0x1214F, 204632}, {0x12150, 204546}, {0x12151, 204576}, {0x12152, 204606}, {0x12153, 204661}, {0x12154, 204681}, {0x12155, 204699}, {0x12156, 204717}, {0x12157, 204736}, {0x12158, 204754}, {0x12159, 204780}, {0x1215A, 204807}, {0x1215B, 204843}, {0x1215C, 204872}, {0x1215D, 204900}, {0x1215E, 204930}, {0x1215F, 204958}, {0x12160, 204985}, {0x12161, 205015}, {0x12162, 205044}, {0x12163, 205071}, {0x12164, 205099}, {0x12165, 205133}, {0x12166, 205161}, {0x12167, 205206}, {0x12168, 205233}, {0x12169, 205305}, {0x1216A, 205262}, {0x1216B, 205343}, {0x1216C, 205370}, {0x1216D, 205399}, {0x1216E, 205427}, {0x1216F, 205454}, {0x12170, 205482}, {0x12171, 205509}, {0x12172, 205537}, {0x12173, 205564}, {0x12174, 205591}, {0x12175, 205618}, {0x12176, 205653}, {0x12177, 205688}, {0x12178, 205723}, {0x12179, 205750}, {0x1217A, 205788}, {0x1217B, 205815}, {0x1217C, 205843}, {0x1217D, 205870}, {0x1217E, 205897}, {0x1217F, 205924}, {0x12180, 205952}, {0x12181, 205980}, {0x12182, 206008}, {0x12183, 206037}, {0x12184, 206065}, {0x12185, 206093}, {0x12186, 206123}, {0x12187, 206151}, {0x12188, 206177}, {0x12189, 206204}, {0x1218A, 206231}, {0x1218B, 206269}, {0x1218C, 206297}, {0x1218D, 206324}, {0x1218E, 206343}, {0x1218F, 206375}, {0x12190, 206394}, {0x12191, 206414}, {0x12192, 206434}, {0x12193, 206454}, {0x12194, 206474}, {0x12195, 206504}, {0x12196, 206523}, {0x12197, 206557}, {0x12198, 206608}, {0x12199, 206576}, {0x1219A, 206637}, {0x1219B, 206657}, {0x1219C, 206677}, {0x1219D, 206699}, {0x1219E, 206754}, {0x1219F, 206821}, {0x121A0, 206842}, {0x121A1, 206860}, {0x121A2, 206888}, {0x121A3, 206914}, {0x121A4, 206941}, {0x121A5, 206960}, {0x121A6, 206979}, {0x121A7, 207000}, {0x121A8, 207020}, {0x121A9, 207042}, {0x121AA, 207076}, {0x121AB, 207094}, {0x121AC, 207153}, {0x121AD, 207172}, {0x121AE, 207191}, {0x121AF, 207223}, {0x121B0, 207242}, {0x121B1, 207261}, {0x121B2, 207285}, {0x121B3, 207304}, {0x121B4, 207323}, {0x121B5, 207355}, {0x121B6, 207377}, {0x121B7, 207399}, {0x121B8, 207417}, {0x121B9, 207467}, {0x121BA, 207496}, {0x121BB, 207541}, {0x121BC, 207579}, {0x121BD, 207617}, {0x121BE, 207647}, {0x121BF, 207677}, {0x121C0, 207718}, {0x121C1, 207749}, {0x121C2, 207779}, {0x121C3, 207810}, {0x121C4, 207840}, {0x121C5, 207870}, {0x121C6, 207901}, {0x121C7, 207932}, {0x121C8, 207972}, {0x121C9, 208002}, {0x121CA, 208033}, {0x121CB, 208073}, {0x121CC, 208109}, {0x121CD, 208139}, {0x121CE, 208177}, {0x121CF, 208215}, {0x121D0, 208245}, {0x121D1, 208276}, {0x121D2, 208307}, {0x121D3, 208338}, {0x121D4, 208384}, {0x121D5, 208417}, {0x121D6, 208449}, {0x121D7, 208479}, {0x121D8, 208510}, {0x121D9, 208540}, {0x121DA, 208578}, {0x121DB, 208610}, {0x121DC, 208640}, {0x121DD, 208680}, {0x121DE, 208734}, {0x121DF, 208782}, {0x121E0, 208814}, {0x121E1, 208856}, {0x121E2, 208887}, {0x121E3, 208918}, {0x121E4, 208950}, {0x121E5, 209003}, {0x121E6, 209032}, {0x121E7, 209068}, {0x121E8, 209111}, {0x121E9, 209150}, {0x121EA, 209180}, {0x121EB, 207438}, {0x121EC, 209211}, {0x121ED, 209304}, {0x121EE, 209335}, {0x121EF, 209232}, {0x121F0, 209258}, {0x121F1, 209375}, {0x121F2, 209397}, {0x121F3, 209416}, {0x121F4, 209445}, {0x121F5, 209464}, {0x121F6, 209493}, {0x121F7, 209530}, {0x121F8, 209548}, {0x121F9, 209567}, {0x121FA, 209589}, {0x121FB, 209609}, {0x121FC, 209627}, {0x121FD, 209655}, {0x121FE, 209816}, {0x121FF, 209844}, {0x12200, 209873}, {0x12201, 209903}, {0x12202, 209938}, {0x12203, 209973}, {0x12204, 210011}, {0x12205, 210039}, {0x12206, 210069}, {0x12207, 210099}, {0x12208, 210138}, {0x12209, 210166}, {0x1220A, 210203}, {0x1220B, 210234}, {0x1220C, 210270}, {0x1220D, 210298}, {0x1220E, 210326}, {0x1220F, 210363}, {0x12210, 210401}, {0x12211, 209792}, {0x12212, 209674}, {0x12213, 209706}, {0x12214, 209765}, {0x12215, 209738}, {0x12216, 210431}, {0x12217, 210450}, {0x12218, 210507}, {0x12219, 210471}, {0x1221A, 210539}, {0x1221B, 210568}, {0x1221C, 210587}, {0x1221D, 210606}, {0x1221E, 210625}, {0x1221F, 210653}, {0x12220, 210694}, {0x12221, 210735}, {0x12222, 210712}, {0x12223, 210764}, {0x12224, 210783}, {0x12225, 210802}, {0x12226, 210821}, {0x12227, 210841}, {0x12228, 210862}, {0x12229, 210880}, {0x1222A, 210899}, {0x1222B, 210917}, {0x1222C, 210936}, {0x1222D, 210954}, {0x1222E, 210980}, {0x1222F, 210999}, {0x12230, 211023}, {0x12231, 211045}, {0x12232, 211067}, {0x12233, 211197}, {0x12234, 211225}, {0x12235, 211255}, {0x12236, 211121}, {0x12237, 211151}, {0x12238, 211087}, {0x12239, 211284}, {0x1223A, 211331}, {0x1223B, 211360}, {0x1223C, 211397}, {0x1223D, 211305}, {0x1223E, 211427}, {0x1223F, 211445}, {0x12240, 211464}, {0x12241, 211484}, {0x12242, 211547}, {0x12243, 211513}, {0x12244, 211582}, {0x12245, 211622}, {0x12246, 211603}, {0x12247, 211649}, {0x12248, 211669}, {0x12249, 211713}, {0x1224A, 211739}, {0x1224B, 211687}, {0x1224C, 211766}, {0x1224D, 211784}, {0x1224E, 211810}, {0x1224F, 211829}, {0x12250, 211848}, {0x12251, 211883}, {0x12252, 211927}, {0x12253, 211949}, {0x12254, 211980}, {0x12255, 212012}, {0x12256, 212053}, {0x12257, 212085}, {0x12258, 212131}, {0x12259, 212162}, {0x1225A, 212194}, {0x1225B, 212226}, {0x1225C, 212268}, {0x1225D, 212309}, {0x1225E, 212359}, {0x1225F, 212399}, {0x12260, 212431}, {0x12261, 212452}, {0x12262, 212470}, {0x12263, 212490}, {0x12264, 212590}, {0x12265, 212625}, {0x12266, 212661}, {0x12267, 212696}, {0x12268, 212756}, {0x12269, 212819}, {0x1226A, 212791}, {0x1226B, 212509}, {0x1226C, 212541}, {0x1226D, 212843}, {0x1226E, 212864}, {0x1226F, 212902}, {0x12270, 212936}, {0x12271, 212971}, {0x12272, 213006}, {0x12273, 213046}, {0x12274, 213082}, {0x12275, 213116}, {0x12276, 213150}, {0x12277, 213187}, {0x12278, 213221}, {0x12279, 213258}, {0x1227A, 213297}, {0x1227B, 213315}, {0x1227C, 213334}, {0x1227D, 213353}, {0x1227E, 213372}, {0x1227F, 213393}, {0x12280, 213441}, {0x12281, 213467}, {0x12282, 213494}, {0x12283, 213521}, {0x12284, 213548}, {0x12285, 213574}, {0x12286, 213600}, {0x12287, 213627}, {0x12288, 213653}, {0x12289, 213411}, {0x1228A, 213680}, {0x1228B, 213737}, {0x1228C, 213768}, {0x1228D, 213798}, {0x1228E, 213701}, {0x1228F, 213828}, {0x12290, 213846}, {0x12291, 213865}, {0x12292, 213883}, {0x12293, 213901}, {0x12294, 213962}, {0x12295, 213919}, {0x12296, 214017}, {0x12297, 214044}, {0x12298, 214072}, {0x12299, 214101}, {0x1229A, 214129}, {0x1229B, 214158}, {0x1229C, 214187}, {0x1229D, 214216}, {0x1229E, 214244}, {0x1229F, 214273}, {0x122A0, 214302}, {0x122A1, 214332}, {0x122A2, 214361}, {0x122A3, 214389}, {0x122A4, 214417}, {0x122A5, 214445}, {0x122A6, 214473}, {0x122A7, 213989}, {0x122A8, 213938}, {0x122A9, 214502}, {0x122AA, 214521}, {0x122AB, 214557}, {0x122AC, 214579}, {0x122AD, 214598}, {0x122AE, 214617}, {0x122AF, 214637}, {0x122B0, 214665}, {0x122B1, 214695}, {0x122B2, 214726}, {0x122B3, 214755}, {0x122B4, 214786}, {0x122B5, 214816}, {0x122B6, 214844}, {0x122B7, 214879}, {0x122B8, 214899}, {0x122B9, 214920}, {0x122BA, 214941}, {0x122BB, 214960}, {0x122BC, 214982}, {0x122BD, 215036}, {0x122BE, 215090}, {0x122BF, 215111}, {0x122C0, 215131}, {0x122C1, 215152}, {0x122C2, 215174}, {0x122C3, 215198}, {0x122C4, 215218}, {0x122C5, 215246}, {0x122C6, 215275}, {0x122C7, 215295}, {0x122C8, 215323}, {0x122C9, 215353}, {0x122CA, 215385}, {0x122CB, 215415}, {0x122CC, 215445}, {0x122CD, 215475}, {0x122CE, 215510}, {0x122CF, 215543}, {0x122D0, 215573}, {0x122D1, 215603}, {0x122D2, 215633}, {0x122D3, 215655}, {0x122D4, 215718}, {0x122D5, 215675}, {0x122D6, 215743}, {0x122D7, 215764}, {0x122D8, 215783}, {0x122D9, 215820}, {0x122DA, 215840}, {0x122DB, 215862}, {0x122DC, 215880}, {0x122DD, 215903}, {0x122DE, 215922}, {0x122DF, 215942}, {0x122E0, 215977}, {0x122E1, 215997}, {0x122E2, 216018}, {0x122E3, 216036}, {0x122E4, 216062}, {0x122E5, 216081}, {0x122E6, 216101}, {0x122E7, 216122}, {0x122E8, 216141}, {0x122E9, 216163}, {0x122EA, 216182}, {0x122EB, 216202}, {0x122EC, 216220}, {0x122ED, 216270}, {0x122EE, 216297}, {0x122EF, 216247}, {0x122F0, 216324}, {0x122F1, 216343}, {0x122F2, 216397}, {0x122F3, 216424}, {0x122F4, 216443}, {0x122F5, 216471}, {0x122F6, 216500}, {0x122F7, 216529}, {0x122F8, 216558}, {0x122F9, 216588}, {0x122FA, 216616}, {0x122FB, 216636}, {0x122FC, 216655}, {0x122FD, 216673}, {0x122FE, 216696}, {0x122FF, 216714}, {0x12300, 216737}, {0x12301, 216756}, {0x12302, 216857}, {0x12303, 216775}, {0x12304, 216803}, {0x12305, 216887}, {0x12306, 216905}, {0x12307, 216925}, {0x12308, 216944}, {0x12309, 216963}, {0x1230A, 216982}, {0x1230B, 217021}, {0x1230C, 217038}, {0x1230D, 217195}, {0x1230E, 217059}, {0x1230F, 217107}, {0x12310, 217144}, {0x12311, 217216}, {0x12312, 217234}, {0x12313, 217252}, {0x12314, 217293}, {0x12315, 217380}, {0x12316, 217408}, {0x12317, 217435}, {0x12318, 217475}, {0x12319, 217270}, {0x1231A, 217318}, {0x1231B, 217344}, {0x1231C, 217520}, {0x1231D, 217540}, {0x1231E, 217558}, {0x1231F, 217588}, {0x12320, 217623}, {0x12321, 217652}, {0x12322, 217678}, {0x12323, 217699}, {0x12324, 217719}, {0x12325, 217752}, {0x12326, 217781}, {0x12327, 217799}, {0x12328, 217822}, {0x12329, 217840}, {0x1232A, 217870}, {0x1232B, 217896}, {0x1232C, 217915}, {0x1232D, 217950}, {0x1232E, 217985}, {0x1232F, 218013}, {0x12330, 218041}, {0x12331, 218070}, {0x12332, 218098}, {0x12333, 218135}, {0x12334, 218171}, {0x12335, 218190}, {0x12336, 218209}, {0x12337, 218229}, {0x12338, 218248}, {0x12339, 218275}, {0x1233A, 218307}, {0x1233B, 218336}, {0x1233C, 218365}, {0x1233D, 218393}, {0x1233E, 218422}, {0x1233F, 218457}, {0x12340, 218486}, {0x12341, 218514}, {0x12342, 218542}, {0x12343, 218571}, {0x12344, 218599}, {0x12345, 218628}, {0x12346, 218656}, {0x12347, 218685}, {0x12348, 218714}, {0x12349, 218742}, {0x1234A, 218771}, {0x1234B, 218801}, {0x1234C, 218829}, {0x1234D, 218865}, {0x1234E, 218893}, {0x1234F, 218924}, {0x12350, 218945}, {0x12351, 218974}, {0x12352, 218993}, {0x12353, 219020}, {0x12354, 219048}, {0x12355, 219077}, {0x12356, 219149}, {0x12357, 219107}, {0x12358, 219127}, {0x12359, 219169}, {0x1235A, 219190}, {0x1235B, 219209}, {0x1235C, 219241}, {0x1235D, 219260}, {0x1235E, 219314}, {0x1235F, 219278}, {0x12360, 219337}, {0x12361, 219356}, {0x12362, 219376}, {0x12363, 219395}, {0x12364, 219413}, {0x12365, 219439}, {0x12366, 219458}, {0x12367, 219477}, {0x12368, 219506}, {0x12369, 219525}, {0x1236A, 219545}, {0x1236B, 219563}, {0x1236C, 219582}, {0x1236D, 219609}, {0x1236E, 219630}, {0x12400, 194539}, {0x12401, 193987}, {0x12402, 191886}, {0x12403, 191466}, {0x12404, 193748}, {0x12405, 193337}, {0x12406, 191203}, {0x12407, 192525}, {0x12408, 194173}, {0x12409, 192067}, {0x1240A, 191647}, {0x1240B, 193815}, {0x1240C, 193370}, {0x1240D, 191236}, {0x1240E, 192557}, {0x1240F, 192236}, {0x12410, 191856}, {0x12411, 193913}, {0x12412, 193474}, {0x12413, 191340}, {0x12414, 192658}, {0x12415, 193113}, {0x12416, 194703}, {0x12417, 194207}, {0x12418, 192100}, {0x12419, 191680}, {0x1241A, 193847}, {0x1241B, 193404}, {0x1241C, 191270}, {0x1241D, 192590}, {0x1241E, 193146}, {0x1241F, 194736}, {0x12420, 194242}, {0x12421, 192134}, {0x12422, 191714}, {0x12423, 194769}, {0x12424, 194277}, {0x12425, 194312}, {0x12426, 192168}, {0x12427, 191748}, {0x12428, 193880}, {0x12429, 193439}, {0x1242A, 191305}, {0x1242B, 192624}, {0x1242C, 193218}, {0x1242D, 194802}, {0x1242E, 194360}, {0x1242F, 194395}, {0x12430, 192202}, {0x12431, 191782}, {0x12432, 193651}, {0x12433, 193700}, {0x12434, 193010}, {0x12435, 194638}, {0x12436, 194092}, {0x12437, 194126}, {0x12438, 192034}, {0x12439, 191614}, {0x1243A, 194443}, {0x1243B, 194491}, {0x1243C, 192266}, {0x1243D, 192411}, {0x1243E, 192313}, {0x1243F, 192362}, {0x12440, 193942}, {0x12441, 193603}, {0x12442, 193505}, {0x12443, 193554}, {0x12444, 191371}, {0x12445, 191418}, {0x12446, 192688}, {0x12447, 192786}, {0x12448, 192835}, {0x12449, 192736}, {0x1244A, 194570}, {0x1244B, 194020}, {0x1244C, 191918}, {0x1244D, 191498}, {0x1244E, 193779}, {0x1244F, 192978}, {0x12450, 194606}, {0x12451, 194058}, {0x12452, 191955}, {0x12453, 191988}, {0x12454, 191535}, {0x12455, 191568}, {0x12456, 192492}, {0x12457, 192459}, {0x12458, 193080}, {0x12459, 194670}, {0x1245A, 193251}, {0x1245B, 194835}, {0x1245C, 191816}, {0x1245D, 193289}, {0x1245E, 194874}, {0x1245F, 193042}, {0x12460, 193179}, {0x12461, 192932}, {0x12462, 192884}, {0x12470, 195010}, {0x12471, 195063}, {0x12472, 194923}, {0x12473, 194965}, {0x13000, 248704}, {0x13001, 248729}, {0x13002, 248754}, {0x13003, 248779}, {0x13004, 248804}, {0x13005, 248829}, {0x13006, 248855}, {0x13007, 248880}, {0x13008, 248906}, {0x13009, 248932}, {0x1300A, 248957}, {0x1300B, 248982}, {0x1300C, 249007}, {0x1300D, 249032}, {0x1300E, 249057}, {0x1300F, 249082}, {0x13010, 249107}, {0x13011, 249132}, {0x13012, 249158}, {0x13013, 249183}, {0x13014, 249208}, {0x13015, 249233}, {0x13016, 249259}, {0x13017, 249284}, {0x13018, 249309}, {0x13019, 249334}, {0x1301A, 249359}, {0x1301B, 249384}, {0x1301C, 249409}, {0x1301D, 249434}, {0x1301E, 249459}, {0x1301F, 249484}, {0x13020, 249509}, {0x13021, 249534}, {0x13022, 249559}, {0x13023, 249584}, {0x13024, 249609}, {0x13025, 249634}, {0x13026, 249660}, {0x13027, 249685}, {0x13028, 249710}, {0x13029, 249735}, {0x1302A, 249760}, {0x1302B, 249785}, {0x1302C, 249810}, {0x1302D, 249835}, {0x1302E, 249860}, {0x1302F, 249886}, {0x13030, 249911}, {0x13031, 249936}, {0x13032, 249962}, {0x13033, 249987}, {0x13034, 250013}, {0x13035, 250038}, {0x13036, 250063}, {0x13037, 250089}, {0x13038, 250114}, {0x13039, 250139}, {0x1303A, 250164}, {0x1303B, 250189}, {0x1303C, 250214}, {0x1303D, 250239}, {0x1303E, 250264}, {0x1303F, 250289}, {0x13040, 250314}, {0x13041, 250339}, {0x13042, 250364}, {0x13043, 250389}, {0x13044, 250414}, {0x13045, 250439}, {0x13046, 250464}, {0x13047, 250489}, {0x13048, 250514}, {0x13049, 250539}, {0x1304A, 250564}, {0x1304B, 250589}, {0x1304C, 250614}, {0x1304D, 250639}, {0x1304E, 250664}, {0x1304F, 250689}, {0x13050, 251600}, {0x13051, 251625}, {0x13052, 251650}, {0x13053, 251675}, {0x13054, 251700}, {0x13055, 251725}, {0x13056, 251751}, {0x13057, 251776}, {0x13058, 251801}, {0x13059, 251826}, {0x1305A, 251851}, {0x1305B, 251876}, {0x1305C, 251901}, {0x1305D, 251927}, {0x1305E, 251953}, {0x1305F, 251979}, {0x13060, 252004}, {0x13061, 252029}, {0x13062, 252054}, {0x13063, 252079}, {0x13064, 252104}, {0x13065, 252129}, {0x13066, 252154}, {0x13067, 252179}, {0x13068, 252205}, {0x13069, 252230}, {0x1306A, 252255}, {0x1306B, 252280}, {0x1306C, 252305}, {0x1306D, 252330}, {0x1306E, 252355}, {0x1306F, 252380}, {0x13070, 252405}, {0x13071, 252430}, {0x13072, 252455}, {0x13073, 252480}, {0x13074, 252505}, {0x13075, 252530}, {0x13076, 252555}, {0x13077, 252580}, {0x13078, 252605}, {0x13079, 252630}, {0x1307A, 252655}, {0x1307B, 252680}, {0x1307C, 252705}, {0x1307D, 252730}, {0x1307E, 252755}, {0x1307F, 252781}, {0x13080, 252806}, {0x13081, 252831}, {0x13082, 252856}, {0x13083, 252881}, {0x13084, 252906}, {0x13085, 252931}, {0x13086, 252956}, {0x13087, 252981}, {0x13088, 253006}, {0x13089, 253031}, {0x1308A, 253056}, {0x1308B, 253081}, {0x1308C, 253106}, {0x1308D, 253131}, {0x1308E, 253156}, {0x1308F, 253181}, {0x13090, 253206}, {0x13091, 253231}, {0x13092, 253256}, {0x13093, 253282}, {0x13094, 253307}, {0x13095, 253332}, {0x13096, 253357}, {0x13097, 253382}, {0x13098, 253408}, {0x13099, 253433}, {0x1309A, 253458}, {0x1309B, 253483}, {0x1309C, 253509}, {0x1309D, 253534}, {0x1309E, 253559}, {0x1309F, 253584}, {0x130A0, 253609}, {0x130A1, 253634}, {0x130A2, 253659}, {0x130A3, 253684}, {0x130A4, 253709}, {0x130A5, 253734}, {0x130A6, 253759}, {0x130A7, 253784}, {0x130A8, 253809}, {0x130A9, 253835}, {0x130AA, 253860}, {0x130AB, 253885}, {0x130AC, 253911}, {0x130AD, 253936}, {0x130AE, 253961}, {0x130AF, 253987}, {0x130B0, 254013}, {0x130B1, 254039}, {0x130B2, 254065}, {0x130B3, 254091}, {0x130B4, 254117}, {0x130B5, 254143}, {0x130B6, 254169}, {0x130B7, 254195}, {0x130B8, 254220}, {0x130B9, 254245}, {0x130BA, 254271}, {0x130BB, 254296}, {0x130BC, 254321}, {0x130BD, 254347}, {0x130BE, 254372}, {0x130BF, 254397}, {0x130C0, 254422}, {0x130C1, 254447}, {0x130C2, 254472}, {0x130C3, 254497}, {0x130C4, 254522}, {0x130C5, 254547}, {0x130C6, 254572}, {0x130C7, 254597}, {0x130C8, 254622}, {0x130C9, 254647}, {0x130CA, 254672}, {0x130CB, 254698}, {0x130CC, 254724}, {0x130CD, 254750}, {0x130CE, 254776}, {0x130CF, 254802}, {0x130D0, 254828}, {0x130D1, 254854}, {0x130D2, 254880}, {0x130D3, 254905}, {0x130D4, 254930}, {0x130D5, 254955}, {0x130D6, 254980}, {0x130D7, 255005}, {0x130D8, 255030}, {0x130D9, 255055}, {0x130DA, 255080}, {0x130DB, 255106}, {0x130DC, 255131}, {0x130DD, 255157}, {0x130DE, 255182}, {0x130DF, 255207}, {0x130E0, 255232}, {0x130E1, 255257}, {0x130E2, 255282}, {0x130E3, 255307}, {0x130E4, 255332}, {0x130E5, 255358}, {0x130E6, 255383}, {0x130E7, 255409}, {0x130E8, 255434}, {0x130E9, 255459}, {0x130EA, 255484}, {0x130EB, 255510}, {0x130EC, 255535}, {0x130ED, 255560}, {0x130EE, 255585}, {0x130EF, 255610}, {0x130F0, 255635}, {0x130F1, 255660}, {0x130F2, 255685}, {0x130F3, 255710}, {0x130F4, 255736}, {0x130F5, 255761}, {0x130F6, 255786}, {0x130F7, 255811}, {0x130F8, 255836}, {0x130F9, 255861}, {0x130FA, 255886}, {0x130FB, 255912}, {0x130FC, 255937}, {0x130FD, 255962}, {0x130FE, 255987}, {0x130FF, 256012}, {0x13100, 256038}, {0x13101, 256063}, {0x13102, 256088}, {0x13103, 256113}, {0x13104, 256138}, {0x13105, 256163}, {0x13106, 256188}, {0x13107, 256213}, {0x13108, 256238}, {0x13109, 256263}, {0x1310A, 256288}, {0x1310B, 256313}, {0x1310C, 256338}, {0x1310D, 256364}, {0x1310E, 256389}, {0x1310F, 256414}, {0x13110, 256439}, {0x13111, 256464}, {0x13112, 256489}, {0x13113, 256514}, {0x13114, 256539}, {0x13115, 256564}, {0x13116, 256590}, {0x13117, 256615}, {0x13118, 256640}, {0x13119, 256665}, {0x1311A, 256690}, {0x1311B, 256715}, {0x1311C, 256740}, {0x1311D, 256765}, {0x1311E, 256790}, {0x1311F, 256815}, {0x13120, 256840}, {0x13121, 256866}, {0x13122, 256891}, {0x13123, 256916}, {0x13124, 256941}, {0x13125, 256966}, {0x13126, 256991}, {0x13127, 257016}, {0x13128, 257042}, {0x13129, 257067}, {0x1312A, 257093}, {0x1312B, 257118}, {0x1312C, 257143}, {0x1312D, 257168}, {0x1312E, 257193}, {0x1312F, 257218}, {0x13130, 257243}, {0x13131, 257268}, {0x13132, 257294}, {0x13133, 257319}, {0x13134, 257345}, {0x13135, 257370}, {0x13136, 257396}, {0x13137, 257421}, {0x13138, 257446}, {0x13139, 257471}, {0x1313A, 257496}, {0x1313B, 257522}, {0x1313C, 257548}, {0x1313D, 257574}, {0x1313E, 257599}, {0x1313F, 257624}, {0x13140, 257649}, {0x13141, 257674}, {0x13142, 257699}, {0x13143, 257724}, {0x13144, 257749}, {0x13145, 257774}, {0x13146, 257800}, {0x13147, 257825}, {0x13148, 257851}, {0x13149, 257877}, {0x1314A, 257902}, {0x1314B, 257927}, {0x1314C, 257952}, {0x1314D, 257977}, {0x1314E, 258003}, {0x1314F, 258028}, {0x13150, 258053}, {0x13151, 258078}, {0x13152, 258103}, {0x13153, 258128}, {0x13154, 258153}, {0x13155, 258178}, {0x13156, 258203}, {0x13157, 258228}, {0x13158, 258254}, {0x13159, 258279}, {0x1315A, 258304}, {0x1315B, 258329}, {0x1315C, 258354}, {0x1315D, 258379}, {0x1315E, 258404}, {0x1315F, 258430}, {0x13160, 258455}, {0x13161, 258480}, {0x13162, 258505}, {0x13163, 258530}, {0x13164, 258555}, {0x13165, 258580}, {0x13166, 258605}, {0x13167, 258630}, {0x13168, 258655}, {0x13169, 258680}, {0x1316A, 258706}, {0x1316B, 258731}, {0x1316C, 258757}, {0x1316D, 258782}, {0x1316E, 258807}, {0x1316F, 258832}, {0x13170, 258857}, {0x13171, 258882}, {0x13172, 258907}, {0x13173, 258933}, {0x13174, 258958}, {0x13175, 258983}, {0x13176, 259009}, {0x13177, 259034}, {0x13178, 259059}, {0x13179, 259084}, {0x1317A, 259109}, {0x1317B, 259134}, {0x1317C, 259159}, {0x1317D, 259184}, {0x1317E, 259209}, {0x1317F, 259234}, {0x13180, 259259}, {0x13181, 259284}, {0x13182, 259309}, {0x13183, 259334}, {0x13184, 259359}, {0x13185, 259384}, {0x13186, 259410}, {0x13187, 259435}, {0x13188, 259460}, {0x13189, 259485}, {0x1318A, 259510}, {0x1318B, 259535}, {0x1318C, 259560}, {0x1318D, 259585}, {0x1318E, 259611}, {0x1318F, 259636}, {0x13190, 259661}, {0x13191, 259686}, {0x13192, 259711}, {0x13193, 259737}, {0x13194, 259762}, {0x13195, 259788}, {0x13196, 259813}, {0x13197, 259839}, {0x13198, 259864}, {0x13199, 259889}, {0x1319A, 259914}, {0x1319B, 259939}, {0x1319C, 259964}, {0x1319D, 259989}, {0x1319E, 260014}, {0x1319F, 260039}, {0x131A0, 260064}, {0x131A1, 260089}, {0x131A2, 260114}, {0x131A3, 260139}, {0x131A4, 260164}, {0x131A5, 260189}, {0x131A6, 260215}, {0x131A7, 260240}, {0x131A8, 260265}, {0x131A9, 260290}, {0x131AA, 260315}, {0x131AB, 260341}, {0x131AC, 260366}, {0x131AD, 260391}, {0x131AE, 260416}, {0x131AF, 260442}, {0x131B0, 260468}, {0x131B1, 260493}, {0x131B2, 260518}, {0x131B3, 260544}, {0x131B4, 260569}, {0x131B5, 260594}, {0x131B6, 260619}, {0x131B7, 260644}, {0x131B8, 260669}, {0x131B9, 260694}, {0x131BA, 260719}, {0x131BB, 260745}, {0x131BC, 260770}, {0x131BD, 260795}, {0x131BE, 260821}, {0x131BF, 260847}, {0x131C0, 260873}, {0x131C1, 260899}, {0x131C2, 260925}, {0x131C3, 260951}, {0x131C4, 260977}, {0x131C5, 261003}, {0x131C6, 261028}, {0x131C7, 261053}, {0x131C8, 261078}, {0x131C9, 261104}, {0x131CA, 261129}, {0x131CB, 261155}, {0x131CC, 261180}, {0x131CD, 261206}, {0x131CE, 261231}, {0x131CF, 261256}, {0x131D0, 261281}, {0x131D1, 261306}, {0x131D2, 261331}, {0x131D3, 261357}, {0x131D4, 261382}, {0x131D5, 261407}, {0x131D6, 261433}, {0x131D7, 261458}, {0x131D8, 261483}, {0x131D9, 261508}, {0x131DA, 261533}, {0x131DB, 261559}, {0x131DC, 261584}, {0x131DD, 261609}, {0x131DE, 261634}, {0x131DF, 261660}, {0x131E0, 261685}, {0x131E1, 261710}, {0x131E2, 261736}, {0x131E3, 261762}, {0x131E4, 261787}, {0x131E5, 261812}, {0x131E6, 261837}, {0x131E7, 261862}, {0x131E8, 261887}, {0x131E9, 261912}, {0x131EA, 261937}, {0x131EB, 261963}, {0x131EC, 261988}, {0x131ED, 262013}, {0x131EE, 262038}, {0x131EF, 262063}, {0x131F0, 262088}, {0x131F1, 262113}, {0x131F2, 262138}, {0x131F3, 262163}, {0x131F4, 262188}, {0x131F5, 262213}, {0x131F6, 262238}, {0x131F7, 262263}, {0x131F8, 262288}, {0x131F9, 262313}, {0x131FA, 262338}, {0x131FB, 262363}, {0x131FC, 262388}, {0x131FD, 262413}, {0x131FE, 262438}, {0x131FF, 262463}, {0x13200, 262488}, {0x13201, 262513}, {0x13202, 262539}, {0x13203, 262565}, {0x13204, 262590}, {0x13205, 262615}, {0x13206, 262640}, {0x13207, 262665}, {0x13208, 262690}, {0x13209, 262715}, {0x1320A, 262740}, {0x1320B, 262766}, {0x1320C, 262791}, {0x1320D, 262816}, {0x1320E, 262841}, {0x1320F, 262866}, {0x13210, 262891}, {0x13211, 262916}, {0x13212, 262941}, {0x13213, 262966}, {0x13214, 262992}, {0x13215, 263017}, {0x13216, 263043}, {0x13217, 263068}, {0x13218, 263094}, {0x13219, 263119}, {0x1321A, 263144}, {0x1321B, 263170}, {0x1321C, 263195}, {0x1321D, 263220}, {0x1321E, 263245}, {0x1321F, 263270}, {0x13220, 263295}, {0x13221, 263321}, {0x13222, 263347}, {0x13223, 263373}, {0x13224, 263399}, {0x13225, 263425}, {0x13226, 263452}, {0x13227, 263478}, {0x13228, 263504}, {0x13229, 263530}, {0x1322A, 263556}, {0x1322B, 263582}, {0x1322C, 263608}, {0x1322D, 263634}, {0x1322E, 263660}, {0x1322F, 263686}, {0x13230, 263712}, {0x13231, 263738}, {0x13232, 263764}, {0x13233, 263791}, {0x13234, 263817}, {0x13235, 263843}, {0x13236, 263869}, {0x13237, 263895}, {0x13238, 263921}, {0x13239, 263947}, {0x1323A, 263973}, {0x1323B, 263999}, {0x1323C, 264025}, {0x1323D, 264051}, {0x1323E, 264077}, {0x1323F, 264103}, {0x13240, 264129}, {0x13241, 264156}, {0x13242, 264182}, {0x13243, 264209}, {0x13244, 264235}, {0x13245, 264261}, {0x13246, 264287}, {0x13247, 264313}, {0x13248, 264339}, {0x13249, 264365}, {0x1324A, 264391}, {0x1324B, 264418}, {0x1324C, 264444}, {0x1324D, 264470}, {0x1324E, 264496}, {0x1324F, 264522}, {0x13250, 264549}, {0x13251, 264574}, {0x13252, 264600}, {0x13253, 264625}, {0x13254, 264650}, {0x13255, 264675}, {0x13256, 264700}, {0x13257, 264726}, {0x13258, 264751}, {0x13259, 264777}, {0x1325A, 264803}, {0x1325B, 264829}, {0x1325C, 264855}, {0x1325D, 264881}, {0x1325E, 264907}, {0x1325F, 264932}, {0x13260, 264957}, {0x13261, 264982}, {0x13262, 265007}, {0x13263, 265033}, {0x13264, 265059}, {0x13265, 265085}, {0x13266, 265110}, {0x13267, 265135}, {0x13268, 265160}, {0x13269, 265185}, {0x1326A, 265210}, {0x1326B, 265235}, {0x1326C, 265260}, {0x1326D, 265285}, {0x1326E, 265310}, {0x1326F, 265336}, {0x13270, 265361}, {0x13271, 265387}, {0x13272, 265412}, {0x13273, 265437}, {0x13274, 265462}, {0x13275, 265487}, {0x13276, 265513}, {0x13277, 265538}, {0x13278, 265564}, {0x13279, 265589}, {0x1327A, 265614}, {0x1327B, 265639}, {0x1327C, 265664}, {0x1327D, 265690}, {0x1327E, 265715}, {0x1327F, 265741}, {0x13280, 265766}, {0x13281, 265791}, {0x13282, 265816}, {0x13283, 265842}, {0x13284, 265867}, {0x13285, 265892}, {0x13286, 265917}, {0x13287, 265943}, {0x13288, 265969}, {0x13289, 265995}, {0x1328A, 266021}, {0x1328B, 266046}, {0x1328C, 266071}, {0x1328D, 266096}, {0x1328E, 266121}, {0x1328F, 266146}, {0x13290, 266171}, {0x13291, 266196}, {0x13292, 266221}, {0x13293, 266246}, {0x13294, 266271}, {0x13295, 266296}, {0x13296, 266321}, {0x13297, 266346}, {0x13298, 266371}, {0x13299, 266397}, {0x1329A, 266423}, {0x1329B, 266448}, {0x1329C, 266473}, {0x1329D, 266499}, {0x1329E, 266524}, {0x1329F, 266549}, {0x132A0, 266575}, {0x132A1, 266600}, {0x132A2, 266625}, {0x132A3, 266650}, {0x132A4, 266675}, {0x132A5, 266700}, {0x132A6, 266725}, {0x132A7, 266750}, {0x132A8, 266775}, {0x132A9, 266800}, {0x132AA, 266825}, {0x132AB, 266850}, {0x132AC, 266875}, {0x132AD, 266900}, {0x132AE, 266925}, {0x132AF, 266950}, {0x132B0, 266975}, {0x132B1, 267000}, {0x132B2, 267026}, {0x132B3, 267051}, {0x132B4, 267077}, {0x132B5, 267103}, {0x132B6, 267128}, {0x132B7, 267153}, {0x132B8, 267178}, {0x132B9, 267203}, {0x132BA, 267228}, {0x132BB, 267253}, {0x132BC, 267278}, {0x132BD, 267304}, {0x132BE, 267329}, {0x132BF, 267354}, {0x132C0, 267379}, {0x132C1, 267404}, {0x132C2, 267429}, {0x132C3, 267454}, {0x132C4, 267480}, {0x132C5, 267505}, {0x132C6, 267530}, {0x132C7, 267555}, {0x132C8, 267580}, {0x132C9, 267605}, {0x132CA, 267630}, {0x132CB, 267655}, {0x132CC, 267680}, {0x132CD, 267705}, {0x132CE, 267730}, {0x132CF, 267755}, {0x132D0, 267780}, {0x132D1, 267805}, {0x132D2, 267830}, {0x132D3, 267855}, {0x132D4, 267881}, {0x132D5, 267906}, {0x132D6, 267931}, {0x132D7, 267956}, {0x132D8, 267981}, {0x132D9, 268007}, {0x132DA, 268032}, {0x132DB, 268057}, {0x132DC, 268082}, {0x132DD, 268107}, {0x132DE, 268132}, {0x132DF, 268157}, {0x132E0, 268182}, {0x132E1, 268207}, {0x132E2, 268233}, {0x132E3, 268259}, {0x132E4, 268284}, {0x132E5, 268309}, {0x132E6, 268334}, {0x132E7, 268360}, {0x132E8, 268385}, {0x132E9, 268410}, {0x132EA, 268435}, {0x132EB, 268460}, {0x132EC, 268485}, {0x132ED, 268510}, {0x132EE, 268535}, {0x132EF, 268560}, {0x132F0, 268585}, {0x132F1, 268611}, {0x132F2, 268637}, {0x132F3, 268662}, {0x132F4, 268687}, {0x132F5, 268712}, {0x132F6, 268737}, {0x132F7, 268762}, {0x132F8, 268787}, {0x132F9, 268812}, {0x132FA, 268837}, {0x132FB, 268862}, {0x132FC, 268888}, {0x132FD, 268913}, {0x132FE, 268938}, {0x132FF, 268963}, {0x13300, 268988}, {0x13301, 269013}, {0x13302, 269038}, {0x13303, 269063}, {0x13304, 269088}, {0x13305, 269113}, {0x13306, 269138}, {0x13307, 269163}, {0x13308, 269188}, {0x13309, 269213}, {0x1330A, 269238}, {0x1330B, 269264}, {0x1330C, 269289}, {0x1330D, 269314}, {0x1330E, 269339}, {0x1330F, 269364}, {0x13310, 269390}, {0x13311, 269415}, {0x13312, 269441}, {0x13313, 269466}, {0x13314, 269492}, {0x13315, 269517}, {0x13316, 269542}, {0x13317, 269568}, {0x13318, 269593}, {0x13319, 269618}, {0x1331A, 269643}, {0x1331B, 269668}, {0x1331C, 269693}, {0x1331D, 269719}, {0x1331E, 269744}, {0x1331F, 269769}, {0x13320, 269794}, {0x13321, 269819}, {0x13322, 269844}, {0x13323, 269869}, {0x13324, 269894}, {0x13325, 269919}, {0x13326, 269944}, {0x13327, 269969}, {0x13328, 269994}, {0x13329, 270019}, {0x1332A, 270044}, {0x1332B, 270069}, {0x1332C, 270094}, {0x1332D, 270119}, {0x1332E, 270145}, {0x1332F, 270170}, {0x13330, 270196}, {0x13331, 270221}, {0x13332, 270246}, {0x13333, 270271}, {0x13334, 270296}, {0x13335, 270321}, {0x13336, 270346}, {0x13337, 270371}, {0x13338, 270396}, {0x13339, 270421}, {0x1333A, 270447}, {0x1333B, 270473}, {0x1333C, 270498}, {0x1333D, 270523}, {0x1333E, 270548}, {0x1333F, 270573}, {0x13340, 270598}, {0x13341, 270623}, {0x13342, 270648}, {0x13343, 270673}, {0x13344, 270698}, {0x13345, 270723}, {0x13346, 270748}, {0x13347, 270773}, {0x13348, 270798}, {0x13349, 270823}, {0x1334A, 270848}, {0x1334B, 270873}, {0x1334C, 270898}, {0x1334D, 270924}, {0x1334E, 270949}, {0x1334F, 270974}, {0x13350, 270999}, {0x13351, 271024}, {0x13352, 271049}, {0x13353, 271074}, {0x13354, 271100}, {0x13355, 271125}, {0x13356, 271150}, {0x13357, 271175}, {0x13358, 271201}, {0x13359, 271226}, {0x1335A, 271251}, {0x1335B, 271276}, {0x1335C, 271301}, {0x1335D, 271326}, {0x1335E, 271351}, {0x1335F, 271376}, {0x13360, 271401}, {0x13361, 271426}, {0x13362, 271451}, {0x13363, 271476}, {0x13364, 271502}, {0x13365, 271528}, {0x13366, 271554}, {0x13367, 271580}, {0x13368, 271606}, {0x13369, 271632}, {0x1336A, 271658}, {0x1336B, 271684}, {0x1336C, 271710}, {0x1336D, 271735}, {0x1336E, 271761}, {0x1336F, 271786}, {0x13370, 271811}, {0x13371, 271836}, {0x13372, 271861}, {0x13373, 271886}, {0x13374, 271912}, {0x13375, 271938}, {0x13376, 271963}, {0x13377, 271988}, {0x13378, 272013}, {0x13379, 272038}, {0x1337A, 272064}, {0x1337B, 272090}, {0x1337C, 272116}, {0x1337D, 272141}, {0x1337E, 272167}, {0x1337F, 272193}, {0x13380, 272218}, {0x13381, 272243}, {0x13382, 272268}, {0x13383, 272293}, {0x13384, 272318}, {0x13385, 272343}, {0x13386, 272368}, {0x13387, 272393}, {0x13388, 272419}, {0x13389, 272445}, {0x1338A, 272471}, {0x1338B, 272497}, {0x1338C, 272523}, {0x1338D, 272549}, {0x1338E, 272575}, {0x1338F, 272601}, {0x13390, 272627}, {0x13391, 272653}, {0x13392, 272679}, {0x13393, 272705}, {0x13394, 272730}, {0x13395, 272755}, {0x13396, 272780}, {0x13397, 272806}, {0x13398, 272831}, {0x13399, 272856}, {0x1339A, 272881}, {0x1339B, 272906}, {0x1339C, 272931}, {0x1339D, 272957}, {0x1339E, 272982}, {0x1339F, 273008}, {0x133A0, 273033}, {0x133A1, 273059}, {0x133A2, 273084}, {0x133A3, 273110}, {0x133A4, 273135}, {0x133A5, 273160}, {0x133A6, 273186}, {0x133A7, 273211}, {0x133A8, 273236}, {0x133A9, 273261}, {0x133AA, 273286}, {0x133AB, 273312}, {0x133AC, 273337}, {0x133AD, 273362}, {0x133AE, 273387}, {0x133AF, 273413}, {0x133B0, 273438}, {0x133B1, 273463}, {0x133B2, 273488}, {0x133B3, 273514}, {0x133B4, 273539}, {0x133B5, 273564}, {0x133B6, 273589}, {0x133B7, 273614}, {0x133B8, 273639}, {0x133B9, 273664}, {0x133BA, 273690}, {0x133BB, 273715}, {0x133BC, 273741}, {0x133BD, 273766}, {0x133BE, 273791}, {0x133BF, 273816}, {0x133C0, 273841}, {0x133C1, 273867}, {0x133C2, 273892}, {0x133C3, 273917}, {0x133C4, 273942}, {0x133C5, 273968}, {0x133C6, 273993}, {0x133C7, 274019}, {0x133C8, 274044}, {0x133C9, 274069}, {0x133CA, 274094}, {0x133CB, 274119}, {0x133CC, 274144}, {0x133CD, 274169}, {0x133CE, 274195}, {0x133CF, 274220}, {0x133D0, 274245}, {0x133D1, 274270}, {0x133D2, 274295}, {0x133D3, 274320}, {0x133D4, 274346}, {0x133D5, 274372}, {0x133D6, 274397}, {0x133D7, 274422}, {0x133D8, 274448}, {0x133D9, 274473}, {0x133DA, 274498}, {0x133DB, 274524}, {0x133DC, 274549}, {0x133DD, 274575}, {0x133DE, 274600}, {0x133DF, 274625}, {0x133E0, 274650}, {0x133E1, 274675}, {0x133E2, 274700}, {0x133E3, 274725}, {0x133E4, 274750}, {0x133E5, 274775}, {0x133E6, 274800}, {0x133E7, 274826}, {0x133E8, 274852}, {0x133E9, 274878}, {0x133EA, 274904}, {0x133EB, 274929}, {0x133EC, 274955}, {0x133ED, 274981}, {0x133EE, 275006}, {0x133EF, 275032}, {0x133F0, 275057}, {0x133F1, 275083}, {0x133F2, 275108}, {0x133F3, 275133}, {0x133F4, 275158}, {0x133F5, 275183}, {0x133F6, 275208}, {0x133F7, 275233}, {0x133F8, 275258}, {0x133F9, 275283}, {0x133FA, 275308}, {0x133FB, 275333}, {0x133FC, 275359}, {0x133FD, 275385}, {0x133FE, 275411}, {0x133FF, 275437}, {0x13400, 275463}, {0x13401, 275489}, {0x13402, 275515}, {0x13403, 275541}, {0x13404, 275567}, {0x13405, 275592}, {0x13406, 275618}, {0x13407, 275644}, {0x13408, 275670}, {0x13409, 275696}, {0x1340A, 275722}, {0x1340B, 275748}, {0x1340C, 275774}, {0x1340D, 250714}, {0x1340E, 250740}, {0x1340F, 250766}, {0x13410, 250792}, {0x13411, 250818}, {0x13412, 250844}, {0x13413, 250870}, {0x13414, 250896}, {0x13415, 250923}, {0x13416, 250950}, {0x13417, 250976}, {0x13418, 251002}, {0x13419, 251028}, {0x1341A, 251054}, {0x1341B, 251080}, {0x1341C, 251106}, {0x1341D, 251132}, {0x1341E, 251158}, {0x1341F, 251184}, {0x13420, 251210}, {0x13421, 251236}, {0x13422, 251262}, {0x13423, 251288}, {0x13424, 251314}, {0x13425, 251340}, {0x13426, 251366}, {0x13427, 251392}, {0x13428, 251418}, {0x13429, 251444}, {0x1342A, 251470}, {0x1342B, 251496}, {0x1342C, 251522}, {0x1342D, 251548}, {0x1342E, 251574}, {0x16800, 59895}, {0x16801, 58799}, {0x16802, 60596}, {0x16803, 60557}, {0x16804, 59692}, {0x16805, 60901}, {0x16806, 61147}, {0x16807, 60327}, {0x16808, 60802}, {0x16809, 60679}, {0x1680A, 60638}, {0x1680B, 59245}, {0x1680C, 61178}, {0x1680D, 59840}, {0x1680E, 59307}, {0x1680F, 59392}, {0x16810, 59660}, {0x16811, 60773}, {0x16812, 60210}, {0x16813, 58971}, {0x16814, 60040}, {0x16815, 61063}, {0x16816, 59927}, {0x16817, 59055}, {0x16818, 59082}, {0x16819, 60148}, {0x1681A, 59190}, {0x1681B, 60504}, {0x1681C, 58864}, {0x1681D, 60475}, {0x1681E, 59568}, {0x1681F, 60357}, {0x16820, 61236}, {0x16821, 58830}, {0x16822, 60179}, {0x16823, 60959}, {0x16824, 59540}, {0x16825, 59506}, {0x16826, 59631}, {0x16827, 58895}, {0x16828, 60388}, {0x16829, 59747}, {0x1682A, 60532}, {0x1682B, 59277}, {0x1682C, 59959}, {0x1682D, 60723}, {0x1682E, 61209}, {0x1682F, 59163}, {0x16830, 60985}, {0x16831, 61116}, {0x16832, 59337}, {0x16833, 58946}, {0x16834, 59781}, {0x16835, 59029}, {0x16836, 59602}, {0x16837, 60933}, {0x16838, 59111}, {0x16839, 58773}, {0x1683A, 60748}, {0x1683B, 59003}, {0x1683C, 61013}, {0x1683D, 59421}, {0x1683E, 60837}, {0x1683F, 60122}, {0x16840, 60865}, {0x16841, 60290}, {0x16842, 60447}, {0x16843, 60011}, {0x16844, 61267}, {0x16845, 59868}, {0x16846, 59365}, {0x16847, 59985}, {0x16848, 59452}, {0x16849, 60239}, {0x1684A, 61088}, {0x1684B, 61038}, {0x1684C, 60421}, {0x1684D, 60094}, {0x1684E, 59219}, {0x1684F, 60265}, {0x16850, 58921}, {0x16851, 60068}, {0x16852, 61296}, {0x16853, 59139}, {0x16854, 59815}, {0x16855, 59722}, {0x16856, 59480}, {0x16857, 62341}, {0x16858, 62768}, {0x16859, 62691}, {0x1685A, 62601}, {0x1685B, 61686}, {0x1685C, 61804}, {0x1685D, 61545}, {0x1685E, 62920}, {0x1685F, 61836}, {0x16860, 61435}, {0x16861, 62490}, {0x16862, 62885}, {0x16863, 61625}, {0x16864, 62369}, {0x16865, 62104}, {0x16866, 61402}, {0x16867, 62518}, {0x16868, 62802}, {0x16869, 62629}, {0x1686A, 62660}, {0x1686B, 62041}, {0x1686C, 61893}, {0x1686D, 62432}, {0x1686E, 61488}, {0x1686F, 61372}, {0x16870, 61516}, {0x16871, 61597}, {0x16872, 62463}, {0x16873, 62832}, {0x16874, 62255}, {0x16875, 62162}, {0x16876, 62858}, {0x16877, 62572}, {0x16878, 62742}, {0x16879, 61954}, {0x1687A, 62193}, {0x1687B, 62221}, {0x1687C, 62013}, {0x1687D, 62717}, {0x1687E, 61865}, {0x1687F, 62074}, {0x16880, 62403}, {0x16881, 62543}, {0x16882, 61980}, {0x16883, 61346}, {0x16884, 61927}, {0x16885, 61321}, {0x16886, 61460}, {0x16887, 61741}, {0x16888, 61774}, {0x16889, 61661}, {0x1688A, 62134}, {0x1688B, 62315}, {0x1688C, 61717}, {0x1688D, 61572}, {0x1688E, 62289}, {0x1688F, 64482}, {0x16890, 64993}, {0x16891, 65617}, {0x16892, 65480}, {0x16893, 64284}, {0x16894, 64145}, {0x16895, 64455}, {0x16896, 63052}, {0x16897, 63710}, {0x16898, 62999}, {0x16899, 64954}, {0x1689A, 64924}, {0x1689B, 63768}, {0x1689C, 65095}, {0x1689D, 64230}, {0x1689E, 63610}, {0x1689F, 63275}, {0x168A0, 63026}, {0x168A1, 63192}, {0x168A2, 65586}, {0x168A3, 65018}, {0x168A4, 63931}, {0x168A5, 64702}, {0x168A6, 63877}, {0x168A7, 65560}, {0x168A8, 63307}, {0x168A9, 63080}, {0x168AA, 65176}, {0x168AB, 64203}, {0x168AC, 65282}, {0x168AD, 64650}, {0x168AE, 65365}, {0x168AF, 65255}, {0x168B0, 64337}, {0x168B1, 65454}, {0x168B2, 64038}, {0x168B3, 63493}, {0x168B4, 64842}, {0x168B5, 64427}, {0x168B6, 63419}, {0x168B7, 63847}, {0x168B8, 63957}, {0x168B9, 64894}, {0x168BA, 65336}, {0x168BB, 64400}, {0x168BC, 62974}, {0x168BD, 64176}, {0x168BE, 64677}, {0x168BF, 64731}, {0x168C0, 62948}, {0x168C1, 65424}, {0x168C2, 63740}, {0x168C3, 65124}, {0x168C4, 64542}, {0x168C5, 63394}, {0x168C6, 65395}, {0x168C7, 64810}, {0x168C8, 64595}, {0x168C9, 63167}, {0x168CA, 64311}, {0x168CB, 63583}, {0x168CC, 63903}, {0x168CD, 63469}, {0x168CE, 63369}, {0x168CF, 64569}, {0x168D0, 64516}, {0x168D1, 65510}, {0x168D2, 64371}, {0x168D3, 64758}, {0x168D4, 64868}, {0x168D5, 63335}, {0x168D6, 64784}, {0x168D7, 64093}, {0x168D8, 63525}, {0x168D9, 65535}, {0x168DA, 64119}, {0x168DB, 65228}, {0x168DC, 65148}, {0x168DD, 63822}, {0x168DE, 63555}, {0x168DF, 63682}, {0x168E0, 63246}, {0x168E1, 63795}, {0x168E2, 63220}, {0x168E3, 63649}, {0x168E4, 65642}, {0x168E5, 64623}, {0x168E6, 63986}, {0x168E7, 64012}, {0x168E8, 65202}, {0x168E9, 63138}, {0x168EA, 63105}, {0x168EB, 64258}, {0x168EC, 64068}, {0x168ED, 63444}, {0x168EE, 65070}, {0x168EF, 65045}, {0x168F0, 65311}, {0x168F1, 66395}, {0x168F2, 68597}, {0x168F3, 67344}, {0x168F4, 66607}, {0x168F5, 67369}, {0x168F6, 66180}, {0x168F7, 67317}, {0x168F8, 67423}, {0x168F9, 66927}, {0x168FA, 67662}, {0x168FB, 68622}, {0x168FC, 67183}, {0x168FD, 68107}, {0x168FE, 67069}, {0x168FF, 65804}, {0x16900, 68472}, {0x16901, 68133}, {0x16902, 67262}, {0x16903, 68316}, {0x16904, 65779}, {0x16905, 68649}, {0x16906, 65970}, {0x16907, 68029}, {0x16908, 66528}, {0x16909, 66846}, {0x1690A, 66308}, {0x1690B, 66474}, {0x1690C, 68079}, {0x1690D, 68678}, {0x1690E, 67288}, {0x1690F, 65862}, {0x16910, 67126}, {0x16911, 68547}, {0x16912, 65725}, {0x16913, 67210}, {0x16914, 65694}, {0x16915, 66820}, {0x16916, 66689}, {0x16917, 66126}, {0x16918, 66873}, {0x16919, 66718}, {0x1691A, 66633}, {0x1691B, 67893}, {0x1691C, 66661}, {0x1691D, 66582}, {0x1691E, 66231}, {0x1691F, 67477}, {0x16920, 66337}, {0x16921, 66021}, {0x16922, 67688}, {0x16923, 68418}, {0x16924, 68265}, {0x16925, 68755}, {0x16926, 65836}, {0x16927, 67919}, {0x16928, 68391}, {0x16929, 67096}, {0x1692A, 66500}, {0x1692B, 67505}, {0x1692C, 65895}, {0x1692D, 67843}, {0x1692E, 67815}, {0x1692F, 67739}, {0x16930, 66101}, {0x16931, 66899}, {0x16932, 66555}, {0x16933, 67040}, {0x16934, 68703}, {0x16935, 67765}, {0x16936, 68729}, {0x16937, 66794}, {0x16938, 67585}, {0x16939, 68290}, {0x1693A, 65945}, {0x1693B, 66984}, {0x1693C, 67155}, {0x1693D, 68571}, {0x1693E, 66448}, {0x1693F, 65996}, {0x16940, 67533}, {0x16941, 68446}, {0x16942, 66279}, {0x16943, 66957}, {0x16944, 66154}, {0x16945, 67012}, {0x16946, 67450}, {0x16947, 67396}, {0x16948, 65751}, {0x16949, 65921}, {0x1694A, 67975}, {0x1694B, 68366}, {0x1694C, 68522}, {0x1694D, 67714}, {0x1694E, 68004}, {0x1694F, 66074}, {0x16950, 66421}, {0x16951, 66256}, {0x16952, 68341}, {0x16953, 66744}, {0x16954, 68188}, {0x16955, 68161}, {0x16956, 66048}, {0x16957, 67638}, {0x16958, 68240}, {0x16959, 67559}, {0x1695A, 67790}, {0x1695B, 67238}, {0x1695C, 68214}, {0x1695D, 67868}, {0x1695E, 66768}, {0x1695F, 66206}, {0x16960, 67945}, {0x16961, 68498}, {0x16962, 67612}, {0x16963, 66363}, {0x16964, 68054}, {0x16965, 65669}, {0x16966, 70268}, {0x16967, 72316}, {0x16968, 69891}, {0x16969, 69536}, {0x1696A, 72497}, {0x1696B, 69639}, {0x1696C, 71361}, {0x1696D, 72028}, {0x1696E, 71768}, {0x1696F, 71078}, {0x16970, 70347}, {0x16971, 71641}, {0x16972, 72163}, {0x16973, 70609}, {0x16974, 69406}, {0x16975, 72573}, {0x16976, 71872}, {0x16977, 70486}, {0x16978, 71386}, {0x16979, 72291}, {0x1697A, 69459}, {0x1697B, 69614}, {0x1697C, 71023}, {0x1697D, 70776}, {0x1697E, 69789}, {0x1697F, 70694}, {0x16980, 70802}, {0x16981, 71051}, {0x16982, 71819}, {0x16983, 70970}, {0x16984, 71412}, {0x16985, 71847}, {0x16986, 70580}, {0x16987, 69970}, {0x16988, 69204}, {0x16989, 70664}, {0x1698A, 70883}, {0x1698B, 69815}, {0x1698C, 69665}, {0x1698D, 70428}, {0x1698E, 70321}, {0x1698F, 72131}, {0x16990, 71897}, {0x16991, 71718}, {0x16992, 70233}, {0x16993, 70516}, {0x16994, 72730}, {0x16995, 69177}, {0x16996, 72367}, {0x16997, 72623}, {0x16998, 71567}, {0x16999, 72418}, {0x1699A, 69305}, {0x1699B, 72053}, {0x1699C, 72263}, {0x1699D, 72470}, {0x1699E, 72522}, {0x1699F, 69510}, {0x169A0, 71617}, {0x169A1, 72105}, {0x169A2, 69094}, {0x169A3, 70398}, {0x169A4, 71922}, {0x169A5, 69996}, {0x169A6, 69865}, {0x169A7, 71224}, {0x169A8, 70997}, {0x169A9, 69041}, {0x169AA, 72393}, {0x169AB, 69433}, {0x169AC, 72598}, {0x169AD, 71191}, {0x169AE, 72756}, {0x169AF, 69943}, {0x169B0, 70294}, {0x169B1, 71514}, {0x169B2, 72873}, {0x169B3, 69586}, {0x169B4, 68990}, {0x169B5, 69067}, {0x169B6, 70749}, {0x169B7, 69280}, {0x169B8, 69764}, {0x169B9, 70635}, {0x169BA, 69123}, {0x169BB, 68805}, {0x169BC, 71132}, {0x169BD, 71438}, {0x169BE, 72678}, {0x169BF, 70457}, {0x169C0, 71158}, {0x169C1, 71250}, {0x169C2, 71591}, {0x169C3, 70047}, {0x169C4, 69015}, {0x169C5, 70173}, {0x169C6, 70098}, {0x169C7, 69149}, {0x169C8, 68933}, {0x169C9, 70124}, {0x169CA, 71667}, {0x169CB, 70722}, {0x169CC, 69485}, {0x169CD, 71541}, {0x169CE, 71106}, {0x169CF, 72650}, {0x169D0, 70553}, {0x169D1, 71299}, {0x169D2, 68904}, {0x169D3, 68879}, {0x169D4, 70912}, {0x169D5, 68782}, {0x169D6, 72342}, {0x169D7, 71276}, {0x169D8, 69257}, {0x169D9, 69561}, {0x169DA, 71330}, {0x169DB, 72080}, {0x169DC, 72188}, {0x169DD, 70198}, {0x169DE, 71951}, {0x169DF, 72704}, {0x169E0, 70828}, {0x169E1, 72846}, {0x169E2, 72812}, {0x169E3, 72781}, {0x169E4, 72924}, {0x169E5, 72899}, {0x169E6, 69332}, {0x169E7, 71464}, {0x169E8, 70938}, {0x169E9, 71693}, {0x169EA, 72548}, {0x169EB, 68854}, {0x169EC, 72445}, {0x169ED, 69716}, {0x169EE, 70023}, {0x169EF, 71793}, {0x169F0, 71743}, {0x169F1, 70855}, {0x169F2, 70373}, {0x169F3, 71977}, {0x169F4, 72002}, {0x169F5, 68959}, {0x169F6, 70149}, {0x169F7, 71490}, {0x169F8, 69691}, {0x169F9, 69382}, {0x169FA, 69918}, {0x169FB, 69740}, {0x169FC, 69840}, {0x169FD, 72238}, {0x169FE, 69358}, {0x169FF, 70073}, {0x16A00, 72213}, {0x16A01, 68829}, {0x16A02, 69231}, {0x16A03, 72998}, {0x16A04, 74161}, {0x16A05, 73121}, {0x16A06, 72949}, {0x16A07, 73757}, {0x16A08, 74111}, {0x16A09, 73655}, {0x16A0A, 73171}, {0x16A0B, 73859}, {0x16A0C, 73833}, {0x16A0D, 73343}, {0x16A0E, 74086}, {0x16A0F, 73394}, {0x16A10, 73499}, {0x16A11, 73244}, {0x16A12, 74061}, {0x16A13, 73961}, {0x16A14, 74037}, {0x16A15, 73935}, {0x16A16, 73145}, {0x16A17, 73047}, {0x16A18, 73629}, {0x16A19, 73605}, {0x16A1A, 73526}, {0x16A1B, 74283}, {0x16A1C, 74012}, {0x16A1D, 74259}, {0x16A1E, 73553}, {0x16A1F, 73705}, {0x16A20, 73579}, {0x16A21, 74234}, {0x16A22, 73680}, {0x16A23, 73884}, {0x16A24, 73475}, {0x16A25, 73807}, {0x16A26, 73022}, {0x16A27, 73446}, {0x16A28, 73420}, {0x16A29, 73987}, {0x16A2A, 73731}, {0x16A2B, 72973}, {0x16A2C, 74210}, {0x16A2D, 73195}, {0x16A2E, 73219}, {0x16A2F, 73072}, {0x16A30, 73317}, {0x16A31, 73782}, {0x16A32, 73267}, {0x16A33, 73370}, {0x16A34, 73291}, {0x16A35, 74136}, {0x16A36, 73096}, {0x16A37, 73908}, {0x16A38, 74184}, {0x1B000, 369200}, {0x1B001, 348075}, {0x1D000, 105305}, {0x1D001, 99125}, {0x1D002, 104883}, {0x1D003, 104364}, {0x1D004, 104327}, {0x1D005, 107068}, {0x1D006, 107030}, {0x1D007, 102249}, {0x1D008, 106256}, {0x1D009, 104653}, {0x1D00A, 107594}, {0x1D00B, 107629}, {0x1D00C, 103139}, {0x1D00D, 98093}, {0x1D00E, 100337}, {0x1D00F, 106291}, {0x1D010, 102450}, {0x1D011, 98389}, {0x1D012, 98425}, {0x1D013, 106192}, {0x1D014, 106583}, {0x1D015, 104218}, {0x1D016, 101479}, {0x1D017, 105336}, {0x1D018, 98897}, {0x1D019, 107190}, {0x1D01A, 102100}, {0x1D01B, 102283}, {0x1D01C, 102485}, {0x1D01D, 105432}, {0x1D01E, 104777}, {0x1D01F, 105955}, {0x1D020, 104442}, {0x1D021, 107148}, {0x1D022, 98205}, {0x1D023, 98507}, {0x1D024, 102660}, {0x1D025, 105401}, {0x1D026, 105027}, {0x1D027, 106614}, {0x1D028, 97978}, {0x1D029, 105466}, {0x1D02A, 106067}, {0x1D02B, 106109}, {0x1D02C, 104483}, {0x1D02D, 106390}, {0x1D02E, 103438}, {0x1D02F, 100032}, {0x1D030, 106647}, {0x1D031, 106323}, {0x1D032, 103022}, {0x1D033, 98136}, {0x1D034, 100568}, {0x1D035, 101980}, {0x1D036, 106823}, {0x1D037, 102173}, {0x1D038, 104811}, {0x1D039, 105145}, {0x1D03A, 102765}, {0x1D03B, 98931}, {0x1D03C, 105368}, {0x1D03D, 104566}, {0x1D03E, 104690}, {0x1D03F, 101877}, {0x1D040, 104188}, {0x1D041, 104920}, {0x1D042, 102799}, {0x1D043, 106784}, {0x1D044, 106029}, {0x1D045, 101839}, {0x1D046, 102139}, {0x1D047, 104259}, {0x1D048, 104407}, {0x1D049, 104953}, {0x1D04A, 102871}, {0x1D04B, 104986}, {0x1D04C, 103057}, {0x1D04D, 104845}, {0x1D04E, 102529}, {0x1D04F, 102325}, {0x1D050, 107703}, {0x1D051, 98467}, {0x1D052, 98286}, {0x1D053, 107670}, {0x1D054, 103098}, {0x1D055, 100097}, {0x1D056, 98864}, {0x1D057, 104151}, {0x1D058, 107112}, {0x1D059, 105068}, {0x1D05A, 105180}, {0x1D05B, 104295}, {0x1D05C, 98057}, {0x1D05D, 103469}, {0x1D05E, 104736}, {0x1D05F, 104612}, {0x1D060, 100293}, {0x1D061, 103173}, {0x1D062, 98016}, {0x1D063, 106866}, {0x1D064, 100061}, {0x1D065, 106155}, {0x1D066, 106225}, {0x1D067, 98974}, {0x1D068, 100213}, {0x1D069, 105498}, {0x1D06A, 107221}, {0x1D06B, 106948}, {0x1D06C, 105104}, {0x1D06D, 106744}, {0x1D06E, 106904}, {0x1D06F, 105219}, {0x1D070, 106990}, {0x1D071, 105264}, {0x1D072, 101708}, {0x1D073, 98572}, {0x1D074, 100247}, {0x1D075, 104527}, {0x1D076, 106459}, {0x1D077, 106500}, {0x1D078, 106421}, {0x1D079, 106541}, {0x1D07A, 102214}, {0x1D07B, 100178}, {0x1D07C, 107293}, {0x1D07D, 107259}, {0x1D07E, 105922}, {0x1D07F, 102692}, {0x1D080, 99992}, {0x1D081, 102943}, {0x1D082, 102905}, {0x1D083, 102985}, {0x1D084, 98248}, {0x1D085, 98175}, {0x1D086, 99961}, {0x1D087, 106712}, {0x1D088, 106356}, {0x1D089, 102838}, {0x1D08A, 103250}, {0x1D08B, 103206}, {0x1D08C, 103392}, {0x1D08D, 103343}, {0x1D08E, 103295}, {0x1D08F, 101520}, {0x1D090, 101601}, {0x1D091, 101656}, {0x1D092, 99713}, {0x1D093, 99808}, {0x1D094, 99747}, {0x1D095, 99870}, {0x1D096, 106677}, {0x1D097, 98541}, {0x1D098, 101910}, {0x1D099, 99157}, {0x1D09A, 97895}, {0x1D09B, 97703}, {0x1D09C, 97667}, {0x1D09D, 97857}, {0x1D09E, 97821}, {0x1D09F, 97743}, {0x1D0A0, 97780}, {0x1D0A1, 97936}, {0x1D0A2, 103810}, {0x1D0A3, 103556}, {0x1D0A4, 103608}, {0x1D0A5, 103502}, {0x1D0A6, 104058}, {0x1D0A7, 104014}, {0x1D0A8, 103908}, {0x1D0A9, 103957}, {0x1D0AA, 103657}, {0x1D0AB, 103705}, {0x1D0AC, 102051}, {0x1D0AD, 98336}, {0x1D0AE, 100468}, {0x1D0AF, 100422}, {0x1D0B0, 100378}, {0x1D0B1, 104105}, {0x1D0B2, 103857}, {0x1D0B3, 103753}, {0x1D0B4, 101748}, {0x1D0B5, 101793}, {0x1D0B6, 100130}, {0x1D0B7, 101946}, {0x1D0B8, 102015}, {0x1D0B9, 100609}, {0x1D0BA, 100901}, {0x1D0BB, 100755}, {0x1D0BC, 101213}, {0x1D0BD, 100665}, {0x1D0BE, 101349}, {0x1D0BF, 100710}, {0x1D0C0, 100946}, {0x1D0C1, 100851}, {0x1D0C2, 100802}, {0x1D0C3, 101099}, {0x1D0C4, 101155}, {0x1D0C5, 100515}, {0x1D0C6, 101295}, {0x1D0C7, 101256}, {0x1D0C8, 99088}, {0x1D0C9, 99012}, {0x1D0CA, 99050}, {0x1D0CB, 101044}, {0x1D0CC, 100991}, {0x1D0CD, 107550}, {0x1D0CE, 99631}, {0x1D0CF, 99528}, {0x1D0D0, 99363}, {0x1D0D1, 99467}, {0x1D0D2, 99413}, {0x1D0D3, 99574}, {0x1D0D4, 107328}, {0x1D0D5, 107432}, {0x1D0D6, 107378}, {0x1D0D7, 107493}, {0x1D0D8, 101401}, {0x1D0D9, 101440}, {0x1D0DA, 99236}, {0x1D0DB, 99190}, {0x1D0DC, 99281}, {0x1D0DD, 99321}, {0x1D0DE, 105726}, {0x1D0DF, 105768}, {0x1D0E0, 105871}, {0x1D0E1, 105818}, {0x1D0E2, 105534}, {0x1D0E3, 105575}, {0x1D0E4, 105676}, {0x1D0E5, 105624}, {0x1D0E6, 99924}, {0x1D0E7, 99675}, {0x1D0E8, 105997}, {0x1D0E9, 98755}, {0x1D0EA, 98791}, {0x1D0EB, 98647}, {0x1D0EC, 98611}, {0x1D0ED, 98683}, {0x1D0EE, 98828}, {0x1D0EF, 98719}, {0x1D0F0, 102616}, {0x1D0F1, 102408}, {0x1D0F2, 102572}, {0x1D0F3, 102366}, {0x1D0F4, 102728}, {0x1D0F5, 101560}, {0x1D100, 493803}, {0x1D101, 490502}, {0x1D102, 490964}, {0x1D103, 493359}, {0x1D104, 490417}, {0x1D105, 493774}, {0x1D106, 491732}, {0x1D107, 493396}, {0x1D108, 493233}, {0x1D109, 490348}, {0x1D10A, 490325}, {0x1D10B, 493513}, {0x1D10C, 489176}, {0x1D10D, 493260}, {0x1D10E, 493293}, {0x1D10F, 493326}, {0x1D110, 490912}, {0x1D111, 490935}, {0x1D112, 488879}, {0x1D113, 488998}, {0x1D114, 488835}, {0x1D115, 488856}, {0x1D116, 492342}, {0x1D117, 495456}, {0x1D118, 494733}, {0x1D119, 491195}, {0x1D11A, 491095}, {0x1D11B, 493833}, {0x1D11C, 493863}, {0x1D11D, 491226}, {0x1D11E, 491315}, {0x1D11F, 491337}, {0x1D120, 491371}, {0x1D121, 488976}, {0x1D122, 490821}, {0x1D123, 490843}, {0x1D124, 490877}, {0x1D125, 490587}, {0x1D126, 490614}, {0x1D129, 492073}, {0x1D12A, 490559}, {0x1D12B, 490532}, {0x1D12C, 491151}, {0x1D12D, 491126}, {0x1D12E, 492138}, {0x1D12F, 492110}, {0x1D130, 493750}, {0x1D131, 493724}, {0x1D132, 493132}, {0x1D133, 493099}, {0x1D134, 490228}, {0x1D135, 490301}, {0x1D136, 492737}, {0x1D137, 492764}, {0x1D138, 493166}, {0x1D139, 493199}, {0x1D13A, 492047}, {0x1D13B, 495562}, {0x1D13C, 491651}, {0x1D13D, 493071}, {0x1D13E, 490668}, {0x1D13F, 493929}, {0x1D140, 494699}, {0x1D141, 493992}, {0x1D142, 492296}, {0x1D143, 495620}, {0x1D144, 492934}, {0x1D145, 489021}, {0x1D146, 494086}, {0x1D147, 494049}, {0x1D148, 495245}, {0x1D149, 495107}, {0x1D14A, 494973}, {0x1D14B, 494929}, {0x1D14C, 495062}, {0x1D14D, 495017}, {0x1D14E, 494885}, {0x1D14F, 494841}, {0x1D150, 495197}, {0x1D151, 495149}, {0x1D152, 492012}, {0x1D153, 491977}, {0x1D154, 495337}, {0x1D155, 495287}, {0x1D156, 492792}, {0x1D157, 495507}, {0x1D158, 492191}, {0x1D159, 492221}, {0x1D15A, 489138}, {0x1D15B, 489100}, {0x1D15C, 488906}, {0x1D15D, 495536}, {0x1D15E, 491595}, {0x1D15F, 493043}, {0x1D160, 490641}, {0x1D161, 493899}, {0x1D162, 494665}, {0x1D163, 493959}, {0x1D164, 492250}, {0x1D165, 489990}, {0x1D166, 489874}, {0x1D167, 490052}, {0x1D168, 490087}, {0x1D169, 490122}, {0x1D16A, 490993}, {0x1D16B, 491027}, {0x1D16C, 491061}, {0x1D16D, 489269}, {0x1D16E, 489444}, {0x1D16F, 489476}, {0x1D170, 489508}, {0x1D171, 489540}, {0x1D172, 489572}, {0x1D173, 488730}, {0x1D174, 490695}, {0x1D175, 488810}, {0x1D176, 490798}, {0x1D177, 488784}, {0x1D178, 490774}, {0x1D179, 488756}, {0x1D17A, 490748}, {0x1D17B, 489196}, {0x1D17C, 489956}, {0x1D17D, 490020}, {0x1D17E, 489917}, {0x1D17F, 489699}, {0x1D180, 489732}, {0x1D181, 489228}, {0x1D182, 489668}, {0x1D183, 488701}, {0x1D184, 488670}, {0x1D185, 489341}, {0x1D186, 489774}, {0x1D187, 489604}, {0x1D188, 489803}, {0x1D189, 489311}, {0x1D18A, 489371}, {0x1D18B, 490157}, {0x1D18C, 493429}, {0x1D18D, 494123}, {0x1D18E, 495646}, {0x1D18F, 492913}, {0x1D190, 491879}, {0x1D191, 491174}, {0x1D192, 490255}, {0x1D193, 490447}, {0x1D194, 491499}, {0x1D195, 491464}, {0x1D196, 494823}, {0x1D197, 495387}, {0x1D198, 491703}, {0x1D199, 495407}, {0x1D19A, 495433}, {0x1D19B, 492372}, {0x1D19C, 492473}, {0x1D19D, 492506}, {0x1D19E, 492539}, {0x1D19F, 492572}, {0x1D1A0, 492605}, {0x1D1A1, 492638}, {0x1D1A2, 492671}, {0x1D1A3, 492704}, {0x1D1A4, 492405}, {0x1D1A5, 492439}, {0x1D1A6, 491676}, {0x1D1A7, 492164}, {0x1D1A8, 490719}, {0x1D1A9, 490474}, {0x1D1AA, 489410}, {0x1D1AB, 490196}, {0x1D1AC, 489634}, {0x1D1AD, 489834}, {0x1D1AE, 492828}, {0x1D1AF, 492854}, {0x1D1B0, 491620}, {0x1D1B1, 491436}, {0x1D1B2, 491406}, {0x1D1B3, 495588}, {0x1D1B4, 490373}, {0x1D1B5, 490393}, {0x1D1B6, 491857}, {0x1D1B7, 491764}, {0x1D1B8, 488927}, {0x1D1B9, 493597}, {0x1D1BA, 493534}, {0x1D1BB, 491900}, {0x1D1BC, 491922}, {0x1D1BD, 493692}, {0x1D1BE, 493629}, {0x1D1BF, 491289}, {0x1D1C0, 491263}, {0x1D1C1, 491822}, {0x1D1C2, 491785}, {0x1D1C3, 488949}, {0x1D1C4, 493566}, {0x1D1C5, 491950}, {0x1D1C6, 493661}, {0x1D1C7, 494540}, {0x1D1C8, 494482}, {0x1D1C9, 494596}, {0x1D1CA, 494424}, {0x1D1CB, 494145}, {0x1D1CC, 494205}, {0x1D1CD, 494278}, {0x1D1CE, 494351}, {0x1D1CF, 490280}, {0x1D1D0, 491531}, {0x1D1D1, 491563}, {0x1D1D2, 494025}, {0x1D1D3, 495486}, {0x1D1D4, 492963}, {0x1D1D5, 489078}, {0x1D1D6, 493456}, {0x1D1D7, 489054}, {0x1D1D8, 494765}, {0x1D1D9, 492986}, {0x1D1DA, 493011}, {0x1D1DB, 493481}, {0x1D1DC, 494789}, {0x1D1DD, 492883}, {0x1D200, 319781}, {0x1D201, 320121}, {0x1D202, 320306}, {0x1D203, 320336}, {0x1D204, 320366}, {0x1D205, 320551}, {0x1D206, 320581}, {0x1D207, 320611}, {0x1D208, 320641}, {0x1D209, 319811}, {0x1D20A, 319842}, {0x1D20B, 319873}, {0x1D20C, 319904}, {0x1D20D, 319935}, {0x1D20E, 319966}, {0x1D20F, 319997}, {0x1D210, 320028}, {0x1D211, 320059}, {0x1D212, 320090}, {0x1D213, 320151}, {0x1D214, 320182}, {0x1D215, 320213}, {0x1D216, 320244}, {0x1D217, 320275}, {0x1D218, 320396}, {0x1D219, 320427}, {0x1D21A, 320458}, {0x1D21B, 320489}, {0x1D21C, 320520}, {0x1D21D, 309851}, {0x1D21E, 310154}, {0x1D21F, 310647}, {0x1D220, 310950}, {0x1D221, 311177}, {0x1D222, 311214}, {0x1D223, 309888}, {0x1D224, 309926}, {0x1D225, 309964}, {0x1D226, 310002}, {0x1D227, 310040}, {0x1D228, 310078}, {0x1D229, 310116}, {0x1D22A, 310191}, {0x1D22B, 310229}, {0x1D22C, 310267}, {0x1D22D, 310305}, {0x1D22E, 310343}, {0x1D22F, 310381}, {0x1D230, 310419}, {0x1D231, 310457}, {0x1D232, 310495}, {0x1D233, 310533}, {0x1D234, 310571}, {0x1D235, 310609}, {0x1D236, 310684}, {0x1D237, 310722}, {0x1D238, 310760}, {0x1D239, 310798}, {0x1D23A, 310836}, {0x1D23B, 310874}, {0x1D23C, 310912}, {0x1D23D, 310987}, {0x1D23E, 311025}, {0x1D23F, 311063}, {0x1D240, 311101}, {0x1D241, 311139}, {0x1D242, 182112}, {0x1D243, 182078}, {0x1D244, 182044}, {0x1D245, 311722}, {0x1D300, 487977}, {0x1D301, 240496}, {0x1D302, 240522}, {0x1D303, 240398}, {0x1D304, 240424}, {0x1D305, 240381}, {0x1D306, 580485}, {0x1D307, 581267}, {0x1D308, 581722}, {0x1D309, 580405}, {0x1D30A, 581556}, {0x1D30B, 580721}, {0x1D30C, 580384}, {0x1D30D, 581769}, {0x1D30E, 580457}, {0x1D30F, 580798}, {0x1D310, 580940}, {0x1D311, 582228}, {0x1D312, 581495}, {0x1D313, 581838}, {0x1D314, 581885}, {0x1D315, 580674}, {0x1D316, 581468}, {0x1D317, 582186}, {0x1D318, 581219}, {0x1D319, 580336}, {0x1D31A, 581905}, {0x1D31B, 581951}, {0x1D31C, 581006}, {0x1D31D, 581538}, {0x1D31E, 580696}, {0x1D31F, 581078}, {0x1D320, 580985}, {0x1D321, 580506}, {0x1D322, 580771}, {0x1D323, 580427}, {0x1D324, 581794}, {0x1D325, 581657}, {0x1D326, 580554}, {0x1D327, 581584}, {0x1D328, 581316}, {0x1D329, 582109}, {0x1D32A, 581864}, {0x1D32B, 581293}, {0x1D32C, 581927}, {0x1D32D, 581630}, {0x1D32E, 581976}, {0x1D32F, 581367}, {0x1D330, 581053}, {0x1D331, 582089}, {0x1D332, 581395}, {0x1D333, 581102}, {0x1D334, 581816}, {0x1D335, 581999}, {0x1D336, 581198}, {0x1D337, 582152}, {0x1D338, 580650}, {0x1D339, 581700}, {0x1D33A, 581128}, {0x1D33B, 582132}, {0x1D33C, 580891}, {0x1D33D, 580527}, {0x1D33E, 581419}, {0x1D33F, 581340}, {0x1D340, 581678}, {0x1D341, 580309}, {0x1D342, 581025}, {0x1D343, 580965}, {0x1D344, 582208}, {0x1D345, 582044}, {0x1D346, 581518}, {0x1D347, 580840}, {0x1D348, 580747}, {0x1D349, 580918}, {0x1D34A, 581151}, {0x1D34B, 582020}, {0x1D34C, 582066}, {0x1D34D, 581445}, {0x1D34E, 580600}, {0x1D34F, 580578}, {0x1D350, 581176}, {0x1D351, 580358}, {0x1D352, 580625}, {0x1D353, 581742}, {0x1D354, 580864}, {0x1D355, 581606}, {0x1D356, 581243}, {0x1D360, 190781}, {0x1D361, 190897}, {0x1D362, 190867}, {0x1D363, 190723}, {0x1D364, 190694}, {0x1D365, 190839}, {0x1D366, 190809}, {0x1D367, 190664}, {0x1D368, 190752}, {0x1D369, 190520}, {0x1D36A, 190636}, {0x1D36B, 190606}, {0x1D36C, 190462}, {0x1D36D, 190433}, {0x1D36E, 190578}, {0x1D36F, 190548}, {0x1D370, 190403}, {0x1D371, 190491}, {0x1D400, 438591}, {0x1D401, 438651}, {0x1D402, 438710}, {0x1D403, 438768}, {0x1D404, 438862}, {0x1D405, 438954}, {0x1D406, 438982}, {0x1D407, 439042}, {0x1D408, 439070}, {0x1D409, 439129}, {0x1D40A, 439157}, {0x1D40B, 439217}, {0x1D40C, 439277}, {0x1D40D, 439334}, {0x1D40E, 439391}, {0x1D40F, 439485}, {0x1D410, 439602}, {0x1D411, 439630}, {0x1D412, 439688}, {0x1D413, 439748}, {0x1D414, 439877}, {0x1D415, 439939}, {0x1D416, 439967}, {0x1D417, 439995}, {0x1D418, 440052}, {0x1D419, 440080}, {0x1D41A, 448169}, {0x1D41B, 448225}, {0x1D41C, 448280}, {0x1D41D, 448334}, {0x1D41E, 448422}, {0x1D41F, 448508}, {0x1D420, 448570}, {0x1D421, 448626}, {0x1D422, 448652}, {0x1D423, 448707}, {0x1D424, 448733}, {0x1D425, 448789}, {0x1D426, 448845}, {0x1D427, 448898}, {0x1D428, 448951}, {0x1D429, 449039}, {0x1D42A, 449148}, {0x1D42B, 449174}, {0x1D42C, 449228}, {0x1D42D, 449284}, {0x1D42E, 449368}, {0x1D42F, 449426}, {0x1D430, 449452}, {0x1D431, 449478}, {0x1D432, 449531}, {0x1D433, 449557}, {0x1D434, 453041}, {0x1D435, 453105}, {0x1D436, 453168}, {0x1D437, 453230}, {0x1D438, 453294}, {0x1D439, 453392}, {0x1D43A, 453422}, {0x1D43B, 453486}, {0x1D43C, 453516}, {0x1D43D, 453579}, {0x1D43E, 453609}, {0x1D43F, 453673}, {0x1D440, 453737}, {0x1D441, 453798}, {0x1D442, 453859}, {0x1D443, 453959}, {0x1D444, 454084}, {0x1D445, 454114}, {0x1D446, 454176}, {0x1D447, 454240}, {0x1D448, 454377}, {0x1D449, 454443}, {0x1D44A, 454473}, {0x1D44B, 454503}, {0x1D44C, 454564}, {0x1D44D, 454594}, {0x1D44E, 454884}, {0x1D44F, 454944}, {0x1D450, 455003}, {0x1D451, 455061}, {0x1D452, 455193}, {0x1D453, 455285}, {0x1D454, 455351}, {0x1D456, 455411}, {0x1D457, 455470}, {0x1D458, 455498}, {0x1D459, 455558}, {0x1D45A, 455618}, {0x1D45B, 455675}, {0x1D45C, 455732}, {0x1D45D, 455826}, {0x1D45E, 455943}, {0x1D45F, 455971}, {0x1D460, 456029}, {0x1D461, 456089}, {0x1D462, 456179}, {0x1D463, 456241}, {0x1D464, 456269}, {0x1D465, 456297}, {0x1D466, 456354}, {0x1D467, 456382}, {0x1D468, 442282}, {0x1D469, 442356}, {0x1D46A, 442429}, {0x1D46B, 442501}, {0x1D46C, 442575}, {0x1D46D, 442688}, {0x1D46E, 442723}, {0x1D46F, 442797}, {0x1D470, 442832}, {0x1D471, 442905}, {0x1D472, 442940}, {0x1D473, 443014}, {0x1D474, 443088}, {0x1D475, 443159}, {0x1D476, 443230}, {0x1D477, 443345}, {0x1D478, 443490}, {0x1D479, 443525}, {0x1D47A, 443597}, {0x1D47B, 443671}, {0x1D47C, 443828}, {0x1D47D, 443904}, {0x1D47E, 443939}, {0x1D47F, 443974}, {0x1D480, 444045}, {0x1D481, 444080}, {0x1D482, 444415}, {0x1D483, 444485}, {0x1D484, 444554}, {0x1D485, 444622}, {0x1D486, 444692}, {0x1D487, 444799}, {0x1D488, 444875}, {0x1D489, 444945}, {0x1D48A, 444978}, {0x1D48B, 445047}, {0x1D48C, 445080}, {0x1D48D, 445150}, {0x1D48E, 445220}, {0x1D48F, 445287}, {0x1D490, 445354}, {0x1D491, 445463}, {0x1D492, 445600}, {0x1D493, 445633}, {0x1D494, 445701}, {0x1D495, 445771}, {0x1D496, 445876}, {0x1D497, 445948}, {0x1D498, 445981}, {0x1D499, 446014}, {0x1D49A, 446081}, {0x1D49B, 446114}, {0x1D49C, 472951}, {0x1D49E, 472981}, {0x1D49F, 473011}, {0x1D4A2, 473041}, {0x1D4A5, 473071}, {0x1D4A6, 473101}, {0x1D4A9, 473131}, {0x1D4AA, 473161}, {0x1D4AB, 473191}, {0x1D4AC, 473221}, {0x1D4AE, 473251}, {0x1D4AF, 473281}, {0x1D4B0, 473311}, {0x1D4B1, 473341}, {0x1D4B2, 473371}, {0x1D4B3, 473401}, {0x1D4B4, 473431}, {0x1D4B5, 473461}, {0x1D4B6, 473491}, {0x1D4B7, 473519}, {0x1D4B8, 473547}, {0x1D4B9, 473575}, {0x1D4BB, 473603}, {0x1D4BD, 473631}, {0x1D4BE, 473659}, {0x1D4BF, 473687}, {0x1D4C0, 473715}, {0x1D4C1, 473743}, {0x1D4C2, 473771}, {0x1D4C3, 473799}, {0x1D4C5, 473827}, {0x1D4C6, 473855}, {0x1D4C7, 473883}, {0x1D4C8, 473911}, {0x1D4C9, 473939}, {0x1D4CA, 473967}, {0x1D4CB, 473995}, {0x1D4CC, 474023}, {0x1D4CD, 474051}, {0x1D4CE, 474079}, {0x1D4CF, 474107}, {0x1D4D0, 446401}, {0x1D4D1, 446436}, {0x1D4D2, 446471}, {0x1D4D3, 446506}, {0x1D4D4, 446541}, {0x1D4D5, 446576}, {0x1D4D6, 446611}, {0x1D4D7, 446646}, {0x1D4D8, 446681}, {0x1D4D9, 446716}, {0x1D4DA, 446751}, {0x1D4DB, 446786}, {0x1D4DC, 446821}, {0x1D4DD, 446856}, {0x1D4DE, 446891}, {0x1D4DF, 446926}, {0x1D4E0, 446961}, {0x1D4E1, 446996}, {0x1D4E2, 447031}, {0x1D4E3, 447066}, {0x1D4E4, 447101}, {0x1D4E5, 447136}, {0x1D4E6, 447171}, {0x1D4E7, 447206}, {0x1D4E8, 447241}, {0x1D4E9, 447276}, {0x1D4EA, 447311}, {0x1D4EB, 447344}, {0x1D4EC, 447377}, {0x1D4ED, 447410}, {0x1D4EE, 447443}, {0x1D4EF, 447476}, {0x1D4F0, 447509}, {0x1D4F1, 447542}, {0x1D4F2, 447575}, {0x1D4F3, 447608}, {0x1D4F4, 447641}, {0x1D4F5, 447674}, {0x1D4F6, 447707}, {0x1D4F7, 447740}, {0x1D4F8, 447773}, {0x1D4F9, 447806}, {0x1D4FA, 447839}, {0x1D4FB, 447872}, {0x1D4FC, 447905}, {0x1D4FD, 447938}, {0x1D4FE, 447971}, {0x1D4FF, 448004}, {0x1D500, 448037}, {0x1D501, 448070}, {0x1D502, 448103}, {0x1D503, 448136}, {0x1D504, 451636}, {0x1D505, 451667}, {0x1D507, 451698}, {0x1D508, 451729}, {0x1D509, 451760}, {0x1D50A, 451791}, {0x1D50D, 451822}, {0x1D50E, 451853}, {0x1D50F, 451884}, {0x1D510, 451915}, {0x1D511, 451946}, {0x1D512, 451977}, {0x1D513, 452008}, {0x1D514, 452039}, {0x1D516, 452070}, {0x1D517, 452101}, {0x1D518, 452132}, {0x1D519, 452163}, {0x1D51A, 452194}, {0x1D51B, 452225}, {0x1D51C, 452256}, {0x1D51E, 452287}, {0x1D51F, 452316}, {0x1D520, 452345}, {0x1D521, 452374}, {0x1D522, 452403}, {0x1D523, 452432}, {0x1D524, 452461}, {0x1D525, 452490}, {0x1D526, 452519}, {0x1D527, 452548}, {0x1D528, 452577}, {0x1D529, 452606}, {0x1D52A, 452635}, {0x1D52B, 452664}, {0x1D52C, 452693}, {0x1D52D, 452722}, {0x1D52E, 452751}, {0x1D52F, 452780}, {0x1D530, 452809}, {0x1D531, 452838}, {0x1D532, 452867}, {0x1D533, 452896}, {0x1D534, 452925}, {0x1D535, 452954}, {0x1D536, 452983}, {0x1D537, 453012}, {0x1D538, 449643}, {0x1D539, 449680}, {0x1D53B, 449717}, {0x1D53C, 449754}, {0x1D53D, 449791}, {0x1D53E, 449828}, {0x1D540, 449865}, {0x1D541, 449902}, {0x1D542, 449939}, {0x1D543, 449976}, {0x1D544, 450013}, {0x1D546, 450050}, {0x1D54A, 450087}, {0x1D54B, 450124}, {0x1D54C, 450161}, {0x1D54D, 450198}, {0x1D54E, 450235}, {0x1D54F, 450272}, {0x1D550, 450309}, {0x1D552, 450726}, {0x1D553, 450761}, {0x1D554, 450796}, {0x1D555, 450831}, {0x1D556, 450866}, {0x1D557, 450901}, {0x1D558, 450936}, {0x1D559, 450971}, {0x1D55A, 451006}, {0x1D55B, 451041}, {0x1D55C, 451076}, {0x1D55D, 451111}, {0x1D55E, 451146}, {0x1D55F, 451181}, {0x1D560, 451216}, {0x1D561, 451251}, {0x1D562, 451286}, {0x1D563, 451321}, {0x1D564, 451356}, {0x1D565, 451391}, {0x1D566, 451426}, {0x1D567, 451461}, {0x1D568, 451496}, {0x1D569, 451531}, {0x1D56A, 451566}, {0x1D56B, 451601}, {0x1D56C, 440462}, {0x1D56D, 440498}, {0x1D56E, 440534}, {0x1D56F, 440570}, {0x1D570, 440606}, {0x1D571, 440642}, {0x1D572, 440678}, {0x1D573, 440714}, {0x1D574, 440750}, {0x1D575, 440786}, {0x1D576, 440822}, {0x1D577, 440858}, {0x1D578, 440894}, {0x1D579, 440930}, {0x1D57A, 440966}, {0x1D57B, 441002}, {0x1D57C, 441038}, {0x1D57D, 441074}, {0x1D57E, 441110}, {0x1D57F, 441146}, {0x1D580, 441182}, {0x1D581, 441218}, {0x1D582, 441254}, {0x1D583, 441290}, {0x1D584, 441326}, {0x1D585, 441362}, {0x1D586, 441398}, {0x1D587, 441432}, {0x1D588, 441466}, {0x1D589, 441500}, {0x1D58A, 441534}, {0x1D58B, 441568}, {0x1D58C, 441602}, {0x1D58D, 441636}, {0x1D58E, 441670}, {0x1D58F, 441704}, {0x1D590, 441738}, {0x1D591, 441772}, {0x1D592, 441806}, {0x1D593, 441840}, {0x1D594, 441874}, {0x1D595, 441908}, {0x1D596, 441942}, {0x1D597, 441976}, {0x1D598, 442010}, {0x1D599, 442044}, {0x1D59A, 442078}, {0x1D59B, 442112}, {0x1D59C, 442146}, {0x1D59D, 442180}, {0x1D59E, 442214}, {0x1D59F, 442248}, {0x1D5A0, 468805}, {0x1D5A1, 468839}, {0x1D5A2, 468873}, {0x1D5A3, 468907}, {0x1D5A4, 468941}, {0x1D5A5, 468975}, {0x1D5A6, 469009}, {0x1D5A7, 469043}, {0x1D5A8, 469077}, {0x1D5A9, 469111}, {0x1D5AA, 469145}, {0x1D5AB, 469179}, {0x1D5AC, 469213}, {0x1D5AD, 469247}, {0x1D5AE, 469281}, {0x1D5AF, 469315}, {0x1D5B0, 469349}, {0x1D5B1, 469383}, {0x1D5B2, 469417}, {0x1D5B3, 469451}, {0x1D5B4, 469485}, {0x1D5B5, 469519}, {0x1D5B6, 469553}, {0x1D5B7, 469587}, {0x1D5B8, 469621}, {0x1D5B9, 469655}, {0x1D5BA, 472119}, {0x1D5BB, 472151}, {0x1D5BC, 472183}, {0x1D5BD, 472215}, {0x1D5BE, 472247}, {0x1D5BF, 472279}, {0x1D5C0, 472311}, {0x1D5C1, 472343}, {0x1D5C2, 472375}, {0x1D5C3, 472407}, {0x1D5C4, 472439}, {0x1D5C5, 472471}, {0x1D5C6, 472503}, {0x1D5C7, 472535}, {0x1D5C8, 472567}, {0x1D5C9, 472599}, {0x1D5CA, 472631}, {0x1D5CB, 472663}, {0x1D5CC, 472695}, {0x1D5CD, 472727}, {0x1D5CE, 472759}, {0x1D5CF, 472791}, {0x1D5D0, 472823}, {0x1D5D1, 472855}, {0x1D5D2, 472887}, {0x1D5D3, 472919}, {0x1D5D4, 458877}, {0x1D5D5, 458959}, {0x1D5D6, 459040}, {0x1D5D7, 459120}, {0x1D5D8, 459202}, {0x1D5D9, 459327}, {0x1D5DA, 459366}, {0x1D5DB, 459448}, {0x1D5DC, 459487}, {0x1D5DD, 459568}, {0x1D5DE, 459607}, {0x1D5DF, 459689}, {0x1D5E0, 459771}, {0x1D5E1, 459850}, {0x1D5E2, 459929}, {0x1D5E3, 460056}, {0x1D5E4, 460217}, {0x1D5E5, 460256}, {0x1D5E6, 460336}, {0x1D5E7, 460418}, {0x1D5E8, 460591}, {0x1D5E9, 460675}, {0x1D5EA, 460714}, {0x1D5EB, 460753}, {0x1D5EC, 460832}, {0x1D5ED, 460871}, {0x1D5EE, 466791}, {0x1D5EF, 466869}, {0x1D5F0, 466946}, {0x1D5F1, 467022}, {0x1D5F2, 467100}, {0x1D5F3, 467219}, {0x1D5F4, 467303}, {0x1D5F5, 467381}, {0x1D5F6, 467418}, {0x1D5F7, 467495}, {0x1D5F8, 467532}, {0x1D5F9, 467610}, {0x1D5FA, 467688}, {0x1D5FB, 467763}, {0x1D5FC, 467838}, {0x1D5FD, 467959}, {0x1D5FE, 468112}, {0x1D5FF, 468149}, {0x1D600, 468225}, {0x1D601, 468303}, {0x1D602, 468420}, {0x1D603, 468500}, {0x1D604, 468537}, {0x1D605, 468574}, {0x1D606, 468649}, {0x1D607, 468686}, {0x1D608, 470039}, {0x1D609, 470080}, {0x1D60A, 470121}, {0x1D60B, 470162}, {0x1D60C, 470203}, {0x1D60D, 470244}, {0x1D60E, 470285}, {0x1D60F, 470326}, {0x1D610, 470367}, {0x1D611, 470408}, {0x1D612, 470449}, {0x1D613, 470490}, {0x1D614, 470531}, {0x1D615, 470572}, {0x1D616, 470613}, {0x1D617, 470654}, {0x1D618, 470695}, {0x1D619, 470736}, {0x1D61A, 470777}, {0x1D61B, 470818}, {0x1D61C, 470859}, {0x1D61D, 470900}, {0x1D61E, 470941}, {0x1D61F, 470982}, {0x1D620, 471023}, {0x1D621, 471064}, {0x1D622, 471105}, {0x1D623, 471144}, {0x1D624, 471183}, {0x1D625, 471222}, {0x1D626, 471261}, {0x1D627, 471300}, {0x1D628, 471339}, {0x1D629, 471378}, {0x1D62A, 471417}, {0x1D62B, 471456}, {0x1D62C, 471495}, {0x1D62D, 471534}, {0x1D62E, 471573}, {0x1D62F, 471612}, {0x1D630, 471651}, {0x1D631, 471690}, {0x1D632, 471729}, {0x1D633, 471768}, {0x1D634, 471807}, {0x1D635, 471846}, {0x1D636, 471885}, {0x1D637, 471924}, {0x1D638, 471963}, {0x1D639, 472002}, {0x1D63A, 472041}, {0x1D63B, 472080}, {0x1D63C, 461396}, {0x1D63D, 461492}, {0x1D63E, 461587}, {0x1D63F, 461681}, {0x1D640, 461777}, {0x1D641, 461923}, {0x1D642, 461969}, {0x1D643, 462065}, {0x1D644, 462111}, {0x1D645, 462206}, {0x1D646, 462252}, {0x1D647, 462348}, {0x1D648, 462444}, {0x1D649, 462537}, {0x1D64A, 462630}, {0x1D64B, 462778}, {0x1D64C, 462967}, {0x1D64D, 463013}, {0x1D64E, 463107}, {0x1D64F, 463203}, {0x1D650, 463404}, {0x1D651, 463502}, {0x1D652, 463548}, {0x1D653, 463594}, {0x1D654, 463687}, {0x1D655, 463733}, {0x1D656, 464167}, {0x1D657, 464259}, {0x1D658, 464350}, {0x1D659, 464440}, {0x1D65A, 464532}, {0x1D65B, 464672}, {0x1D65C, 464770}, {0x1D65D, 464862}, {0x1D65E, 464906}, {0x1D65F, 464997}, {0x1D660, 465041}, {0x1D661, 465133}, {0x1D662, 465225}, {0x1D663, 465314}, {0x1D664, 465403}, {0x1D665, 465545}, {0x1D666, 465726}, {0x1D667, 465770}, {0x1D668, 465860}, {0x1D669, 465952}, {0x1D66A, 466090}, {0x1D66B, 466184}, {0x1D66C, 466228}, {0x1D66D, 466272}, {0x1D66E, 466361}, {0x1D66F, 466405}, {0x1D670, 456671}, {0x1D671, 456704}, {0x1D672, 456737}, {0x1D673, 456770}, {0x1D674, 456803}, {0x1D675, 456836}, {0x1D676, 456869}, {0x1D677, 456902}, {0x1D678, 456935}, {0x1D679, 456968}, {0x1D67A, 457001}, {0x1D67B, 457034}, {0x1D67C, 457067}, {0x1D67D, 457100}, {0x1D67E, 457133}, {0x1D67F, 457166}, {0x1D680, 457199}, {0x1D681, 457232}, {0x1D682, 457265}, {0x1D683, 457298}, {0x1D684, 457331}, {0x1D685, 457364}, {0x1D686, 457397}, {0x1D687, 457430}, {0x1D688, 457463}, {0x1D689, 457496}, {0x1D68A, 457869}, {0x1D68B, 457900}, {0x1D68C, 457931}, {0x1D68D, 457962}, {0x1D68E, 457993}, {0x1D68F, 458024}, {0x1D690, 458055}, {0x1D691, 458086}, {0x1D692, 458117}, {0x1D693, 458148}, {0x1D694, 458179}, {0x1D695, 458210}, {0x1D696, 458241}, {0x1D697, 458272}, {0x1D698, 458303}, {0x1D699, 458334}, {0x1D69A, 458365}, {0x1D69B, 458396}, {0x1D69C, 458427}, {0x1D69D, 458458}, {0x1D69E, 458489}, {0x1D69F, 458520}, {0x1D6A0, 458551}, {0x1D6A1, 458582}, {0x1D6A2, 458613}, {0x1D6A3, 458644}, {0x1D6A4, 455121}, {0x1D6A5, 455157}, {0x1D6A8, 438619}, {0x1D6A9, 438679}, {0x1D6AA, 439010}, {0x1D6AB, 438796}, {0x1D6AC, 438890}, {0x1D6AD, 440108}, {0x1D6AE, 438924}, {0x1D6AF, 439806}, {0x1D6B0, 439098}, {0x1D6B1, 439185}, {0x1D6B2, 439245}, {0x1D6B3, 439305}, {0x1D6B4, 439362}, {0x1D6B5, 440023}, {0x1D6B6, 439451}, {0x1D6B7, 439543}, {0x1D6B8, 439658}, {0x1D6B9, 439838}, {0x1D6BA, 439716}, {0x1D6BB, 439776}, {0x1D6BC, 439905}, {0x1D6BD, 439513}, {0x1D6BE, 438738}, {0x1D6BF, 439572}, {0x1D6C0, 439419}, {0x1D6C1, 446252}, {0x1D6C2, 448195}, {0x1D6C3, 448251}, {0x1D6C4, 448596}, {0x1D6C5, 448360}, {0x1D6C6, 448448}, {0x1D6C7, 449583}, {0x1D6C8, 448480}, {0x1D6C9, 449338}, {0x1D6CA, 448678}, {0x1D6CB, 448759}, {0x1D6CC, 448815}, {0x1D6CD, 448871}, {0x1D6CE, 448924}, {0x1D6CF, 449504}, {0x1D6D0, 449007}, {0x1D6D1, 449093}, {0x1D6D2, 449200}, {0x1D6D3, 448534}, {0x1D6D4, 449254}, {0x1D6D5, 449310}, {0x1D6D6, 449394}, {0x1D6D7, 449065}, {0x1D6D8, 448306}, {0x1D6D9, 449120}, {0x1D6DA, 448977}, {0x1D6DB, 446276}, {0x1D6DC, 440429}, {0x1D6DD, 449612}, {0x1D6DE, 446221}, {0x1D6DF, 446315}, {0x1D6E0, 446372}, {0x1D6E1, 446344}, {0x1D6E2, 453071}, {0x1D6E3, 453135}, {0x1D6E4, 453452}, {0x1D6E5, 453260}, {0x1D6E6, 453324}, {0x1D6E7, 454624}, {0x1D6E8, 453360}, {0x1D6E9, 454302}, {0x1D6EA, 453546}, {0x1D6EB, 453639}, {0x1D6EC, 453703}, {0x1D6ED, 453767}, {0x1D6EE, 453828}, {0x1D6EF, 454533}, {0x1D6F0, 453923}, {0x1D6F1, 454021}, {0x1D6F2, 454144}, {0x1D6F3, 454336}, {0x1D6F4, 454206}, {0x1D6F5, 454270}, {0x1D6F6, 454407}, {0x1D6F7, 453989}, {0x1D6F8, 453198}, {0x1D6F9, 454052}, {0x1D6FA, 453889}, {0x1D6FB, 454725}, {0x1D6FC, 454912}, {0x1D6FD, 454972}, {0x1D6FE, 455379}, {0x1D6FF, 455089}, {0x1D700, 455221}, {0x1D701, 456410}, {0x1D702, 455255}, {0x1D703, 456147}, {0x1D704, 455439}, {0x1D705, 455526}, {0x1D706, 455586}, {0x1D707, 455646}, {0x1D708, 455703}, {0x1D709, 456325}, {0x1D70A, 455792}, {0x1D70B, 455884}, {0x1D70C, 455999}, {0x1D70D, 455313}, {0x1D70E, 456057}, {0x1D70F, 456117}, {0x1D710, 456207}, {0x1D711, 455854}, {0x1D712, 455031}, {0x1D713, 455913}, {0x1D714, 455760}, {0x1D715, 454751}, {0x1D716, 454657}, {0x1D717, 456441}, {0x1D718, 454692}, {0x1D719, 454792}, {0x1D71A, 454853}, {0x1D71B, 454823}, {0x1D71C, 442317}, {0x1D71D, 442391}, {0x1D71E, 442758}, {0x1D71F, 442536}, {0x1D720, 442610}, {0x1D721, 444115}, {0x1D722, 442651}, {0x1D723, 443743}, {0x1D724, 442867}, {0x1D725, 442975}, {0x1D726, 443049}, {0x1D727, 443123}, {0x1D728, 443194}, {0x1D729, 444009}, {0x1D72A, 443304}, {0x1D72B, 443417}, {0x1D72C, 443560}, {0x1D72D, 443782}, {0x1D72E, 443632}, {0x1D72F, 443706}, {0x1D730, 443863}, {0x1D731, 443380}, {0x1D732, 442464}, {0x1D733, 443453}, {0x1D734, 443265}, {0x1D735, 444231}, {0x1D736, 444448}, {0x1D737, 444518}, {0x1D738, 444908}, {0x1D739, 444655}, {0x1D73A, 444725}, {0x1D73B, 446147}, {0x1D73C, 444764}, {0x1D73D, 445839}, {0x1D73E, 445011}, {0x1D73F, 445113}, {0x1D740, 445183}, {0x1D741, 445253}, {0x1D742, 445320}, {0x1D743, 446047}, {0x1D744, 445424}, {0x1D745, 445531}, {0x1D746, 445666}, {0x1D747, 444832}, {0x1D748, 445734}, {0x1D749, 445804}, {0x1D74A, 445909}, {0x1D74B, 445496}, {0x1D74C, 444587}, {0x1D74D, 445565}, {0x1D74E, 445387}, {0x1D74F, 444262}, {0x1D750, 444153}, {0x1D751, 446183}, {0x1D752, 444193}, {0x1D753, 444308}, {0x1D754, 444379}, {0x1D755, 444344}, {0x1D756, 458916}, {0x1D757, 458998}, {0x1D758, 459405}, {0x1D759, 459159}, {0x1D75A, 459241}, {0x1D75B, 460910}, {0x1D75C, 459286}, {0x1D75D, 460498}, {0x1D75E, 459526}, {0x1D75F, 459646}, {0x1D760, 459728}, {0x1D761, 459810}, {0x1D762, 459889}, {0x1D763, 460792}, {0x1D764, 460011}, {0x1D765, 460136}, {0x1D766, 460295}, {0x1D767, 460541}, {0x1D768, 460375}, {0x1D769, 460457}, {0x1D76A, 460630}, {0x1D76B, 460095}, {0x1D76C, 459079}, {0x1D76D, 460176}, {0x1D76E, 459968}, {0x1D76F, 466587}, {0x1D770, 466828}, {0x1D771, 466906}, {0x1D772, 467340}, {0x1D773, 467059}, {0x1D774, 467137}, {0x1D775, 468723}, {0x1D776, 467180}, {0x1D777, 468379}, {0x1D778, 467455}, {0x1D779, 467569}, {0x1D77A, 467647}, {0x1D77B, 467725}, {0x1D77C, 467800}, {0x1D77D, 468611}, {0x1D77E, 467916}, {0x1D77F, 468035}, {0x1D780, 468186}, {0x1D781, 467256}, {0x1D782, 468262}, {0x1D783, 468340}, {0x1D784, 468457}, {0x1D785, 467996}, {0x1D786, 466983}, {0x1D787, 468073}, {0x1D788, 467875}, {0x1D789, 466622}, {0x1D78A, 461352}, {0x1D78B, 468763}, {0x1D78C, 466545}, {0x1D78D, 466672}, {0x1D78E, 466751}, {0x1D78F, 466712}, {0x1D790, 461442}, {0x1D791, 461538}, {0x1D792, 462015}, {0x1D793, 461727}, {0x1D794, 461823}, {0x1D795, 463779}, {0x1D796, 461875}, {0x1D797, 463297}, {0x1D798, 462157}, {0x1D799, 462298}, {0x1D79A, 462394}, {0x1D79B, 462490}, {0x1D79C, 462583}, {0x1D79D, 463640}, {0x1D79E, 462726}, {0x1D79F, 462872}, {0x1D7A0, 463059}, {0x1D7A1, 463347}, {0x1D7A2, 463153}, {0x1D7A3, 463249}, {0x1D7A4, 463450}, {0x1D7A5, 462824}, {0x1D7A6, 461633}, {0x1D7A7, 462919}, {0x1D7A8, 462676}, {0x1D7A9, 463928}, {0x1D7AA, 464211}, {0x1D7AB, 464303}, {0x1D7AC, 464814}, {0x1D7AD, 464484}, {0x1D7AE, 464576}, {0x1D7AF, 466449}, {0x1D7B0, 464626}, {0x1D7B1, 466042}, {0x1D7B2, 464950}, {0x1D7B3, 465085}, {0x1D7B4, 465177}, {0x1D7B5, 465269}, {0x1D7B6, 465358}, {0x1D7B7, 466316}, {0x1D7B8, 465495}, {0x1D7B9, 465635}, {0x1D7BA, 465814}, {0x1D7BB, 464716}, {0x1D7BC, 465904}, {0x1D7BD, 465996}, {0x1D7BE, 466134}, {0x1D7BF, 465589}, {0x1D7C0, 464394}, {0x1D7C1, 465680}, {0x1D7C2, 465447}, {0x1D7C3, 463970}, {0x1D7C4, 463828}, {0x1D7C5, 466496}, {0x1D7C6, 463879}, {0x1D7C7, 464027}, {0x1D7C8, 464120}, {0x1D7C9, 464074}, {0x1D7CA, 438828}, {0x1D7CB, 448390}, {0x1D7CE, 440400}, {0x1D7CF, 440256}, {0x1D7D0, 440372}, {0x1D7D1, 440342}, {0x1D7D2, 440198}, {0x1D7D3, 440169}, {0x1D7D4, 440314}, {0x1D7D5, 440284}, {0x1D7D6, 440139}, {0x1D7D7, 440227}, {0x1D7D8, 450688}, {0x1D7D9, 450499}, {0x1D7DA, 450651}, {0x1D7DB, 450612}, {0x1D7DC, 450423}, {0x1D7DD, 450385}, {0x1D7DE, 450575}, {0x1D7DF, 450536}, {0x1D7E0, 450346}, {0x1D7E1, 450461}, {0x1D7E2, 470004}, {0x1D7E3, 469830}, {0x1D7E4, 469970}, {0x1D7E5, 469934}, {0x1D7E6, 469760}, {0x1D7E7, 469725}, {0x1D7E8, 469900}, {0x1D7E9, 469864}, {0x1D7EA, 469689}, {0x1D7EB, 469795}, {0x1D7EC, 461312}, {0x1D7ED, 461113}, {0x1D7EE, 461273}, {0x1D7EF, 461232}, {0x1D7F0, 461033}, {0x1D7F1, 460993}, {0x1D7F2, 461193}, {0x1D7F3, 461152}, {0x1D7F4, 460952}, {0x1D7F5, 461073}, {0x1D7F6, 457835}, {0x1D7F7, 457666}, {0x1D7F8, 457802}, {0x1D7F9, 457767}, {0x1D7FA, 457598}, {0x1D7FB, 457564}, {0x1D7FC, 457734}, {0x1D7FD, 457699}, {0x1D7FE, 457529}, {0x1D7FF, 457632}, {0x1F000, 434426}, {0x1F001, 435210}, {0x1F002, 435454}, {0x1F003, 434857}, {0x1F004, 435006}, {0x1F005, 434722}, {0x1F006, 435477}, {0x1F007, 434909}, {0x1F008, 435395}, {0x1F009, 435304}, {0x1F00A, 434661}, {0x1F00B, 434571}, {0x1F00C, 435151}, {0x1F00D, 435060}, {0x1F00E, 434479}, {0x1F00F, 434796}, {0x1F010, 434881}, {0x1F011, 435367}, {0x1F012, 435274}, {0x1F013, 434632}, {0x1F014, 434542}, {0x1F015, 435123}, {0x1F016, 435030}, {0x1F017, 434449}, {0x1F018, 434767}, {0x1F019, 434940}, {0x1F01A, 435426}, {0x1F01B, 435337}, {0x1F01C, 434693}, {0x1F01D, 434603}, {0x1F01E, 435182}, {0x1F01F, 435093}, {0x1F020, 434512}, {0x1F021, 434828}, {0x1F022, 434988}, {0x1F023, 434968}, {0x1F024, 434379}, {0x1F025, 434399}, {0x1F026, 435234}, {0x1F027, 435254}, {0x1F028, 434341}, {0x1F029, 435503}, {0x1F02A, 434748}, {0x1F02B, 434361}, {0x1F030, 242393}, {0x1F031, 242421}, {0x1F032, 242450}, {0x1F033, 242479}, {0x1F034, 242508}, {0x1F035, 242537}, {0x1F036, 242566}, {0x1F037, 242595}, {0x1F038, 242624}, {0x1F039, 242653}, {0x1F03A, 242682}, {0x1F03B, 242711}, {0x1F03C, 242740}, {0x1F03D, 242769}, {0x1F03E, 242798}, {0x1F03F, 242827}, {0x1F040, 242856}, {0x1F041, 242885}, {0x1F042, 242914}, {0x1F043, 242943}, {0x1F044, 242972}, {0x1F045, 243001}, {0x1F046, 243030}, {0x1F047, 243059}, {0x1F048, 243088}, {0x1F049, 243117}, {0x1F04A, 243146}, {0x1F04B, 243175}, {0x1F04C, 243204}, {0x1F04D, 243233}, {0x1F04E, 243262}, {0x1F04F, 243291}, {0x1F050, 243320}, {0x1F051, 243349}, {0x1F052, 243378}, {0x1F053, 243407}, {0x1F054, 243436}, {0x1F055, 243465}, {0x1F056, 243494}, {0x1F057, 243523}, {0x1F058, 243552}, {0x1F059, 243581}, {0x1F05A, 243610}, {0x1F05B, 243639}, {0x1F05C, 243668}, {0x1F05D, 243697}, {0x1F05E, 243726}, {0x1F05F, 243755}, {0x1F060, 243784}, {0x1F061, 243813}, {0x1F062, 243842}, {0x1F063, 243868}, {0x1F064, 243895}, {0x1F065, 243922}, {0x1F066, 243949}, {0x1F067, 243976}, {0x1F068, 244003}, {0x1F069, 244030}, {0x1F06A, 244057}, {0x1F06B, 244084}, {0x1F06C, 244111}, {0x1F06D, 244138}, {0x1F06E, 244165}, {0x1F06F, 244192}, {0x1F070, 244219}, {0x1F071, 244246}, {0x1F072, 244273}, {0x1F073, 244300}, {0x1F074, 244327}, {0x1F075, 244354}, {0x1F076, 244381}, {0x1F077, 244408}, {0x1F078, 244435}, {0x1F079, 244462}, {0x1F07A, 244489}, {0x1F07B, 244516}, {0x1F07C, 244543}, {0x1F07D, 244570}, {0x1F07E, 244597}, {0x1F07F, 244624}, {0x1F080, 244651}, {0x1F081, 244678}, {0x1F082, 244705}, {0x1F083, 244732}, {0x1F084, 244759}, {0x1F085, 244786}, {0x1F086, 244813}, {0x1F087, 244840}, {0x1F088, 244867}, {0x1F089, 244894}, {0x1F08A, 244921}, {0x1F08B, 244948}, {0x1F08C, 244975}, {0x1F08D, 245002}, {0x1F08E, 245029}, {0x1F08F, 245056}, {0x1F090, 245083}, {0x1F091, 245110}, {0x1F092, 245137}, {0x1F093, 245164}, {0x1F0A0, 527753}, {0x1F0A1, 527726}, {0x1F0A2, 529250}, {0x1F0A3, 529139}, {0x1F0A4, 528111}, {0x1F0A5, 527998}, {0x1F0A6, 528915}, {0x1F0A7, 528804}, {0x1F0A8, 527884}, {0x1F0A9, 528571}, {0x1F0AA, 529024}, {0x1F0AB, 528224}, {0x1F0AC, 528456}, {0x1F0AD, 528687}, {0x1F0AE, 528337}, {0x1F0B1, 527699}, {0x1F0B2, 529223}, {0x1F0B3, 529110}, {0x1F0B4, 528083}, {0x1F0B5, 527970}, {0x1F0B6, 528888}, {0x1F0B7, 528775}, {0x1F0B8, 527855}, {0x1F0B9, 528543}, {0x1F0BA, 528997}, {0x1F0BB, 528196}, {0x1F0BC, 528426}, {0x1F0BD, 528658}, {0x1F0BE, 528309}, {0x1F0C1, 527670}, {0x1F0C2, 529194}, {0x1F0C3, 529079}, {0x1F0C4, 528053}, {0x1F0C5, 527940}, {0x1F0C6, 528859}, {0x1F0C7, 528744}, {0x1F0C8, 527824}, {0x1F0C9, 528513}, {0x1F0CA, 528968}, {0x1F0CB, 528166}, {0x1F0CC, 528394}, {0x1F0CD, 528627}, {0x1F0CE, 528279}, {0x1F0CF, 527771}, {0x1F0D1, 527644}, {0x1F0D2, 529168}, {0x1F0D3, 529051}, {0x1F0D4, 528026}, {0x1F0D5, 527913}, {0x1F0D6, 528833}, {0x1F0D7, 528716}, {0x1F0D8, 527796}, {0x1F0D9, 528486}, {0x1F0DA, 528942}, {0x1F0DB, 528139}, {0x1F0DC, 528365}, {0x1F0DD, 528599}, {0x1F0DE, 528252}, {0x1F0DF, 529277}, {0x1F100, 240360}, {0x1F101, 240343}, {0x1F102, 240100}, {0x1F103, 240296}, {0x1F104, 240246}, {0x1F105, 240003}, {0x1F106, 239954}, {0x1F107, 240198}, {0x1F108, 240148}, {0x1F109, 239903}, {0x1F10A, 240052}, {0x1F110, 521471}, {0x1F111, 521508}, {0x1F112, 521545}, {0x1F113, 521582}, {0x1F114, 521619}, {0x1F115, 521656}, {0x1F116, 521693}, {0x1F117, 521730}, {0x1F118, 521767}, {0x1F119, 521804}, {0x1F11A, 521841}, {0x1F11B, 521878}, {0x1F11C, 521915}, {0x1F11D, 521952}, {0x1F11E, 521989}, {0x1F11F, 522026}, {0x1F120, 522063}, {0x1F121, 522100}, {0x1F122, 522137}, {0x1F123, 522174}, {0x1F124, 522211}, {0x1F125, 522248}, {0x1F126, 522285}, {0x1F127, 522322}, {0x1F128, 522359}, {0x1F129, 522396}, {0x1F12A, 593727}, {0x1F12B, 135183}, {0x1F12C, 135221}, {0x1F12D, 132753}, {0x1F12E, 139489}, {0x1F130, 560303}, {0x1F131, 560334}, {0x1F132, 560365}, {0x1F133, 560396}, {0x1F134, 560427}, {0x1F135, 560458}, {0x1F136, 560489}, {0x1F137, 560520}, {0x1F138, 560551}, {0x1F139, 560582}, {0x1F13A, 560613}, {0x1F13B, 560644}, {0x1F13C, 560675}, {0x1F13D, 560706}, {0x1F13E, 560737}, {0x1F13F, 560768}, {0x1F140, 560799}, {0x1F141, 560830}, {0x1F142, 560861}, {0x1F143, 560892}, {0x1F144, 560923}, {0x1F145, 560954}, {0x1F146, 560985}, {0x1F147, 561016}, {0x1F148, 561047}, {0x1F149, 561078}, {0x1F14A, 560207}, {0x1F14B, 561162}, {0x1F14C, 561278}, {0x1F14D, 561337}, {0x1F14E, 561220}, {0x1F14F, 561406}, {0x1F150, 500908}, {0x1F151, 500948}, {0x1F152, 500988}, {0x1F153, 501028}, {0x1F154, 501068}, {0x1F155, 501108}, {0x1F156, 501148}, {0x1F157, 501188}, {0x1F158, 501228}, {0x1F159, 501268}, {0x1F15A, 501308}, {0x1F15B, 501348}, {0x1F15C, 501388}, {0x1F15D, 501428}, {0x1F15E, 501468}, {0x1F15F, 501508}, {0x1F160, 501548}, {0x1F161, 501588}, {0x1F162, 501628}, {0x1F163, 501668}, {0x1F164, 501708}, {0x1F165, 501748}, {0x1F166, 501788}, {0x1F167, 501828}, {0x1F168, 501868}, {0x1F169, 501908}, {0x1F170, 502339}, {0x1F171, 502379}, {0x1F172, 502419}, {0x1F173, 502459}, {0x1F174, 502499}, {0x1F175, 502539}, {0x1F176, 502579}, {0x1F177, 502619}, {0x1F178, 502659}, {0x1F179, 502699}, {0x1F17A, 502739}, {0x1F17B, 502779}, {0x1F17C, 502819}, {0x1F17D, 502859}, {0x1F17E, 502899}, {0x1F17F, 502939}, {0x1F180, 502979}, {0x1F181, 503019}, {0x1F182, 503059}, {0x1F183, 503099}, {0x1F184, 503139}, {0x1F185, 503179}, {0x1F186, 503219}, {0x1F187, 503259}, {0x1F188, 503299}, {0x1F189, 503339}, {0x1F18A, 191054}, {0x1F18B, 502319}, {0x1F18C, 503379}, {0x1F18D, 503399}, {0x1F18E, 502271}, {0x1F18F, 503419}, {0x1F190, 555476}, {0x1F191, 560089}, {0x1F192, 560100}, {0x1F193, 560194}, {0x1F194, 560218}, {0x1F195, 561173}, {0x1F196, 561185}, {0x1F197, 561196}, {0x1F198, 561310}, {0x1F199, 561362}, {0x1F19A, 561395}, {0x1F1E6, 533220}, {0x1F1E7, 533255}, {0x1F1E8, 533290}, {0x1F1E9, 533325}, {0x1F1EA, 533360}, {0x1F1EB, 533395}, {0x1F1EC, 533430}, {0x1F1ED, 533465}, {0x1F1EE, 533500}, {0x1F1EF, 533535}, {0x1F1F0, 533570}, {0x1F1F1, 533605}, {0x1F1F2, 533640}, {0x1F1F3, 533675}, {0x1F1F4, 533710}, {0x1F1F5, 533745}, {0x1F1F6, 533780}, {0x1F1F7, 533815}, {0x1F1F8, 533850}, {0x1F1F9, 533885}, {0x1F1FA, 533920}, {0x1F1FB, 533955}, {0x1F1FC, 533990}, {0x1F1FD, 534025}, {0x1F1FE, 534060}, {0x1F1FF, 534095}, {0x1F200, 555950}, {0x1F201, 560249}, {0x1F202, 560271}, {0x1F210, 559319}, {0x1F211, 559214}, {0x1F212, 558934}, {0x1F213, 560229}, {0x1F214, 558724}, {0x1F215, 559144}, {0x1F216, 559949}, {0x1F217, 559179}, {0x1F218, 558759}, {0x1F219, 559564}, {0x1F21A, 559739}, {0x1F21B, 559494}, {0x1F21C, 558864}, {0x1F21D, 559284}, {0x1F21E, 558794}, {0x1F21F, 559529}, {0x1F220, 558829}, {0x1F221, 559914}, {0x1F222, 559774}, {0x1F223, 559984}, {0x1F224, 559109}, {0x1F225, 559039}, {0x1F226, 559704}, {0x1F227, 559389}, {0x1F228, 559459}, {0x1F229, 558619}, {0x1F22A, 558654}, {0x1F22B, 560054}, {0x1F22C, 559249}, {0x1F22D, 558689}, {0x1F22E, 558969}, {0x1F22F, 559424}, {0x1F230, 560019}, {0x1F231, 559354}, {0x1F232, 559844}, {0x1F233, 559879}, {0x1F234, 559004}, {0x1F235, 559669}, {0x1F236, 559634}, {0x1F237, 559599}, {0x1F238, 559809}, {0x1F239, 558899}, {0x1F23A, 559074}, {0x1F240, 593571}, {0x1F241, 593259}, {0x1F242, 593311}, {0x1F243, 593415}, {0x1F244, 593623}, {0x1F245, 593467}, {0x1F246, 593675}, {0x1F247, 593363}, {0x1F248, 593519}, {0x1F250, 133845}, {0x1F251, 133820}, {0x1F300, 219838}, {0x1F301, 290263}, {0x1F302, 177852}, {0x1F303, 506033}, {0x1F304, 563980}, {0x1F305, 563972}, {0x1F306, 139551}, {0x1F307, 564003}, {0x1F308, 532731}, {0x1F309, 96574}, {0x1F30A, 611699}, {0x1F30B, 611049}, {0x1F30C, 476972}, {0x1F30D, 248629}, {0x1F30E, 248581}, {0x1F30F, 248602}, {0x1F310, 299801}, {0x1F311, 503789}, {0x1F312, 611865}, {0x1F313, 289954}, {0x1F314, 611893}, {0x1F315, 290701}, {0x1F316, 611626}, {0x1F317, 378938}, {0x1F318, 611598}, {0x1F319, 190968}, {0x1F31A, 503805}, {0x1F31B, 289980}, {0x1F31C, 378963}, {0x1F31D, 290718}, {0x1F31E, 562718}, {0x1F31F, 299822}, {0x1F320, 548939}, {0x1F330, 132139}, {0x1F331, 547759}, {0x1F332, 288733}, {0x1F333, 233220}, {0x1F334, 519108}, {0x1F335, 107735}, {0x1F337, 594673}, {0x1F338, 132124}, {0x1F339, 541247}, {0x1F33A, 347893}, {0x1F33B, 563962}, {0x1F33C, 80837}, {0x1F33D, 248550}, {0x1F33E, 248563}, {0x1F33F, 346162}, {0x1F340, 290436}, {0x1F341, 438526}, {0x1F342, 289566}, {0x1F343, 416478}, {0x1F344, 488565}, {0x1F345, 592902}, {0x1F346, 53141}, {0x1F347, 300404}, {0x1F348, 476656}, {0x1F349, 611710}, {0x1F34A, 578055}, {0x1F34B, 421469}, {0x1F34C, 74852}, {0x1F34D, 527506}, {0x1F34E, 533195}, {0x1F34F, 320741}, {0x1F350, 523875}, {0x1F351, 523869}, {0x1F352, 132115}, {0x1F353, 561636}, {0x1F354, 327914}, {0x1F355, 552346}, {0x1F356, 474760}, {0x1F357, 529851}, {0x1F358, 535608}, {0x1F359, 535598}, {0x1F35A, 186284}, {0x1F35B, 219771}, {0x1F35C, 561584}, {0x1F35D, 554782}, {0x1F35E, 96546}, {0x1F35F, 290569}, {0x1F360, 540381}, {0x1F361, 233119}, {0x1F362, 509329}, {0x1F363, 564903}, {0x1F364, 290582}, {0x1F365, 290014}, {0x1F366, 554274}, {0x1F367, 547971}, {0x1F368, 350383}, {0x1F369, 247254}, {0x1F36A, 186296}, {0x1F36B, 132189}, {0x1F36C, 127722}, {0x1F36D, 432256}, {0x1F36E, 219822}, {0x1F36F, 349841}, {0x1F370, 549137}, {0x1F371, 78338}, {0x1F372, 529812}, {0x1F373, 186303}, {0x1F374, 290295}, {0x1F375, 578088}, {0x1F376, 543960}, {0x1F377, 614669}, {0x1F378, 177942}, {0x1F379, 594619}, {0x1F37A, 76304}, {0x1F37B, 176693}, {0x1F37C, 54235}, {0x1F380, 535591}, {0x1F381, 614845}, {0x1F382, 78492}, {0x1F383, 359334}, {0x1F384, 132203}, {0x1F385, 289732}, {0x1F386, 289925}, {0x1F387, 289907}, {0x1F388, 57707}, {0x1F389, 523753}, {0x1F38A, 185901}, {0x1F38B, 578041}, {0x1F38C, 191040}, {0x1F38D, 527490}, {0x1F38E, 359386}, {0x1F38F, 128651}, {0x1F390, 614658}, {0x1F391, 488058}, {0x1F392, 547463}, {0x1F393, 300389}, {0x1F3A0, 128636}, {0x1F3A1, 289813}, {0x1F3A2, 540409}, {0x1F3A3, 290050}, {0x1F3A4, 476911}, {0x1F3A5, 488177}, {0x1F3A6, 132225}, {0x1F3A7, 340757}, {0x1F3A8, 52968}, {0x1F3A9, 593053}, {0x1F3AA, 139539}, {0x1F3AB, 591145}, {0x1F3AC, 176639}, {0x1F3AD, 523988}, {0x1F3AE, 610995}, {0x1F3AF, 241848}, {0x1F3B0, 552402}, {0x1F3B1, 78462}, {0x1F3B2, 293625}, {0x1F3B3, 82540}, {0x1F3B4, 290205}, {0x1F3B5, 488643}, {0x1F3B6, 488238}, {0x1F3B7, 547439}, {0x1F3B8, 320881}, {0x1F3B9, 488626}, {0x1F3BA, 594653}, {0x1F3BB, 611036}, {0x1F3BC, 488656}, {0x1F3BD, 543890}, {0x1F3BE, 580280}, {0x1F3BF, 552092}, {0x1F3C0, 74993}, {0x1F3C1, 130471}, {0x1F3C2, 554199}, {0x1F3C3, 543883}, {0x1F3C4, 564896}, {0x1F3C6, 594612}, {0x1F3C7, 350113}, {0x1F3C8, 6480}, {0x1F3C9, 541353}, {0x1F3CA, 564928}, {0x1F3E0, 350210}, {0x1F3E1, 350225}, {0x1F3E2, 509334}, {0x1F3E3, 359467}, {0x1F3E4, 288712}, {0x1F3E5, 350126}, {0x1F3E6, 74859}, {0x1F3E7, 53164}, {0x1F3E8, 350160}, {0x1F3E9, 432723}, {0x1F3EA, 186266}, {0x1F3EB, 547456}, {0x1F3EC, 234090}, {0x1F3ED, 289558}, {0x1F3EE, 359318}, {0x1F3EF, 359370}, {0x1F3F0, 288696}, {0x1F400, 532844}, {0x1F401, 488154}, {0x1F402, 519042}, {0x1F403, 611672}, {0x1F404, 190943}, {0x1F405, 592478}, {0x1F406, 421479}, {0x1F407, 532637}, {0x1F408, 128672}, {0x1F409, 248463}, {0x1F40A, 190982}, {0x1F40B, 612002}, {0x1F40C, 554187}, {0x1F40D, 554193}, {0x1F40E, 350096}, {0x1F40F, 532840}, {0x1F410, 299835}, {0x1F411, 548914}, {0x1F412, 487958}, {0x1F413, 541239}, {0x1F414, 132156}, {0x1F415, 242360}, {0x1F416, 527438}, {0x1F417, 80875}, {0x1F418, 276382}, {0x1F419, 509321}, {0x1F41A, 555057}, {0x1F41B, 96659}, {0x1F41C, 6617}, {0x1F41D, 349851}, {0x1F41E, 377429}, {0x1F41F, 290009}, {0x1F420, 594634}, {0x1F421, 80845}, {0x1F422, 594922}, {0x1F423, 340742}, {0x1F424, 54247}, {0x1F425, 290605}, {0x1F426, 78487}, {0x1F427, 523898}, {0x1F428, 377385}, {0x1F429, 529710}, {0x1F42A, 248504}, {0x1F42B, 54346}, {0x1F42C, 242385}, {0x1F42D, 488160}, {0x1F42E, 190947}, {0x1F42F, 592484}, {0x1F430, 532644}, {0x1F431, 128676}, {0x1F432, 248470}, {0x1F433, 555093}, {0x1F434, 350102}, {0x1F435, 487965}, {0x1F436, 242364}, {0x1F437, 527442}, {0x1F438, 290595}, {0x1F439, 327965}, {0x1F43A, 614693}, {0x1F43B, 76272}, {0x1F43C, 519118}, {0x1F43D, 527451}, {0x1F43E, 523845}, {0x1F440, 289162}, {0x1F442, 248546}, {0x1F443, 508234}, {0x1F444, 488171}, {0x1F445, 592909}, {0x1F446, 614381}, {0x1F447, 612687}, {0x1F448, 613149}, {0x1F449, 613498}, {0x1F44A, 290072}, {0x1F44B, 611800}, {0x1F44C, 509923}, {0x1F44D, 585601}, {0x1F44E, 585584}, {0x1F44F, 176653}, {0x1F450, 516141}, {0x1F451, 191132}, {0x1F452, 614759}, {0x1F453, 289151}, {0x1F454, 500821}, {0x1F455, 568740}, {0x1F456, 361591}, {0x1F457, 248482}, {0x1F458, 377290}, {0x1F459, 78455}, {0x1F45A, 614744}, {0x1F45B, 532062}, {0x1F45C, 327978}, {0x1F45D, 529845}, {0x1F45E, 438490}, {0x1F45F, 53115}, {0x1F460, 347943}, {0x1F461, 614770}, {0x1F462, 614731}, {0x1F463, 290269}, {0x1F464, 97628}, {0x1F465, 97647}, {0x1F466, 87725}, {0x1F467, 296761}, {0x1F468, 437856}, {0x1F469, 614703}, {0x1F46A, 289712}, {0x1F46B, 437860}, {0x1F46C, 595248}, {0x1F46D, 595270}, {0x1F46E, 529695}, {0x1F46F, 614709}, {0x1F470, 96558}, {0x1F471, 524172}, {0x1F472, 437888}, {0x1F473, 437908}, {0x1F474, 515815}, {0x1F475, 515825}, {0x1F476, 54219}, {0x1F477, 186000}, {0x1F478, 531923}, {0x1F479, 359453}, {0x1F47A, 359401}, {0x1F47B, 296742}, {0x1F47C, 54224}, {0x1F47D, 289128}, {0x1F47E, 6260}, {0x1F47F, 355093}, {0x1F480, 552115}, {0x1F481, 356156}, {0x1F482, 320871}, {0x1F483, 233112}, {0x1F484, 431004}, {0x1F485, 500738}, {0x1F486, 289167}, {0x1F487, 324215}, {0x1F488, 74972}, {0x1F489, 568732}, {0x1F48A, 527485}, {0x1F48B, 377311}, {0x1F48C, 432734}, {0x1F48D, 540225}, {0x1F48E, 293674}, {0x1F48F, 377306}, {0x1F490, 82532}, {0x1F491, 190925}, {0x1F492, 611946}, {0x1F493, 76282}, {0x1F494, 96646}, {0x1F495, 595112}, {0x1F496, 554809}, {0x1F497, 320844}, {0x1F498, 340831}, {0x1F499, 80864}, {0x1F49A, 320764}, {0x1F49B, 614921}, {0x1F49C, 532049}, {0x1F49D, 340848}, {0x1F49E, 535564}, {0x1F49F, 340814}, {0x1F4A0, 239656}, {0x1F4A1, 276032}, {0x1F4A2, 6528}, {0x1F4A3, 80880}, {0x1F4A4, 552318}, {0x1F4A5, 177964}, {0x1F4A6, 555070}, {0x1F4A7, 248520}, {0x1F4A8, 233136}, {0x1F4A9, 527473}, {0x1F4AA, 290159}, {0x1F4AB, 242041}, {0x1F4AC, 554946}, {0x1F4AD, 585283}, {0x1F4AE, 612956}, {0x1F4AF, 350256}, {0x1F4B0, 483831}, {0x1F4B1, 219739}, {0x1F4B2, 341392}, {0x1F4B3, 190956}, {0x1F4B4, 74939}, {0x1F4B5, 74864}, {0x1F4B6, 74890}, {0x1F4B7, 74914}, {0x1F4B8, 483841}, {0x1F4B9, 130403}, {0x1F4BA, 547715}, {0x1F4BB, 524245}, {0x1F4BC, 96590}, {0x1F4BD, 477000}, {0x1F4BE, 290173}, {0x1F4BF, 516374}, {0x1F4C0, 248528}, {0x1F4C1, 289857}, {0x1F4C2, 516124}, {0x1F4C3, 519068}, {0x1F4C4, 519053}, {0x1F4C5, 107760}, {0x1F4C6, 578110}, {0x1F4C7, 127750}, {0x1F4C8, 130378}, {0x1F4C9, 130351}, {0x1F4CA, 74962}, {0x1F4CB, 176712}, {0x1F4CC, 532068}, {0x1F4CD, 541331}, {0x1F4CE, 519129}, {0x1F4CF, 561608}, {0x1F4D0, 594010}, {0x1F4D1, 80894}, {0x1F4D2, 416502}, {0x1F4D3, 508706}, {0x1F4D4, 508715}, {0x1F4D5, 177638}, {0x1F4D6, 516006}, {0x1F4D7, 320753}, {0x1F4D8, 80854}, {0x1F4D9, 516417}, {0x1F4DA, 80908}, {0x1F4DB, 500761}, {0x1F4DC, 547700}, {0x1F4DD, 476662}, {0x1F4DE, 578210}, {0x1F4DF, 519083}, {0x1F4E0, 289749}, {0x1F4E1, 545553}, {0x1F4E2, 532004}, {0x1F4E3, 130452}, {0x1F4E4, 518939}, {0x1F4E5, 356022}, {0x1F4E6, 519045}, {0x1F4E7, 248532}, {0x1F4E8, 356033}, {0x1F4E9, 276655}, {0x1F4EA, 177703}, {0x1F4EB, 177736}, {0x1F4EC, 516198}, {0x1F4ED, 516167}, {0x1F4EE, 529804}, {0x1F4EF, 529763}, {0x1F4F0, 506013}, {0x1F4F1, 477190}, {0x1F4F2, 477220}, {0x1F4F3, 610954}, {0x1F4F4, 477203}, {0x1F4F5, 507149}, {0x1F4F6, 6621}, {0x1F4F7, 107769}, {0x1F4F9, 610982}, {0x1F4FA, 578273}, {0x1F4FB, 532678}, {0x1F4FC, 611006}, {0x1F500, 594955}, {0x1F501, 177465}, {0x1F502, 177519}, {0x1F503, 177337}, {0x1F504, 6704}, {0x1F505, 432759}, {0x1F506, 347902}, {0x1F507, 554854}, {0x1F508, 554846}, {0x1F509, 554887}, {0x1F50A, 554915}, {0x1F50B, 76221}, {0x1F50C, 276052}, {0x1F50D, 418949}, {0x1F50E, 537618}, {0x1F50F, 431851}, {0x1F510, 177682}, {0x1F511, 372519}, {0x1F512, 431846}, {0x1F513, 516157}, {0x1F514, 76313}, {0x1F515, 76330}, {0x1F516, 80885}, {0x1F517, 430992}, {0x1F518, 532684}, {0x1F519, 54270}, {0x1F51A, 276602}, {0x1F51B, 515837}, {0x1F51C, 554343}, {0x1F51D, 593230}, {0x1F51E, 507166}, {0x1F51F, 372532}, {0x1F520, 356254}, {0x1F521, 356324}, {0x1F522, 356361}, {0x1F523, 356386}, {0x1F524, 356293}, {0x1F525, 289890}, {0x1F526, 276066}, {0x1F527, 614876}, {0x1F528, 327924}, {0x1F529, 509044}, {0x1F52A, 349824}, {0x1F52B, 527537}, {0x1F52C, 476922}, {0x1F52D, 578263}, {0x1F52E, 191180}, {0x1F52F, 552017}, {0x1F530, 359488}, {0x1F531, 594036}, {0x1F532, 80248}, {0x1F533, 613841}, {0x1F534, 378736}, {0x1F535, 378538}, {0x1F536, 378715}, {0x1F537, 378556}, {0x1F538, 553010}, {0x1F539, 552446}, {0x1F53A, 596637}, {0x1F53B, 247360}, {0x1F53C, 596662}, {0x1F53D, 247387}, {0x1F550, 176958}, {0x1F551, 177236}, {0x1F552, 177138}, {0x1F553, 176866}, {0x1F554, 176820}, {0x1F555, 177050}, {0x1F556, 177002}, {0x1F557, 176722}, {0x1F558, 176912}, {0x1F559, 177094}, {0x1F55A, 176770}, {0x1F55B, 177186}, {0x1F55C, 176980}, {0x1F55D, 177258}, {0x1F55E, 177162}, {0x1F55F, 176889}, {0x1F560, 176843}, {0x1F561, 177072}, {0x1F562, 177026}, {0x1F563, 176746}, {0x1F564, 176935}, {0x1F565, 177116}, {0x1F566, 176795}, {0x1F567, 177211}, {0x1F5FB, 488080}, {0x1F5FC, 592890}, {0x1F5FD, 561549}, {0x1F5FE, 549190}, {0x1F5FF, 488190}, {0x1F601, 320812}, {0x1F602, 289501}, {0x1F603, 553926}, {0x1F604, 553999}, {0x1F605, 553955}, {0x1F606, 554045}, {0x1F607, 553843}, {0x1F608, 553902}, {0x1F609, 614680}, {0x1F60A, 554098}, {0x1F60B, 289180}, {0x1F60C, 534839}, {0x1F60D, 553866}, {0x1F60E, 554129}, {0x1F60F, 554158}, {0x1F610, 503776}, {0x1F612, 595983}, {0x1F613, 289254}, {0x1F614, 523906}, {0x1F616, 185915}, {0x1F618, 289233}, {0x1F61A, 377355}, {0x1F61C, 289458}, {0x1F61D, 289407}, {0x1F61E, 241903}, {0x1F620, 6587}, {0x1F621, 529891}, {0x1F622, 191168}, {0x1F623, 524060}, {0x1F624, 289275}, {0x1F625, 241872}, {0x1F628, 289761}, {0x1F629, 611935}, {0x1F62A, 552334}, {0x1F62B, 592855}, {0x1F62D, 432704}, {0x1F630, 289371}, {0x1F631, 289210}, {0x1F632, 53044}, {0x1F633, 290250}, {0x1F635, 242030}, {0x1F636, 289524}, {0x1F637, 289301}, {0x1F638, 320776}, {0x1F639, 128685}, {0x1F63A, 553810}, {0x1F63B, 553770}, {0x1F63C, 128712}, {0x1F63D, 377321}, {0x1F63E, 529874}, {0x1F63F, 191152}, {0x1F640, 611920}, {0x1F645, 289324}, {0x1F646, 289350}, {0x1F647, 524077}, {0x1F648, 547740}, {0x1F649, 340794}, {0x1F64A, 554825}, {0x1F64B, 340712}, {0x1F64C, 524114}, {0x1F64D, 524098}, {0x1F64E, 524220}, {0x1F64F, 524195}, {0x1F680, 540402}, {0x1F681, 346115}, {0x1F682, 561567}, {0x1F683, 532714}, {0x1F684, 347960}, {0x1F685, 347977}, {0x1F686, 593812}, {0x1F687, 476894}, {0x1F688, 423917}, {0x1F689, 561541}, {0x1F68A, 593818}, {0x1F68B, 593823}, {0x1F68C, 97615}, {0x1F68D, 515910}, {0x1F68E, 594601}, {0x1F68F, 97619}, {0x1F690, 476992}, {0x1F691, 6470}, {0x1F692, 289895}, {0x1F693, 529656}, {0x1F694, 515923}, {0x1F695, 578083}, {0x1F696, 515943}, {0x1F697, 53189}, {0x1F698, 515890}, {0x1F699, 532854}, {0x1F69A, 233333}, {0x1F69B, 52950}, {0x1F69C, 593788}, {0x1F69D, 488031}, {0x1F69E, 488137}, {0x1F69F, 564909}, {0x1F6A0, 488119}, {0x1F6A1, 2326}, {0x1F6A2, 548934}, {0x1F6A3, 541345}, {0x1F6A4, 554961}, {0x1F6A5, 350071}, {0x1F6A6, 610861}, {0x1F6A7, 185982}, {0x1F6A8, 529667}, {0x1F6A9, 593986}, {0x1F6AA, 245201}, {0x1F6AB, 507135}, {0x1F6AC, 554172}, {0x1F6AD, 507210}, {0x1F6AE, 532076}, {0x1F6AF, 242054}, {0x1F6B0, 529824}, {0x1F6B1, 507284}, {0x1F6B2, 78405}, {0x1F6B3, 507114}, {0x1F6B4, 78413}, {0x1F6B5, 488100}, {0x1F6B6, 523880}, {0x1F6B7, 507195}, {0x1F6B8, 132164}, {0x1F6B9, 476667}, {0x1F6BA, 614784}, {0x1F6BB, 534932}, {0x1F6BC, 54258}, {0x1F6BD, 592883}, {0x1F6BE, 611686}, {0x1F6BF, 549167}, {0x1F6C0, 76208}, {0x1F6C1, 76213}, {0x1F6C2, 523828}, {0x1F6C3, 219830}, {0x1F6C4, 54361}, {0x1F6C5, 417319}, {0x1F700, 4655}, {0x1F701, 2388}, {0x1F702, 3748}, {0x1F703, 3720}, {0x1F704, 6186}, {0x1F705, 2732}, {0x1F706, 2596}, {0x1F707, 2629}, {0x1F708, 2664}, {0x1F709, 2697}, {0x1F70A, 5988}, {0x1F70B, 6060}, {0x1F70C, 6092}, {0x1F70D, 5720}, {0x1F70E, 4384}, {0x1F70F, 2964}, {0x1F710, 4150}, {0x1F711, 4190}, {0x1F712, 4232}, {0x1F713, 3209}, {0x1F714, 5132}, {0x1F715, 4330}, {0x1F716, 6124}, {0x1F717, 6154}, {0x1F718, 5031}, {0x1F719, 5063}, {0x1F71A, 3775}, {0x1F71B, 5285}, {0x1F71C, 3953}, {0x1F71D, 3984}, {0x1F71E, 3394}, {0x1F71F, 4868}, {0x1F720, 3281}, {0x1F721, 4017}, {0x1F722, 5542}, {0x1F723, 3314}, {0x1F724, 3353}, {0x1F725, 3240}, {0x1F726, 5198}, {0x1F727, 5636}, {0x1F728, 5956}, {0x1F729, 5809}, {0x1F72A, 4055}, {0x1F72B, 2561}, {0x1F72C, 5498}, {0x1F72D, 5159}, {0x1F72E, 5584}, {0x1F72F, 6018}, {0x1F730, 4782}, {0x1F731, 4824}, {0x1F732, 4752}, {0x1F733, 4906}, {0x1F734, 4938}, {0x1F735, 4970}, {0x1F736, 2444}, {0x1F737, 2473}, {0x1F738, 4118}, {0x1F739, 5097}, {0x1F73A, 2765}, {0x1F73B, 4690}, {0x1F73C, 4720}, {0x1F73D, 2823}, {0x1F73E, 2930}, {0x1F73F, 5749}, {0x1F740, 5778}, {0x1F741, 4622}, {0x1F742, 2999}, {0x1F743, 3027}, {0x1F744, 3057}, {0x1F745, 2504}, {0x1F746, 4358}, {0x1F747, 5341}, {0x1F748, 5839}, {0x1F749, 3802}, {0x1F74A, 6214}, {0x1F74B, 4458}, {0x1F74C, 3146}, {0x1F74D, 5900}, {0x1F74E, 3173}, {0x1F74F, 5247}, {0x1F750, 3115}, {0x1F751, 5870}, {0x1F752, 5370}, {0x1F753, 4086}, {0x1F754, 5314}, {0x1F755, 5928}, {0x1F756, 3893}, {0x1F757, 2795}, {0x1F758, 4426}, {0x1F759, 3087}, {0x1F75A, 4487}, {0x1F75B, 2531}, {0x1F75C, 5408}, {0x1F75D, 5452}, {0x1F75E, 5686}, {0x1F75F, 4524}, {0x1F760, 3690}, {0x1F761, 3626}, {0x1F762, 3657}, {0x1F763, 4558}, {0x1F764, 4587}, {0x1F765, 3431}, {0x1F766, 3462}, {0x1F767, 3495}, {0x1F768, 3528}, {0x1F769, 3561}, {0x1F76A, 2414}, {0x1F76B, 2857}, {0x1F76C, 2892}, {0x1F76D, 5002}, {0x1F76E, 3926}, {0x1F76F, 4302}, {0x1F770, 3594}, {0x1F771, 4274}, {0x1F772, 3828}, {0x1F773, 3860}, {0x20000, 69}, {0x2A6D6, 104}, {0x2A700, 138}, {0x2B734, 173}, {0x2B740, 207}, {0x2B81D, 242}, {0x2F800, 139569}, {0x2F801, 139603}, {0x2F802, 139637}, {0x2F803, 139671}, {0x2F804, 139705}, {0x2F805, 139739}, {0x2F806, 139773}, {0x2F807, 139807}, {0x2F808, 139841}, {0x2F809, 139875}, {0x2F80A, 139909}, {0x2F80B, 139943}, {0x2F80C, 139977}, {0x2F80D, 140011}, {0x2F80E, 140045}, {0x2F80F, 140079}, {0x2F810, 140113}, {0x2F811, 140147}, {0x2F812, 140181}, {0x2F813, 140215}, {0x2F814, 140249}, {0x2F815, 140283}, {0x2F816, 140317}, {0x2F817, 140351}, {0x2F818, 140385}, {0x2F819, 140419}, {0x2F81A, 140453}, {0x2F81B, 140487}, {0x2F81C, 140521}, {0x2F81D, 140555}, {0x2F81E, 140589}, {0x2F81F, 140623}, {0x2F820, 140657}, {0x2F821, 140691}, {0x2F822, 140725}, {0x2F823, 140759}, {0x2F824, 140793}, {0x2F825, 140827}, {0x2F826, 140861}, {0x2F827, 140895}, {0x2F828, 140929}, {0x2F829, 140963}, {0x2F82A, 140997}, {0x2F82B, 141031}, {0x2F82C, 141065}, {0x2F82D, 141099}, {0x2F82E, 141133}, {0x2F82F, 141167}, {0x2F830, 141201}, {0x2F831, 141235}, {0x2F832, 141269}, {0x2F833, 141303}, {0x2F834, 141337}, {0x2F835, 141371}, {0x2F836, 141405}, {0x2F837, 141439}, {0x2F838, 141473}, {0x2F839, 141507}, {0x2F83A, 141541}, {0x2F83B, 141575}, {0x2F83C, 141609}, {0x2F83D, 141643}, {0x2F83E, 141677}, {0x2F83F, 141711}, {0x2F840, 141745}, {0x2F841, 141779}, {0x2F842, 141813}, {0x2F843, 141847}, {0x2F844, 141881}, {0x2F845, 141915}, {0x2F846, 141949}, {0x2F847, 141983}, {0x2F848, 142017}, {0x2F849, 142051}, {0x2F84A, 142085}, {0x2F84B, 142119}, {0x2F84C, 142153}, {0x2F84D, 142187}, {0x2F84E, 142221}, {0x2F84F, 142255}, {0x2F850, 142289}, {0x2F851, 142323}, {0x2F852, 142357}, {0x2F853, 142391}, {0x2F854, 142425}, {0x2F855, 142459}, {0x2F856, 142493}, {0x2F857, 142527}, {0x2F858, 142561}, {0x2F859, 142595}, {0x2F85A, 142629}, {0x2F85B, 142663}, {0x2F85C, 142697}, {0x2F85D, 142731}, {0x2F85E, 142765}, {0x2F85F, 142799}, {0x2F860, 142833}, {0x2F861, 142867}, {0x2F862, 142901}, {0x2F863, 142935}, {0x2F864, 142969}, {0x2F865, 143003}, {0x2F866, 143037}, {0x2F867, 143071}, {0x2F868, 143105}, {0x2F869, 143139}, {0x2F86A, 143173}, {0x2F86B, 143207}, {0x2F86C, 143241}, {0x2F86D, 143275}, {0x2F86E, 143309}, {0x2F86F, 143343}, {0x2F870, 143377}, {0x2F871, 143411}, {0x2F872, 143445}, {0x2F873, 143479}, {0x2F874, 143513}, {0x2F875, 143547}, {0x2F876, 143581}, {0x2F877, 143615}, {0x2F878, 143649}, {0x2F879, 143683}, {0x2F87A, 143717}, {0x2F87B, 143751}, {0x2F87C, 143785}, {0x2F87D, 143819}, {0x2F87E, 143853}, {0x2F87F, 143887}, {0x2F880, 143921}, {0x2F881, 143955}, {0x2F882, 143989}, {0x2F883, 144023}, {0x2F884, 144057}, {0x2F885, 144091}, {0x2F886, 144125}, {0x2F887, 144159}, {0x2F888, 144193}, {0x2F889, 144227}, {0x2F88A, 144261}, {0x2F88B, 144295}, {0x2F88C, 144329}, {0x2F88D, 144363}, {0x2F88E, 144397}, {0x2F88F, 144431}, {0x2F890, 144465}, {0x2F891, 144499}, {0x2F892, 144533}, {0x2F893, 144567}, {0x2F894, 144601}, {0x2F895, 144635}, {0x2F896, 144669}, {0x2F897, 144703}, {0x2F898, 144737}, {0x2F899, 144771}, {0x2F89A, 144805}, {0x2F89B, 144839}, {0x2F89C, 144873}, {0x2F89D, 144907}, {0x2F89E, 144941}, {0x2F89F, 144975}, {0x2F8A0, 145009}, {0x2F8A1, 145043}, {0x2F8A2, 145077}, {0x2F8A3, 145111}, {0x2F8A4, 145145}, {0x2F8A5, 145179}, {0x2F8A6, 145213}, {0x2F8A7, 145247}, {0x2F8A8, 145281}, {0x2F8A9, 145315}, {0x2F8AA, 145349}, {0x2F8AB, 145383}, {0x2F8AC, 145417}, {0x2F8AD, 145451}, {0x2F8AE, 145485}, {0x2F8AF, 145519}, {0x2F8B0, 145553}, {0x2F8B1, 145587}, {0x2F8B2, 145621}, {0x2F8B3, 145655}, {0x2F8B4, 145689}, {0x2F8B5, 145723}, {0x2F8B6, 145757}, {0x2F8B7, 145791}, {0x2F8B8, 145825}, {0x2F8B9, 145859}, {0x2F8BA, 145893}, {0x2F8BB, 145927}, {0x2F8BC, 145961}, {0x2F8BD, 145995}, {0x2F8BE, 146029}, {0x2F8BF, 146063}, {0x2F8C0, 146097}, {0x2F8C1, 146131}, {0x2F8C2, 146165}, {0x2F8C3, 146199}, {0x2F8C4, 146233}, {0x2F8C5, 146267}, {0x2F8C6, 146301}, {0x2F8C7, 146335}, {0x2F8C8, 146369}, {0x2F8C9, 146403}, {0x2F8CA, 146437}, {0x2F8CB, 146471}, {0x2F8CC, 146505}, {0x2F8CD, 146539}, {0x2F8CE, 146573}, {0x2F8CF, 146607}, {0x2F8D0, 146641}, {0x2F8D1, 146675}, {0x2F8D2, 146709}, {0x2F8D3, 146743}, {0x2F8D4, 146777}, {0x2F8D5, 146811}, {0x2F8D6, 146845}, {0x2F8D7, 146879}, {0x2F8D8, 146913}, {0x2F8D9, 146947}, {0x2F8DA, 146981}, {0x2F8DB, 147015}, {0x2F8DC, 147049}, {0x2F8DD, 147083}, {0x2F8DE, 147117}, {0x2F8DF, 147151}, {0x2F8E0, 147185}, {0x2F8E1, 147219}, {0x2F8E2, 147253}, {0x2F8E3, 147287}, {0x2F8E4, 147321}, {0x2F8E5, 147355}, {0x2F8E6, 147389}, {0x2F8E7, 147423}, {0x2F8E8, 147457}, {0x2F8E9, 147491}, {0x2F8EA, 147525}, {0x2F8EB, 147559}, {0x2F8EC, 147593}, {0x2F8ED, 147627}, {0x2F8EE, 147661}, {0x2F8EF, 147695}, {0x2F8F0, 147729}, {0x2F8F1, 147763}, {0x2F8F2, 147797}, {0x2F8F3, 147831}, {0x2F8F4, 147865}, {0x2F8F5, 147899}, {0x2F8F6, 147933}, {0x2F8F7, 147967}, {0x2F8F8, 148001}, {0x2F8F9, 148035}, {0x2F8FA, 148069}, {0x2F8FB, 148103}, {0x2F8FC, 148137}, {0x2F8FD, 148171}, {0x2F8FE, 148205}, {0x2F8FF, 148239}, {0x2F900, 148273}, {0x2F901, 148307}, {0x2F902, 148341}, {0x2F903, 148375}, {0x2F904, 148409}, {0x2F905, 148443}, {0x2F906, 148477}, {0x2F907, 148511}, {0x2F908, 148545}, {0x2F909, 148579}, {0x2F90A, 148613}, {0x2F90B, 148647}, {0x2F90C, 148681}, {0x2F90D, 148715}, {0x2F90E, 148749}, {0x2F90F, 148783}, {0x2F910, 148817}, {0x2F911, 148851}, {0x2F912, 148885}, {0x2F913, 148919}, {0x2F914, 148953}, {0x2F915, 148987}, {0x2F916, 149021}, {0x2F917, 149055}, {0x2F918, 149089}, {0x2F919, 149123}, {0x2F91A, 149157}, {0x2F91B, 149191}, {0x2F91C, 149225}, {0x2F91D, 149259}, {0x2F91E, 149293}, {0x2F91F, 149327}, {0x2F920, 149361}, {0x2F921, 149395}, {0x2F922, 149429}, {0x2F923, 149463}, {0x2F924, 149497}, {0x2F925, 149531}, {0x2F926, 149565}, {0x2F927, 149599}, {0x2F928, 149633}, {0x2F929, 149667}, {0x2F92A, 149701}, {0x2F92B, 149735}, {0x2F92C, 149769}, {0x2F92D, 149803}, {0x2F92E, 149837}, {0x2F92F, 149871}, {0x2F930, 149905}, {0x2F931, 149939}, {0x2F932, 149973}, {0x2F933, 150007}, {0x2F934, 150041}, {0x2F935, 150075}, {0x2F936, 150109}, {0x2F937, 150143}, {0x2F938, 150177}, {0x2F939, 150211}, {0x2F93A, 150245}, {0x2F93B, 150279}, {0x2F93C, 150313}, {0x2F93D, 150347}, {0x2F93E, 150381}, {0x2F93F, 150415}, {0x2F940, 150449}, {0x2F941, 150483}, {0x2F942, 150517}, {0x2F943, 150551}, {0x2F944, 150585}, {0x2F945, 150619}, {0x2F946, 150653}, {0x2F947, 150687}, {0x2F948, 150721}, {0x2F949, 150755}, {0x2F94A, 150789}, {0x2F94B, 150823}, {0x2F94C, 150857}, {0x2F94D, 150891}, {0x2F94E, 150925}, {0x2F94F, 150959}, {0x2F950, 150993}, {0x2F951, 151027}, {0x2F952, 151061}, {0x2F953, 151095}, {0x2F954, 151129}, {0x2F955, 151163}, {0x2F956, 151197}, {0x2F957, 151231}, {0x2F958, 151265}, {0x2F959, 151299}, {0x2F95A, 151333}, {0x2F95B, 151367}, {0x2F95C, 151401}, {0x2F95D, 151435}, {0x2F95E, 151469}, {0x2F95F, 151503}, {0x2F960, 151537}, {0x2F961, 151571}, {0x2F962, 151605}, {0x2F963, 151639}, {0x2F964, 151673}, {0x2F965, 151707}, {0x2F966, 151741}, {0x2F967, 151775}, {0x2F968, 151809}, {0x2F969, 151843}, {0x2F96A, 151877}, {0x2F96B, 151911}, {0x2F96C, 151945}, {0x2F96D, 151979}, {0x2F96E, 152013}, {0x2F96F, 152047}, {0x2F970, 152081}, {0x2F971, 152115}, {0x2F972, 152149}, {0x2F973, 152183}, {0x2F974, 152217}, {0x2F975, 152251}, {0x2F976, 152285}, {0x2F977, 152319}, {0x2F978, 152353}, {0x2F979, 152387}, {0x2F97A, 152421}, {0x2F97B, 152455}, {0x2F97C, 152489}, {0x2F97D, 152523}, {0x2F97E, 152557}, {0x2F97F, 152591}, {0x2F980, 152625}, {0x2F981, 152659}, {0x2F982, 152693}, {0x2F983, 152727}, {0x2F984, 152761}, {0x2F985, 152795}, {0x2F986, 152829}, {0x2F987, 152863}, {0x2F988, 152897}, {0x2F989, 152931}, {0x2F98A, 152965}, {0x2F98B, 152999}, {0x2F98C, 153033}, {0x2F98D, 153067}, {0x2F98E, 153101}, {0x2F98F, 153135}, {0x2F990, 153169}, {0x2F991, 153203}, {0x2F992, 153237}, {0x2F993, 153271}, {0x2F994, 153305}, {0x2F995, 153339}, {0x2F996, 153373}, {0x2F997, 153407}, {0x2F998, 153441}, {0x2F999, 153475}, {0x2F99A, 153509}, {0x2F99B, 153543}, {0x2F99C, 153577}, {0x2F99D, 153611}, {0x2F99E, 153645}, {0x2F99F, 153679}, {0x2F9A0, 153713}, {0x2F9A1, 153747}, {0x2F9A2, 153781}, {0x2F9A3, 153815}, {0x2F9A4, 153849}, {0x2F9A5, 153883}, {0x2F9A6, 153917}, {0x2F9A7, 153951}, {0x2F9A8, 153985}, {0x2F9A9, 154019}, {0x2F9AA, 154053}, {0x2F9AB, 154087}, {0x2F9AC, 154121}, {0x2F9AD, 154155}, {0x2F9AE, 154189}, {0x2F9AF, 154223}, {0x2F9B0, 154257}, {0x2F9B1, 154291}, {0x2F9B2, 154325}, {0x2F9B3, 154359}, {0x2F9B4, 154393}, {0x2F9B5, 154427}, {0x2F9B6, 154461}, {0x2F9B7, 154495}, {0x2F9B8, 154529}, {0x2F9B9, 154563}, {0x2F9BA, 154597}, {0x2F9BB, 154631}, {0x2F9BC, 154665}, {0x2F9BD, 154699}, {0x2F9BE, 154733}, {0x2F9BF, 154767}, {0x2F9C0, 154801}, {0x2F9C1, 154835}, {0x2F9C2, 154869}, {0x2F9C3, 154903}, {0x2F9C4, 154937}, {0x2F9C5, 154971}, {0x2F9C6, 155005}, {0x2F9C7, 155039}, {0x2F9C8, 155073}, {0x2F9C9, 155107}, {0x2F9CA, 155141}, {0x2F9CB, 155175}, {0x2F9CC, 155209}, {0x2F9CD, 155243}, {0x2F9CE, 155277}, {0x2F9CF, 155311}, {0x2F9D0, 155345}, {0x2F9D1, 155379}, {0x2F9D2, 155413}, {0x2F9D3, 155447}, {0x2F9D4, 155481}, {0x2F9D5, 155515}, {0x2F9D6, 155549}, {0x2F9D7, 155583}, {0x2F9D8, 155617}, {0x2F9D9, 155651}, {0x2F9DA, 155685}, {0x2F9DB, 155719}, {0x2F9DC, 155753}, {0x2F9DD, 155787}, {0x2F9DE, 155821}, {0x2F9DF, 155855}, {0x2F9E0, 155889}, {0x2F9E1, 155923}, {0x2F9E2, 155957}, {0x2F9E3, 155991}, {0x2F9E4, 156025}, {0x2F9E5, 156059}, {0x2F9E6, 156093}, {0x2F9E7, 156127}, {0x2F9E8, 156161}, {0x2F9E9, 156195}, {0x2F9EA, 156229}, {0x2F9EB, 156263}, {0x2F9EC, 156297}, {0x2F9ED, 156331}, {0x2F9EE, 156365}, {0x2F9EF, 156399}, {0x2F9F0, 156433}, {0x2F9F1, 156467}, {0x2F9F2, 156501}, {0x2F9F3, 156535}, {0x2F9F4, 156569}, {0x2F9F5, 156603}, {0x2F9F6, 156637}, {0x2F9F7, 156671}, {0x2F9F8, 156705}, {0x2F9F9, 156739}, {0x2F9FA, 156773}, {0x2F9FB, 156807}, {0x2F9FC, 156841}, {0x2F9FD, 156875}, {0x2F9FE, 156909}, {0x2F9FF, 156943}, {0x2FA00, 156977}, {0x2FA01, 157011}, {0x2FA02, 157045}, {0x2FA03, 157079}, {0x2FA04, 157113}, {0x2FA05, 157147}, {0x2FA06, 157181}, {0x2FA07, 157215}, {0x2FA08, 157249}, {0x2FA09, 157283}, {0x2FA0A, 157317}, {0x2FA0B, 157351}, {0x2FA0C, 157385}, {0x2FA0D, 157419}, {0x2FA0E, 157453}, {0x2FA0F, 157487}, {0x2FA10, 157521}, {0x2FA11, 157555}, {0x2FA12, 157589}, {0x2FA13, 157623}, {0x2FA14, 157657}, {0x2FA15, 157691}, {0x2FA16, 157725}, {0x2FA17, 157759}, {0x2FA18, 157793}, {0x2FA19, 157827}, {0x2FA1A, 157861}, {0x2FA1B, 157895}, {0x2FA1C, 157929}, {0x2FA1D, 157963}, {0xE0001, 377441}, {0xE0020, 570776}, {0xE0021, 569032}, {0xE0022, 570640}, {0xE0023, 570575}, {0xE0024, 569000}, {0xE0025, 570591}, {0xE0026, 568748}, {0xE0027, 568762}, {0xE0028, 570498}, {0xE0029, 570703}, {0xE002A, 568777}, {0xE002B, 570608}, {0xE002C, 568822}, {0xE002D, 569106}, {0xE002E, 569053}, {0xE002F, 570764}, {0xE0030, 568985}, {0xE0031, 568911}, {0xE0032, 568971}, {0xE0033, 568955}, {0xE0034, 568881}, {0xE0035, 568866}, {0xE0036, 568941}, {0xE0037, 568925}, {0xE0038, 568850}, {0xE0039, 568896}, {0xE003A, 568812}, {0xE003B, 570750}, {0xE003C, 570543}, {0xE003D, 569016}, {0xE003E, 569084}, {0xE003F, 570622}, {0xE0040, 568832}, {0xE0041, 569123}, {0xE0042, 569150}, {0xE0043, 569177}, {0xE0044, 569204}, {0xE0045, 569231}, {0xE0046, 569258}, {0xE0047, 569285}, {0xE0048, 569312}, {0xE0049, 569339}, {0xE004A, 569366}, {0xE004B, 569393}, {0xE004C, 569420}, {0xE004D, 569447}, {0xE004E, 569474}, {0xE004F, 569501}, {0xE0050, 569528}, {0xE0051, 569555}, {0xE0052, 569582}, {0xE0053, 569609}, {0xE0054, 569636}, {0xE0055, 569663}, {0xE0056, 569690}, {0xE0057, 569717}, {0xE0058, 569744}, {0xE0059, 569771}, {0xE005A, 569798}, {0xE005B, 570519}, {0xE005C, 570659}, {0xE005D, 570725}, {0xE005E, 568790}, {0xE005F, 570562}, {0xE0060, 569067}, {0xE0061, 569825}, {0xE0062, 569850}, {0xE0063, 569875}, {0xE0064, 569900}, {0xE0065, 569925}, {0xE0066, 569950}, {0xE0067, 569975}, {0xE0068, 570000}, {0xE0069, 570025}, {0xE006A, 570050}, {0xE006B, 570075}, {0xE006C, 570100}, {0xE006D, 570125}, {0xE006E, 570150}, {0xE006F, 570175}, {0xE0070, 570200}, {0xE0071, 570225}, {0xE0072, 570250}, {0xE0073, 570275}, {0xE0074, 570300}, {0xE0075, 570325}, {0xE0076, 570350}, {0xE0077, 570375}, {0xE0078, 570400}, {0xE0079, 570425}, {0xE007A, 570450}, {0xE007B, 570475}, {0xE007C, 570796}, {0xE007D, 570679}, {0xE007E, 570786}, {0xE007F, 127704}, {0xE0100, 605114}, {0xE0101, 605366}, {0xE0102, 605618}, {0xE0103, 605891}, {0xE0104, 606143}, {0xE0105, 606395}, {0xE0106, 606647}, {0xE0107, 606899}, {0xE0108, 607151}, {0xE0109, 607334}, {0xE010A, 607356}, {0xE010B, 607378}, {0xE010C, 607400}, {0xE010D, 607443}, {0xE010E, 607465}, {0xE010F, 607487}, {0xE0110, 607509}, {0xE0111, 607531}, {0xE0112, 607553}, {0xE0113, 607575}, {0xE0114, 607597}, {0xE0115, 607619}, {0xE0116, 607641}, {0xE0117, 607684}, {0xE0118, 607706}, {0xE0119, 607728}, {0xE011A, 607750}, {0xE011B, 607772}, {0xE011C, 607794}, {0xE011D, 607816}, {0xE011E, 607838}, {0xE011F, 607860}, {0xE0120, 607882}, {0xE0121, 607925}, {0xE0122, 607947}, {0xE0123, 607969}, {0xE0124, 607991}, {0xE0125, 608013}, {0xE0126, 608035}, {0xE0127, 608057}, {0xE0128, 608079}, {0xE0129, 608101}, {0xE012A, 608123}, {0xE012B, 608166}, {0xE012C, 608188}, {0xE012D, 608210}, {0xE012E, 608232}, {0xE012F, 608254}, {0xE0130, 608276}, {0xE0131, 608298}, {0xE0132, 608320}, {0xE0133, 608342}, {0xE0134, 608364}, {0xE0135, 608407}, {0xE0136, 608429}, {0xE0137, 608451}, {0xE0138, 608473}, {0xE0139, 608495}, {0xE013A, 608517}, {0xE013B, 608539}, {0xE013C, 608561}, {0xE013D, 608583}, {0xE013E, 608605}, {0xE013F, 608648}, {0xE0140, 608670}, {0xE0141, 608692}, {0xE0142, 608714}, {0xE0143, 608736}, {0xE0144, 608758}, {0xE0145, 608780}, {0xE0146, 608802}, {0xE0147, 608824}, {0xE0148, 608846}, {0xE0149, 608889}, {0xE014A, 608911}, {0xE014B, 608933}, {0xE014C, 608955}, {0xE014D, 608977}, {0xE014E, 608999}, {0xE014F, 609021}, {0xE0150, 609043}, {0xE0151, 609065}, {0xE0152, 609087}, {0xE0153, 603372}, {0xE0154, 603395}, {0xE0155, 603418}, {0xE0156, 603441}, {0xE0157, 603464}, {0xE0158, 603487}, {0xE0159, 603510}, {0xE015A, 603533}, {0xE015B, 603556}, {0xE015C, 603579}, {0xE015D, 603624}, {0xE015E, 603647}, {0xE015F, 603670}, {0xE0160, 603693}, {0xE0161, 603716}, {0xE0162, 603739}, {0xE0163, 603762}, {0xE0164, 603785}, {0xE0165, 603808}, {0xE0166, 603831}, {0xE0167, 603876}, {0xE0168, 603899}, {0xE0169, 603922}, {0xE016A, 603945}, {0xE016B, 603968}, {0xE016C, 603991}, {0xE016D, 604014}, {0xE016E, 604037}, {0xE016F, 604060}, {0xE0170, 604083}, {0xE0171, 604128}, {0xE0172, 604151}, {0xE0173, 604174}, {0xE0174, 604197}, {0xE0175, 604220}, {0xE0176, 604243}, {0xE0177, 604266}, {0xE0178, 604289}, {0xE0179, 604312}, {0xE017A, 604335}, {0xE017B, 604380}, {0xE017C, 604403}, {0xE017D, 604426}, {0xE017E, 604449}, {0xE017F, 604472}, {0xE0180, 604495}, {0xE0181, 604518}, {0xE0182, 604541}, {0xE0183, 604564}, {0xE0184, 604587}, {0xE0185, 604632}, {0xE0186, 604655}, {0xE0187, 604678}, {0xE0188, 604701}, {0xE0189, 604724}, {0xE018A, 604747}, {0xE018B, 604770}, {0xE018C, 604793}, {0xE018D, 604816}, {0xE018E, 604839}, {0xE018F, 604884}, {0xE0190, 604907}, {0xE0191, 604930}, {0xE0192, 604953}, {0xE0193, 604976}, {0xE0194, 604999}, {0xE0195, 605022}, {0xE0196, 605045}, {0xE0197, 605068}, {0xE0198, 605091}, {0xE0199, 605136}, {0xE019A, 605159}, {0xE019B, 605182}, {0xE019C, 605205}, {0xE019D, 605228}, {0xE019E, 605251}, {0xE019F, 605274}, {0xE01A0, 605297}, {0xE01A1, 605320}, {0xE01A2, 605343}, {0xE01A3, 605388}, {0xE01A4, 605411}, {0xE01A5, 605434}, {0xE01A6, 605457}, {0xE01A7, 605480}, {0xE01A8, 605503}, {0xE01A9, 605526}, {0xE01AA, 605549}, {0xE01AB, 605572}, {0xE01AC, 605595}, {0xE01AD, 605640}, {0xE01AE, 605663}, {0xE01AF, 605686}, {0xE01B0, 605709}, {0xE01B1, 605732}, {0xE01B2, 605755}, {0xE01B3, 605778}, {0xE01B4, 605801}, {0xE01B5, 605824}, {0xE01B6, 605847}, {0xE01B7, 605913}, {0xE01B8, 605936}, {0xE01B9, 605959}, {0xE01BA, 605982}, {0xE01BB, 606005}, {0xE01BC, 606028}, {0xE01BD, 606051}, {0xE01BE, 606074}, {0xE01BF, 606097}, {0xE01C0, 606120}, {0xE01C1, 606165}, {0xE01C2, 606188}, {0xE01C3, 606211}, {0xE01C4, 606234}, {0xE01C5, 606257}, {0xE01C6, 606280}, {0xE01C7, 606303}, {0xE01C8, 606326}, {0xE01C9, 606349}, {0xE01CA, 606372}, {0xE01CB, 606417}, {0xE01CC, 606440}, {0xE01CD, 606463}, {0xE01CE, 606486}, {0xE01CF, 606509}, {0xE01D0, 606532}, {0xE01D1, 606555}, {0xE01D2, 606578}, {0xE01D3, 606601}, {0xE01D4, 606624}, {0xE01D5, 606669}, {0xE01D6, 606692}, {0xE01D7, 606715}, {0xE01D8, 606738}, {0xE01D9, 606761}, {0xE01DA, 606784}, {0xE01DB, 606807}, {0xE01DC, 606830}, {0xE01DD, 606853}, {0xE01DE, 606876}, {0xE01DF, 606921}, {0xE01E0, 606944}, {0xE01E1, 606967}, {0xE01E2, 606990}, {0xE01E3, 607013}, {0xE01E4, 607036}, {0xE01E5, 607059}, {0xE01E6, 607082}, {0xE01E7, 607105}, {0xE01E8, 607128}, {0xE01E9, 607173}, {0xE01EA, 607196}, {0xE01EB, 607219}, {0xE01EC, 607242}, {0xE01ED, 607265}, {0xE01EE, 607288}, {0xE01EF, 607311}, {0xF0000, 494}, {0xFFFFD, 524}, {0x100000, 553}, {0x10FFFD, 583} }; static const char * unicode_name_get_name(const UnicodeName *entry) { unsigned int offset = entry->name_offset; return unicode_names_strings + offset; } #endif /* #ifndef UNICODE_NAMES_H */ unicode-screensaver-0.5.1/version.h0000644000175000017500000000016512523334521014242 00000000000000#include "config.h" static const char screensaver_id[] = "@(#)" PACKAGE_STRING " (nodate), by " PACKAGE_BUGREPORT; unicode-screensaver-0.5.1/config.h.in0000644000175000017500000000336513306043307014433 00000000000000/* config.h.in. Generated from configure.ac by autoheader. */ /* Define this if gettimeofday() takes two arguments. */ #undef GETTIMEOFDAY_TWO_ARGS /* Define to 1 if you have the header file. */ #undef HAVE_DLFCN_H /* Define this if you have the gettimeofday function. */ #undef HAVE_GETTIMEOFDAY /* Define to 1 if you have the header file. */ #undef HAVE_INTTYPES_H /* Define to 1 if you have the header file. */ #undef HAVE_MEMORY_H /* Define to 1 if you have the header file. */ #undef HAVE_STDINT_H /* Define to 1 if you have the header file. */ #undef HAVE_STDLIB_H /* Define to 1 if you have the header file. */ #undef HAVE_STRINGS_H /* Define to 1 if you have the header file. */ #undef HAVE_STRING_H /* Define to 1 if you have the header file. */ #undef HAVE_SYS_STAT_H /* Define to 1 if you have the header file. */ #undef HAVE_SYS_TYPES_H /* Define to 1 if you have the header file. */ #undef HAVE_UNISTD_H /* Define to the sub-directory where libtool stores uninstalled libraries. */ #undef LT_OBJDIR /* Name of package */ #undef PACKAGE /* Define to the address where bug reports for this package should be sent. */ #undef PACKAGE_BUGREPORT /* Define to the full name of this package. */ #undef PACKAGE_NAME /* Define to the full name and version of this package. */ #undef PACKAGE_STRING /* Define to the one symbol short name of this package. */ #undef PACKAGE_TARNAME /* Define to the home page for this package. */ #undef PACKAGE_URL /* Define to the version of this package. */ #undef PACKAGE_VERSION /* Define to 1 if you have the ANSI C header files. */ #undef STDC_HEADERS /* Version number of package */ #undef VERSION unicode-screensaver-0.5.1/install-sh0000755000175000017500000003546313306043307014420 00000000000000#!/bin/sh # install - install a program, script, or datafile scriptversion=2014-09-12.12; # UTC # This originates from X11R5 (mit/util/scripts/install.sh), which was # later released in X11R6 (xc/config/util/install.sh) with the # following copyright and license. # # Copyright (C) 1994 X Consortium # # 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 # X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN # AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC- # TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # # Except as contained in this notice, the name of the X Consortium shall not # be used in advertising or otherwise to promote the sale, use or other deal- # ings in this Software without prior written authorization from the X Consor- # tium. # # # FSF changes to this file are in the public domain. # # Calling this script install-sh is preferred over install.sh, to prevent # 'make' implicit rules from creating a file called install from it # when there is no Makefile. # # This script is compatible with the BSD install script, but was written # from scratch. tab=' ' nl=' ' IFS=" $tab$nl" # Set DOITPROG to "echo" to test this script. doit=${DOITPROG-} doit_exec=${doit:-exec} # Put in absolute file names if you don't have them in your path; # or use environment vars. chgrpprog=${CHGRPPROG-chgrp} chmodprog=${CHMODPROG-chmod} chownprog=${CHOWNPROG-chown} cmpprog=${CMPPROG-cmp} cpprog=${CPPROG-cp} mkdirprog=${MKDIRPROG-mkdir} mvprog=${MVPROG-mv} rmprog=${RMPROG-rm} stripprog=${STRIPPROG-strip} posix_mkdir= # Desired mode of installed file. mode=0755 chgrpcmd= chmodcmd=$chmodprog chowncmd= mvcmd=$mvprog rmcmd="$rmprog -f" stripcmd= src= dst= dir_arg= dst_arg= copy_on_change=false is_target_a_directory=possibly usage="\ Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE or: $0 [OPTION]... SRCFILES... DIRECTORY or: $0 [OPTION]... -t DIRECTORY SRCFILES... or: $0 [OPTION]... -d DIRECTORIES... In the 1st form, copy SRCFILE to DSTFILE. In the 2nd and 3rd, copy all SRCFILES to DIRECTORY. In the 4th, create DIRECTORIES. Options: --help display this help and exit. --version display version info and exit. -c (ignored) -C install only if different (preserve the last data modification time) -d create directories instead of installing files. -g GROUP $chgrpprog installed files to GROUP. -m MODE $chmodprog installed files to MODE. -o USER $chownprog installed files to USER. -s $stripprog installed files. -t DIRECTORY install into DIRECTORY. -T report an error if DSTFILE is a directory. Environment variables override the default commands: CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG RMPROG STRIPPROG " while test $# -ne 0; do case $1 in -c) ;; -C) copy_on_change=true;; -d) dir_arg=true;; -g) chgrpcmd="$chgrpprog $2" shift;; --help) echo "$usage"; exit $?;; -m) mode=$2 case $mode in *' '* | *"$tab"* | *"$nl"* | *'*'* | *'?'* | *'['*) echo "$0: invalid mode: $mode" >&2 exit 1;; esac shift;; -o) chowncmd="$chownprog $2" shift;; -s) stripcmd=$stripprog;; -t) is_target_a_directory=always dst_arg=$2 # Protect names problematic for 'test' and other utilities. case $dst_arg in -* | [=\(\)!]) dst_arg=./$dst_arg;; esac shift;; -T) is_target_a_directory=never;; --version) echo "$0 $scriptversion"; exit $?;; --) shift break;; -*) echo "$0: invalid option: $1" >&2 exit 1;; *) break;; esac shift done # We allow the use of options -d and -T together, by making -d # take the precedence; this is for compatibility with GNU install. if test -n "$dir_arg"; then if test -n "$dst_arg"; then echo "$0: target directory not allowed when installing a directory." >&2 exit 1 fi fi if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then # When -d is used, all remaining arguments are directories to create. # When -t is used, the destination is already specified. # Otherwise, the last argument is the destination. Remove it from $@. for arg do if test -n "$dst_arg"; then # $@ is not empty: it contains at least $arg. set fnord "$@" "$dst_arg" shift # fnord fi shift # arg dst_arg=$arg # Protect names problematic for 'test' and other utilities. case $dst_arg in -* | [=\(\)!]) dst_arg=./$dst_arg;; esac done fi if test $# -eq 0; then if test -z "$dir_arg"; then echo "$0: no input file specified." >&2 exit 1 fi # It's OK to call 'install-sh -d' without argument. # This can happen when creating conditional directories. exit 0 fi if test -z "$dir_arg"; then if test $# -gt 1 || test "$is_target_a_directory" = always; then if test ! -d "$dst_arg"; then echo "$0: $dst_arg: Is not a directory." >&2 exit 1 fi fi fi if test -z "$dir_arg"; then do_exit='(exit $ret); exit $ret' trap "ret=129; $do_exit" 1 trap "ret=130; $do_exit" 2 trap "ret=141; $do_exit" 13 trap "ret=143; $do_exit" 15 # Set umask so as not to create temps with too-generous modes. # However, 'strip' requires both read and write access to temps. case $mode in # Optimize common cases. *644) cp_umask=133;; *755) cp_umask=22;; *[0-7]) if test -z "$stripcmd"; then u_plus_rw= else u_plus_rw='% 200' fi cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;; *) if test -z "$stripcmd"; then u_plus_rw= else u_plus_rw=,u+rw fi cp_umask=$mode$u_plus_rw;; esac fi for src do # Protect names problematic for 'test' and other utilities. case $src in -* | [=\(\)!]) src=./$src;; esac if test -n "$dir_arg"; then dst=$src dstdir=$dst test -d "$dstdir" dstdir_status=$? else # Waiting for this to be detected by the "$cpprog $src $dsttmp" command # might cause directories to be created, which would be especially bad # if $src (and thus $dsttmp) contains '*'. if test ! -f "$src" && test ! -d "$src"; then echo "$0: $src does not exist." >&2 exit 1 fi if test -z "$dst_arg"; then echo "$0: no destination specified." >&2 exit 1 fi dst=$dst_arg # If destination is a directory, append the input filename; won't work # if double slashes aren't ignored. if test -d "$dst"; then if test "$is_target_a_directory" = never; then echo "$0: $dst_arg: Is a directory" >&2 exit 1 fi dstdir=$dst dst=$dstdir/`basename "$src"` dstdir_status=0 else dstdir=`dirname "$dst"` test -d "$dstdir" dstdir_status=$? fi fi obsolete_mkdir_used=false if test $dstdir_status != 0; then case $posix_mkdir in '') # Create intermediate dirs using mode 755 as modified by the umask. # This is like FreeBSD 'install' as of 1997-10-28. umask=`umask` case $stripcmd.$umask in # Optimize common cases. *[2367][2367]) mkdir_umask=$umask;; .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;; *[0-7]) mkdir_umask=`expr $umask + 22 \ - $umask % 100 % 40 + $umask % 20 \ - $umask % 10 % 4 + $umask % 2 `;; *) mkdir_umask=$umask,go-w;; esac # With -d, create the new directory with the user-specified mode. # Otherwise, rely on $mkdir_umask. if test -n "$dir_arg"; then mkdir_mode=-m$mode else mkdir_mode= fi posix_mkdir=false case $umask in *[123567][0-7][0-7]) # POSIX mkdir -p sets u+wx bits regardless of umask, which # is incompatible with FreeBSD 'install' when (umask & 300) != 0. ;; *) # $RANDOM is not portable (e.g. dash); use it when possible to # lower collision chance tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$ trap 'ret=$?; rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null; exit $ret' 0 # As "mkdir -p" follows symlinks and we work in /tmp possibly; so # create the $tmpdir first (and fail if unsuccessful) to make sure # that nobody tries to guess the $tmpdir name. if (umask $mkdir_umask && $mkdirprog $mkdir_mode "$tmpdir" && exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1 then if test -z "$dir_arg" || { # Check for POSIX incompatibilities with -m. # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or # other-writable bit of parent directory when it shouldn't. # FreeBSD 6.1 mkdir -m -p sets mode of existing directory. test_tmpdir="$tmpdir/a" ls_ld_tmpdir=`ls -ld "$test_tmpdir"` case $ls_ld_tmpdir in d????-?r-*) different_mode=700;; d????-?--*) different_mode=755;; *) false;; esac && $mkdirprog -m$different_mode -p -- "$test_tmpdir" && { ls_ld_tmpdir_1=`ls -ld "$test_tmpdir"` test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1" } } then posix_mkdir=: fi rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" else # Remove any dirs left behind by ancient mkdir implementations. rmdir ./$mkdir_mode ./-p ./-- "$tmpdir" 2>/dev/null fi trap '' 0;; esac;; esac if $posix_mkdir && ( umask $mkdir_umask && $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir" ) then : else # The umask is ridiculous, or mkdir does not conform to POSIX, # or it failed possibly due to a race condition. Create the # directory the slow way, step by step, checking for races as we go. case $dstdir in /*) prefix='/';; [-=\(\)!]*) prefix='./';; *) prefix='';; esac oIFS=$IFS IFS=/ set -f set fnord $dstdir shift set +f IFS=$oIFS prefixes= for d do test X"$d" = X && continue prefix=$prefix$d if test -d "$prefix"; then prefixes= else if $posix_mkdir; then (umask=$mkdir_umask && $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break # Don't fail if two instances are running concurrently. test -d "$prefix" || exit 1 else case $prefix in *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;; *) qprefix=$prefix;; esac prefixes="$prefixes '$qprefix'" fi fi prefix=$prefix/ done if test -n "$prefixes"; then # Don't fail if two instances are running concurrently. (umask $mkdir_umask && eval "\$doit_exec \$mkdirprog $prefixes") || test -d "$dstdir" || exit 1 obsolete_mkdir_used=true fi fi fi if test -n "$dir_arg"; then { test -z "$chowncmd" || $doit $chowncmd "$dst"; } && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } && { test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false || test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1 else # Make a couple of temp file names in the proper directory. dsttmp=$dstdir/_inst.$$_ rmtmp=$dstdir/_rm.$$_ # Trap to clean up those temp files at exit. trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0 # Copy the file name to the temp name. (umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") && # and set any options; do chmod last to preserve setuid bits. # # If any of these fail, we abort the whole thing. If we want to # ignore errors from any of these, just make sure not to ignore # errors from the above "$doit $cpprog $src $dsttmp" command. # { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } && { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } && { test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } && # If -C, don't bother to copy if it wouldn't change the file. if $copy_on_change && old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` && new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` && set -f && set X $old && old=:$2:$4:$5:$6 && set X $new && new=:$2:$4:$5:$6 && set +f && test "$old" = "$new" && $cmpprog "$dst" "$dsttmp" >/dev/null 2>&1 then rm -f "$dsttmp" else # Rename the file to the real destination. $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null || # The rename failed, perhaps because mv can't rename something else # to itself, or perhaps because mv is so ancient that it does not # support -f. { # Now remove or move aside any old file at destination location. # We try this two ways since rm can't unlink itself on some # systems and the destination file might be busy for other # reasons. In this case, the final cleanup might fail but the new # file should still install successfully. { test ! -f "$dst" || $doit $rmcmd -f "$dst" 2>/dev/null || { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null && { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; } } || { echo "$0: cannot unlink or rename $dst" >&2 (exit 1); exit 1 } } && # Now rename the file to the real destination. $doit $mvcmd "$dsttmp" "$dst" } fi || exit 1 trap '' 0 fi done # Local variables: # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-time-zone: "UTC" # time-stamp-end: "; # UTC" # End: unicode-screensaver-0.5.1/unicode.xml0000644000175000017500000001610012523334521014550 00000000000000
<_description> Repeatedly randomly picks an unicode character and displays it in a very large font size together with its unicode code point and the character name. Written by Joachim Breitner; 2009.
unicode-screensaver-0.5.1/unicode.desktop.in0000644000175000017500000000057212523334521016034 00000000000000[Desktop Entry] Name=Unicode Exec=@hackexecdir@/unicode -root TryExec=@hackexecdir@/unicode Comment=Repeatedly randomly picks an unicode character and displays it in a very large font size together with its unicode code point and the character name. Written by Joachim Breitner; 2009. StartupNotify=false Terminal=false Type=Application Categories=Screensaver OnlyShowIn=GNOME; unicode-screensaver-0.5.1/ltmain.sh0000644000175000017500000117147413306043305014236 00000000000000#! /bin/sh ## DO NOT EDIT - This file generated from ./build-aux/ltmain.in ## by inline-source v2014-01-03.01 # libtool (GNU libtool) 2.4.6 # Provide generalized library-building support services. # Written by Gordon Matzigkeit , 1996 # Copyright (C) 1996-2015 Free Software Foundation, Inc. # This is free software; see the source for copying conditions. There is NO # warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. # GNU Libtool is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # As a special exception to the GNU General Public License, # if you distribute this file as part of a program or library that # is built using GNU Libtool, you may include this file under the # same distribution terms that you use for the rest of that program. # # GNU Libtool is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see . PROGRAM=libtool PACKAGE=libtool VERSION="2.4.6 Debian-2.4.6-2" package_revision=2.4.6 ## ------ ## ## Usage. ## ## ------ ## # Run './libtool --help' for help with using this script from the # command line. ## ------------------------------- ## ## User overridable command paths. ## ## ------------------------------- ## # After configure completes, it has a better idea of some of the # shell tools we need than the defaults used by the functions shared # with bootstrap, so set those here where they can still be over- # ridden by the user, but otherwise take precedence. : ${AUTOCONF="autoconf"} : ${AUTOMAKE="automake"} ## -------------------------- ## ## Source external libraries. ## ## -------------------------- ## # Much of our low-level functionality needs to be sourced from external # libraries, which are installed to $pkgauxdir. # Set a version string for this script. scriptversion=2015-01-20.17; # UTC # General shell script boiler plate, and helper functions. # Written by Gary V. Vaughan, 2004 # Copyright (C) 2004-2015 Free Software Foundation, Inc. # This is free software; see the source for copying conditions. There is NO # warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 3 of the License, or # (at your option) any later version. # As a special exception to the GNU General Public License, if you distribute # this file as part of a program or library that is built using GNU Libtool, # you may include this file under the same distribution terms that you use # for the rest of that program. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNES FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # You should have received a copy of the GNU General Public License # along with this program. If not, see . # Please report bugs or propose patches to gary@gnu.org. ## ------ ## ## Usage. ## ## ------ ## # Evaluate this file near the top of your script to gain access to # the functions and variables defined here: # # . `echo "$0" | ${SED-sed} 's|[^/]*$||'`/build-aux/funclib.sh # # If you need to override any of the default environment variable # settings, do that before evaluating this file. ## -------------------- ## ## Shell normalisation. ## ## -------------------- ## # Some shells need a little help to be as Bourne compatible as possible. # Before doing anything else, make sure all that help has been provided! DUALCASE=1; export DUALCASE # for MKS sh if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : emulate sh NULLCMD=: # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' setopt NO_GLOB_SUBST else case `(set -o) 2>/dev/null` in *posix*) set -o posix ;; esac fi # NLS nuisances: We save the old values in case they are required later. _G_user_locale= _G_safe_locale= for _G_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES do eval "if test set = \"\${$_G_var+set}\"; then save_$_G_var=\$$_G_var $_G_var=C export $_G_var _G_user_locale=\"$_G_var=\\\$save_\$_G_var; \$_G_user_locale\" _G_safe_locale=\"$_G_var=C; \$_G_safe_locale\" fi" done # CDPATH. (unset CDPATH) >/dev/null 2>&1 && unset CDPATH # Make sure IFS has a sensible default sp=' ' nl=' ' IFS="$sp $nl" # There are apparently some retarded systems that use ';' as a PATH separator! if test "${PATH_SEPARATOR+set}" != set; then PATH_SEPARATOR=: (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || PATH_SEPARATOR=';' } fi ## ------------------------- ## ## Locate command utilities. ## ## ------------------------- ## # func_executable_p FILE # ---------------------- # Check that FILE is an executable regular file. func_executable_p () { test -f "$1" && test -x "$1" } # func_path_progs PROGS_LIST CHECK_FUNC [PATH] # -------------------------------------------- # Search for either a program that responds to --version with output # containing "GNU", or else returned by CHECK_FUNC otherwise, by # trying all the directories in PATH with each of the elements of # PROGS_LIST. # # CHECK_FUNC should accept the path to a candidate program, and # set $func_check_prog_result if it truncates its output less than # $_G_path_prog_max characters. func_path_progs () { _G_progs_list=$1 _G_check_func=$2 _G_PATH=${3-"$PATH"} _G_path_prog_max=0 _G_path_prog_found=false _G_save_IFS=$IFS; IFS=${PATH_SEPARATOR-:} for _G_dir in $_G_PATH; do IFS=$_G_save_IFS test -z "$_G_dir" && _G_dir=. for _G_prog_name in $_G_progs_list; do for _exeext in '' .EXE; do _G_path_prog=$_G_dir/$_G_prog_name$_exeext func_executable_p "$_G_path_prog" || continue case `"$_G_path_prog" --version 2>&1` in *GNU*) func_path_progs_result=$_G_path_prog _G_path_prog_found=: ;; *) $_G_check_func $_G_path_prog func_path_progs_result=$func_check_prog_result ;; esac $_G_path_prog_found && break 3 done done done IFS=$_G_save_IFS test -z "$func_path_progs_result" && { echo "no acceptable sed could be found in \$PATH" >&2 exit 1 } } # We want to be able to use the functions in this file before configure # has figured out where the best binaries are kept, which means we have # to search for them ourselves - except when the results are already set # where we skip the searches. # Unless the user overrides by setting SED, search the path for either GNU # sed, or the sed that truncates its output the least. test -z "$SED" && { _G_sed_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/ for _G_i in 1 2 3 4 5 6 7; do _G_sed_script=$_G_sed_script$nl$_G_sed_script done echo "$_G_sed_script" 2>/dev/null | sed 99q >conftest.sed _G_sed_script= func_check_prog_sed () { _G_path_prog=$1 _G_count=0 printf 0123456789 >conftest.in while : do cat conftest.in conftest.in >conftest.tmp mv conftest.tmp conftest.in cp conftest.in conftest.nl echo '' >> conftest.nl "$_G_path_prog" -f conftest.sed conftest.out 2>/dev/null || break diff conftest.out conftest.nl >/dev/null 2>&1 || break _G_count=`expr $_G_count + 1` if test "$_G_count" -gt "$_G_path_prog_max"; then # Best one so far, save it but keep looking for a better one func_check_prog_result=$_G_path_prog _G_path_prog_max=$_G_count fi # 10*(2^10) chars as input seems more than enough test 10 -lt "$_G_count" && break done rm -f conftest.in conftest.tmp conftest.nl conftest.out } func_path_progs "sed gsed" func_check_prog_sed $PATH:/usr/xpg4/bin rm -f conftest.sed SED=$func_path_progs_result } # Unless the user overrides by setting GREP, search the path for either GNU # grep, or the grep that truncates its output the least. test -z "$GREP" && { func_check_prog_grep () { _G_path_prog=$1 _G_count=0 _G_path_prog_max=0 printf 0123456789 >conftest.in while : do cat conftest.in conftest.in >conftest.tmp mv conftest.tmp conftest.in cp conftest.in conftest.nl echo 'GREP' >> conftest.nl "$_G_path_prog" -e 'GREP$' -e '-(cannot match)-' conftest.out 2>/dev/null || break diff conftest.out conftest.nl >/dev/null 2>&1 || break _G_count=`expr $_G_count + 1` if test "$_G_count" -gt "$_G_path_prog_max"; then # Best one so far, save it but keep looking for a better one func_check_prog_result=$_G_path_prog _G_path_prog_max=$_G_count fi # 10*(2^10) chars as input seems more than enough test 10 -lt "$_G_count" && break done rm -f conftest.in conftest.tmp conftest.nl conftest.out } func_path_progs "grep ggrep" func_check_prog_grep $PATH:/usr/xpg4/bin GREP=$func_path_progs_result } ## ------------------------------- ## ## User overridable command paths. ## ## ------------------------------- ## # All uppercase variable names are used for environment variables. These # variables can be overridden by the user before calling a script that # uses them if a suitable command of that name is not already available # in the command search PATH. : ${CP="cp -f"} : ${ECHO="printf %s\n"} : ${EGREP="$GREP -E"} : ${FGREP="$GREP -F"} : ${LN_S="ln -s"} : ${MAKE="make"} : ${MKDIR="mkdir"} : ${MV="mv -f"} : ${RM="rm -f"} : ${SHELL="${CONFIG_SHELL-/bin/sh}"} ## -------------------- ## ## Useful sed snippets. ## ## -------------------- ## sed_dirname='s|/[^/]*$||' sed_basename='s|^.*/||' # Sed substitution that helps us do robust quoting. It backslashifies # metacharacters that are still active within double-quoted strings. sed_quote_subst='s|\([`"$\\]\)|\\\1|g' # Same as above, but do not quote variable references. sed_double_quote_subst='s/\(["`\\]\)/\\\1/g' # Sed substitution that turns a string into a regex matching for the # string literally. sed_make_literal_regex='s|[].[^$\\*\/]|\\&|g' # Sed substitution that converts a w32 file name or path # that contains forward slashes, into one that contains # (escaped) backslashes. A very naive implementation. sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g' # Re-'\' parameter expansions in output of sed_double_quote_subst that # were '\'-ed in input to the same. If an odd number of '\' preceded a # '$' in input to sed_double_quote_subst, that '$' was protected from # expansion. Since each input '\' is now two '\'s, look for any number # of runs of four '\'s followed by two '\'s and then a '$'. '\' that '$'. _G_bs='\\' _G_bs2='\\\\' _G_bs4='\\\\\\\\' _G_dollar='\$' sed_double_backslash="\ s/$_G_bs4/&\\ /g s/^$_G_bs2$_G_dollar/$_G_bs&/ s/\\([^$_G_bs]\\)$_G_bs2$_G_dollar/\\1$_G_bs2$_G_bs$_G_dollar/g s/\n//g" ## ----------------- ## ## Global variables. ## ## ----------------- ## # Except for the global variables explicitly listed below, the following # functions in the '^func_' namespace, and the '^require_' namespace # variables initialised in the 'Resource management' section, sourcing # this file will not pollute your global namespace with anything # else. There's no portable way to scope variables in Bourne shell # though, so actually running these functions will sometimes place # results into a variable named after the function, and often use # temporary variables in the '^_G_' namespace. If you are careful to # avoid using those namespaces casually in your sourcing script, things # should continue to work as you expect. And, of course, you can freely # overwrite any of the functions or variables defined here before # calling anything to customize them. EXIT_SUCCESS=0 EXIT_FAILURE=1 EXIT_MISMATCH=63 # $? = 63 is used to indicate version mismatch to missing. EXIT_SKIP=77 # $? = 77 is used to indicate a skipped test to automake. # Allow overriding, eg assuming that you follow the convention of # putting '$debug_cmd' at the start of all your functions, you can get # bash to show function call trace with: # # debug_cmd='eval echo "${FUNCNAME[0]} $*" >&2' bash your-script-name debug_cmd=${debug_cmd-":"} exit_cmd=: # By convention, finish your script with: # # exit $exit_status # # so that you can set exit_status to non-zero if you want to indicate # something went wrong during execution without actually bailing out at # the point of failure. exit_status=$EXIT_SUCCESS # Work around backward compatibility issue on IRIX 6.5. On IRIX 6.4+, sh # is ksh but when the shell is invoked as "sh" and the current value of # the _XPG environment variable is not equal to 1 (one), the special # positional parameter $0, within a function call, is the name of the # function. progpath=$0 # The name of this program. progname=`$ECHO "$progpath" |$SED "$sed_basename"` # Make sure we have an absolute progpath for reexecution: case $progpath in [\\/]*|[A-Za-z]:\\*) ;; *[\\/]*) progdir=`$ECHO "$progpath" |$SED "$sed_dirname"` progdir=`cd "$progdir" && pwd` progpath=$progdir/$progname ;; *) _G_IFS=$IFS IFS=${PATH_SEPARATOR-:} for progdir in $PATH; do IFS=$_G_IFS test -x "$progdir/$progname" && break done IFS=$_G_IFS test -n "$progdir" || progdir=`pwd` progpath=$progdir/$progname ;; esac ## ----------------- ## ## Standard options. ## ## ----------------- ## # The following options affect the operation of the functions defined # below, and should be set appropriately depending on run-time para- # meters passed on the command line. opt_dry_run=false opt_quiet=false opt_verbose=false # Categories 'all' and 'none' are always available. Append any others # you will pass as the first argument to func_warning from your own # code. warning_categories= # By default, display warnings according to 'opt_warning_types'. Set # 'warning_func' to ':' to elide all warnings, or func_fatal_error to # treat the next displayed warning as a fatal error. warning_func=func_warn_and_continue # Set to 'all' to display all warnings, 'none' to suppress all # warnings, or a space delimited list of some subset of # 'warning_categories' to display only the listed warnings. opt_warning_types=all ## -------------------- ## ## Resource management. ## ## -------------------- ## # This section contains definitions for functions that each ensure a # particular resource (a file, or a non-empty configuration variable for # example) is available, and if appropriate to extract default values # from pertinent package files. Call them using their associated # 'require_*' variable to ensure that they are executed, at most, once. # # It's entirely deliberate that calling these functions can set # variables that don't obey the namespace limitations obeyed by the rest # of this file, in order that that they be as useful as possible to # callers. # require_term_colors # ------------------- # Allow display of bold text on terminals that support it. require_term_colors=func_require_term_colors func_require_term_colors () { $debug_cmd test -t 1 && { # COLORTERM and USE_ANSI_COLORS environment variables take # precedence, because most terminfo databases neglect to describe # whether color sequences are supported. test -n "${COLORTERM+set}" && : ${USE_ANSI_COLORS="1"} if test 1 = "$USE_ANSI_COLORS"; then # Standard ANSI escape sequences tc_reset='' tc_bold=''; tc_standout='' tc_red=''; tc_green='' tc_blue=''; tc_cyan='' else # Otherwise trust the terminfo database after all. test -n "`tput sgr0 2>/dev/null`" && { tc_reset=`tput sgr0` test -n "`tput bold 2>/dev/null`" && tc_bold=`tput bold` tc_standout=$tc_bold test -n "`tput smso 2>/dev/null`" && tc_standout=`tput smso` test -n "`tput setaf 1 2>/dev/null`" && tc_red=`tput setaf 1` test -n "`tput setaf 2 2>/dev/null`" && tc_green=`tput setaf 2` test -n "`tput setaf 4 2>/dev/null`" && tc_blue=`tput setaf 4` test -n "`tput setaf 5 2>/dev/null`" && tc_cyan=`tput setaf 5` } fi } require_term_colors=: } ## ----------------- ## ## Function library. ## ## ----------------- ## # This section contains a variety of useful functions to call in your # scripts. Take note of the portable wrappers for features provided by # some modern shells, which will fall back to slower equivalents on # less featureful shells. # func_append VAR VALUE # --------------------- # Append VALUE onto the existing contents of VAR. # We should try to minimise forks, especially on Windows where they are # unreasonably slow, so skip the feature probes when bash or zsh are # being used: if test set = "${BASH_VERSION+set}${ZSH_VERSION+set}"; then : ${_G_HAVE_ARITH_OP="yes"} : ${_G_HAVE_XSI_OPS="yes"} # The += operator was introduced in bash 3.1 case $BASH_VERSION in [12].* | 3.0 | 3.0*) ;; *) : ${_G_HAVE_PLUSEQ_OP="yes"} ;; esac fi # _G_HAVE_PLUSEQ_OP # Can be empty, in which case the shell is probed, "yes" if += is # useable or anything else if it does not work. test -z "$_G_HAVE_PLUSEQ_OP" \ && (eval 'x=a; x+=" b"; test "a b" = "$x"') 2>/dev/null \ && _G_HAVE_PLUSEQ_OP=yes if test yes = "$_G_HAVE_PLUSEQ_OP" then # This is an XSI compatible shell, allowing a faster implementation... eval 'func_append () { $debug_cmd eval "$1+=\$2" }' else # ...otherwise fall back to using expr, which is often a shell builtin. func_append () { $debug_cmd eval "$1=\$$1\$2" } fi # func_append_quoted VAR VALUE # ---------------------------- # Quote VALUE and append to the end of shell variable VAR, separated # by a space. if test yes = "$_G_HAVE_PLUSEQ_OP"; then eval 'func_append_quoted () { $debug_cmd func_quote_for_eval "$2" eval "$1+=\\ \$func_quote_for_eval_result" }' else func_append_quoted () { $debug_cmd func_quote_for_eval "$2" eval "$1=\$$1\\ \$func_quote_for_eval_result" } fi # func_append_uniq VAR VALUE # -------------------------- # Append unique VALUE onto the existing contents of VAR, assuming # entries are delimited by the first character of VALUE. For example: # # func_append_uniq options " --another-option option-argument" # # will only append to $options if " --another-option option-argument " # is not already present somewhere in $options already (note spaces at # each end implied by leading space in second argument). func_append_uniq () { $debug_cmd eval _G_current_value='`$ECHO $'$1'`' _G_delim=`expr "$2" : '\(.\)'` case $_G_delim$_G_current_value$_G_delim in *"$2$_G_delim"*) ;; *) func_append "$@" ;; esac } # func_arith TERM... # ------------------ # Set func_arith_result to the result of evaluating TERMs. test -z "$_G_HAVE_ARITH_OP" \ && (eval 'test 2 = $(( 1 + 1 ))') 2>/dev/null \ && _G_HAVE_ARITH_OP=yes if test yes = "$_G_HAVE_ARITH_OP"; then eval 'func_arith () { $debug_cmd func_arith_result=$(( $* )) }' else func_arith () { $debug_cmd func_arith_result=`expr "$@"` } fi # func_basename FILE # ------------------ # Set func_basename_result to FILE with everything up to and including # the last / stripped. if test yes = "$_G_HAVE_XSI_OPS"; then # If this shell supports suffix pattern removal, then use it to avoid # forking. Hide the definitions single quotes in case the shell chokes # on unsupported syntax... _b='func_basename_result=${1##*/}' _d='case $1 in */*) func_dirname_result=${1%/*}$2 ;; * ) func_dirname_result=$3 ;; esac' else # ...otherwise fall back to using sed. _b='func_basename_result=`$ECHO "$1" |$SED "$sed_basename"`' _d='func_dirname_result=`$ECHO "$1" |$SED "$sed_dirname"` if test "X$func_dirname_result" = "X$1"; then func_dirname_result=$3 else func_append func_dirname_result "$2" fi' fi eval 'func_basename () { $debug_cmd '"$_b"' }' # func_dirname FILE APPEND NONDIR_REPLACEMENT # ------------------------------------------- # Compute the dirname of FILE. If nonempty, add APPEND to the result, # otherwise set result to NONDIR_REPLACEMENT. eval 'func_dirname () { $debug_cmd '"$_d"' }' # func_dirname_and_basename FILE APPEND NONDIR_REPLACEMENT # -------------------------------------------------------- # Perform func_basename and func_dirname in a single function # call: # dirname: Compute the dirname of FILE. If nonempty, # add APPEND to the result, otherwise set result # to NONDIR_REPLACEMENT. # value returned in "$func_dirname_result" # basename: Compute filename of FILE. # value retuned in "$func_basename_result" # For efficiency, we do not delegate to the functions above but instead # duplicate the functionality here. eval 'func_dirname_and_basename () { $debug_cmd '"$_b"' '"$_d"' }' # func_echo ARG... # ---------------- # Echo program name prefixed message. func_echo () { $debug_cmd _G_message=$* func_echo_IFS=$IFS IFS=$nl for _G_line in $_G_message; do IFS=$func_echo_IFS $ECHO "$progname: $_G_line" done IFS=$func_echo_IFS } # func_echo_all ARG... # -------------------- # Invoke $ECHO with all args, space-separated. func_echo_all () { $ECHO "$*" } # func_echo_infix_1 INFIX ARG... # ------------------------------ # Echo program name, followed by INFIX on the first line, with any # additional lines not showing INFIX. func_echo_infix_1 () { $debug_cmd $require_term_colors _G_infix=$1; shift _G_indent=$_G_infix _G_prefix="$progname: $_G_infix: " _G_message=$* # Strip color escape sequences before counting printable length for _G_tc in "$tc_reset" "$tc_bold" "$tc_standout" "$tc_red" "$tc_green" "$tc_blue" "$tc_cyan" do test -n "$_G_tc" && { _G_esc_tc=`$ECHO "$_G_tc" | $SED "$sed_make_literal_regex"` _G_indent=`$ECHO "$_G_indent" | $SED "s|$_G_esc_tc||g"` } done _G_indent="$progname: "`echo "$_G_indent" | $SED 's|.| |g'`" " ## exclude from sc_prohibit_nested_quotes func_echo_infix_1_IFS=$IFS IFS=$nl for _G_line in $_G_message; do IFS=$func_echo_infix_1_IFS $ECHO "$_G_prefix$tc_bold$_G_line$tc_reset" >&2 _G_prefix=$_G_indent done IFS=$func_echo_infix_1_IFS } # func_error ARG... # ----------------- # Echo program name prefixed message to standard error. func_error () { $debug_cmd $require_term_colors func_echo_infix_1 " $tc_standout${tc_red}error$tc_reset" "$*" >&2 } # func_fatal_error ARG... # ----------------------- # Echo program name prefixed message to standard error, and exit. func_fatal_error () { $debug_cmd func_error "$*" exit $EXIT_FAILURE } # func_grep EXPRESSION FILENAME # ----------------------------- # Check whether EXPRESSION matches any line of FILENAME, without output. func_grep () { $debug_cmd $GREP "$1" "$2" >/dev/null 2>&1 } # func_len STRING # --------------- # Set func_len_result to the length of STRING. STRING may not # start with a hyphen. test -z "$_G_HAVE_XSI_OPS" \ && (eval 'x=a/b/c; test 5aa/bb/cc = "${#x}${x%%/*}${x%/*}${x#*/}${x##*/}"') 2>/dev/null \ && _G_HAVE_XSI_OPS=yes if test yes = "$_G_HAVE_XSI_OPS"; then eval 'func_len () { $debug_cmd func_len_result=${#1} }' else func_len () { $debug_cmd func_len_result=`expr "$1" : ".*" 2>/dev/null || echo $max_cmd_len` } fi # func_mkdir_p DIRECTORY-PATH # --------------------------- # Make sure the entire path to DIRECTORY-PATH is available. func_mkdir_p () { $debug_cmd _G_directory_path=$1 _G_dir_list= if test -n "$_G_directory_path" && test : != "$opt_dry_run"; then # Protect directory names starting with '-' case $_G_directory_path in -*) _G_directory_path=./$_G_directory_path ;; esac # While some portion of DIR does not yet exist... while test ! -d "$_G_directory_path"; do # ...make a list in topmost first order. Use a colon delimited # list incase some portion of path contains whitespace. _G_dir_list=$_G_directory_path:$_G_dir_list # If the last portion added has no slash in it, the list is done case $_G_directory_path in */*) ;; *) break ;; esac # ...otherwise throw away the child directory and loop _G_directory_path=`$ECHO "$_G_directory_path" | $SED -e "$sed_dirname"` done _G_dir_list=`$ECHO "$_G_dir_list" | $SED 's|:*$||'` func_mkdir_p_IFS=$IFS; IFS=: for _G_dir in $_G_dir_list; do IFS=$func_mkdir_p_IFS # mkdir can fail with a 'File exist' error if two processes # try to create one of the directories concurrently. Don't # stop in that case! $MKDIR "$_G_dir" 2>/dev/null || : done IFS=$func_mkdir_p_IFS # Bail out if we (or some other process) failed to create a directory. test -d "$_G_directory_path" || \ func_fatal_error "Failed to create '$1'" fi } # func_mktempdir [BASENAME] # ------------------------- # Make a temporary directory that won't clash with other running # libtool processes, and avoids race conditions if possible. If # given, BASENAME is the basename for that directory. func_mktempdir () { $debug_cmd _G_template=${TMPDIR-/tmp}/${1-$progname} if test : = "$opt_dry_run"; then # Return a directory name, but don't create it in dry-run mode _G_tmpdir=$_G_template-$$ else # If mktemp works, use that first and foremost _G_tmpdir=`mktemp -d "$_G_template-XXXXXXXX" 2>/dev/null` if test ! -d "$_G_tmpdir"; then # Failing that, at least try and use $RANDOM to avoid a race _G_tmpdir=$_G_template-${RANDOM-0}$$ func_mktempdir_umask=`umask` umask 0077 $MKDIR "$_G_tmpdir" umask $func_mktempdir_umask fi # If we're not in dry-run mode, bomb out on failure test -d "$_G_tmpdir" || \ func_fatal_error "cannot create temporary directory '$_G_tmpdir'" fi $ECHO "$_G_tmpdir" } # func_normal_abspath PATH # ------------------------ # Remove doubled-up and trailing slashes, "." path components, # and cancel out any ".." path components in PATH after making # it an absolute path. func_normal_abspath () { $debug_cmd # These SED scripts presuppose an absolute path with a trailing slash. _G_pathcar='s|^/\([^/]*\).*$|\1|' _G_pathcdr='s|^/[^/]*||' _G_removedotparts=':dotsl s|/\./|/|g t dotsl s|/\.$|/|' _G_collapseslashes='s|/\{1,\}|/|g' _G_finalslash='s|/*$|/|' # Start from root dir and reassemble the path. func_normal_abspath_result= func_normal_abspath_tpath=$1 func_normal_abspath_altnamespace= case $func_normal_abspath_tpath in "") # Empty path, that just means $cwd. func_stripname '' '/' "`pwd`" func_normal_abspath_result=$func_stripname_result return ;; # The next three entries are used to spot a run of precisely # two leading slashes without using negated character classes; # we take advantage of case's first-match behaviour. ///*) # Unusual form of absolute path, do nothing. ;; //*) # Not necessarily an ordinary path; POSIX reserves leading '//' # and for example Cygwin uses it to access remote file shares # over CIFS/SMB, so we conserve a leading double slash if found. func_normal_abspath_altnamespace=/ ;; /*) # Absolute path, do nothing. ;; *) # Relative path, prepend $cwd. func_normal_abspath_tpath=`pwd`/$func_normal_abspath_tpath ;; esac # Cancel out all the simple stuff to save iterations. We also want # the path to end with a slash for ease of parsing, so make sure # there is one (and only one) here. func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \ -e "$_G_removedotparts" -e "$_G_collapseslashes" -e "$_G_finalslash"` while :; do # Processed it all yet? if test / = "$func_normal_abspath_tpath"; then # If we ascended to the root using ".." the result may be empty now. if test -z "$func_normal_abspath_result"; then func_normal_abspath_result=/ fi break fi func_normal_abspath_tcomponent=`$ECHO "$func_normal_abspath_tpath" | $SED \ -e "$_G_pathcar"` func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \ -e "$_G_pathcdr"` # Figure out what to do with it case $func_normal_abspath_tcomponent in "") # Trailing empty path component, ignore it. ;; ..) # Parent dir; strip last assembled component from result. func_dirname "$func_normal_abspath_result" func_normal_abspath_result=$func_dirname_result ;; *) # Actual path component, append it. func_append func_normal_abspath_result "/$func_normal_abspath_tcomponent" ;; esac done # Restore leading double-slash if one was found on entry. func_normal_abspath_result=$func_normal_abspath_altnamespace$func_normal_abspath_result } # func_notquiet ARG... # -------------------- # Echo program name prefixed message only when not in quiet mode. func_notquiet () { $debug_cmd $opt_quiet || func_echo ${1+"$@"} # A bug in bash halts the script if the last line of a function # fails when set -e is in force, so we need another command to # work around that: : } # func_relative_path SRCDIR DSTDIR # -------------------------------- # Set func_relative_path_result to the relative path from SRCDIR to DSTDIR. func_relative_path () { $debug_cmd func_relative_path_result= func_normal_abspath "$1" func_relative_path_tlibdir=$func_normal_abspath_result func_normal_abspath "$2" func_relative_path_tbindir=$func_normal_abspath_result # Ascend the tree starting from libdir while :; do # check if we have found a prefix of bindir case $func_relative_path_tbindir in $func_relative_path_tlibdir) # found an exact match func_relative_path_tcancelled= break ;; $func_relative_path_tlibdir*) # found a matching prefix func_stripname "$func_relative_path_tlibdir" '' "$func_relative_path_tbindir" func_relative_path_tcancelled=$func_stripname_result if test -z "$func_relative_path_result"; then func_relative_path_result=. fi break ;; *) func_dirname $func_relative_path_tlibdir func_relative_path_tlibdir=$func_dirname_result if test -z "$func_relative_path_tlibdir"; then # Have to descend all the way to the root! func_relative_path_result=../$func_relative_path_result func_relative_path_tcancelled=$func_relative_path_tbindir break fi func_relative_path_result=../$func_relative_path_result ;; esac done # Now calculate path; take care to avoid doubling-up slashes. func_stripname '' '/' "$func_relative_path_result" func_relative_path_result=$func_stripname_result func_stripname '/' '/' "$func_relative_path_tcancelled" if test -n "$func_stripname_result"; then func_append func_relative_path_result "/$func_stripname_result" fi # Normalisation. If bindir is libdir, return '.' else relative path. if test -n "$func_relative_path_result"; then func_stripname './' '' "$func_relative_path_result" func_relative_path_result=$func_stripname_result fi test -n "$func_relative_path_result" || func_relative_path_result=. : } # func_quote_for_eval ARG... # -------------------------- # Aesthetically quote ARGs to be evaled later. # This function returns two values: # i) func_quote_for_eval_result # double-quoted, suitable for a subsequent eval # ii) func_quote_for_eval_unquoted_result # has all characters that are still active within double # quotes backslashified. func_quote_for_eval () { $debug_cmd func_quote_for_eval_unquoted_result= func_quote_for_eval_result= while test 0 -lt $#; do case $1 in *[\\\`\"\$]*) _G_unquoted_arg=`printf '%s\n' "$1" |$SED "$sed_quote_subst"` ;; *) _G_unquoted_arg=$1 ;; esac if test -n "$func_quote_for_eval_unquoted_result"; then func_append func_quote_for_eval_unquoted_result " $_G_unquoted_arg" else func_append func_quote_for_eval_unquoted_result "$_G_unquoted_arg" fi case $_G_unquoted_arg in # Double-quote args containing shell metacharacters to delay # word splitting, command substitution and variable expansion # for a subsequent eval. # Many Bourne shells cannot handle close brackets correctly # in scan sets, so we specify it separately. *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") _G_quoted_arg=\"$_G_unquoted_arg\" ;; *) _G_quoted_arg=$_G_unquoted_arg ;; esac if test -n "$func_quote_for_eval_result"; then func_append func_quote_for_eval_result " $_G_quoted_arg" else func_append func_quote_for_eval_result "$_G_quoted_arg" fi shift done } # func_quote_for_expand ARG # ------------------------- # Aesthetically quote ARG to be evaled later; same as above, # but do not quote variable references. func_quote_for_expand () { $debug_cmd case $1 in *[\\\`\"]*) _G_arg=`$ECHO "$1" | $SED \ -e "$sed_double_quote_subst" -e "$sed_double_backslash"` ;; *) _G_arg=$1 ;; esac case $_G_arg in # Double-quote args containing shell metacharacters to delay # word splitting and command substitution for a subsequent eval. # Many Bourne shells cannot handle close brackets correctly # in scan sets, so we specify it separately. *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") _G_arg=\"$_G_arg\" ;; esac func_quote_for_expand_result=$_G_arg } # func_stripname PREFIX SUFFIX NAME # --------------------------------- # strip PREFIX and SUFFIX from NAME, and store in func_stripname_result. # PREFIX and SUFFIX must not contain globbing or regex special # characters, hashes, percent signs, but SUFFIX may contain a leading # dot (in which case that matches only a dot). if test yes = "$_G_HAVE_XSI_OPS"; then eval 'func_stripname () { $debug_cmd # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are # positional parameters, so assign one to ordinary variable first. func_stripname_result=$3 func_stripname_result=${func_stripname_result#"$1"} func_stripname_result=${func_stripname_result%"$2"} }' else func_stripname () { $debug_cmd case $2 in .*) func_stripname_result=`$ECHO "$3" | $SED -e "s%^$1%%" -e "s%\\\\$2\$%%"`;; *) func_stripname_result=`$ECHO "$3" | $SED -e "s%^$1%%" -e "s%$2\$%%"`;; esac } fi # func_show_eval CMD [FAIL_EXP] # ----------------------------- # Unless opt_quiet is true, then output CMD. Then, if opt_dryrun is # not true, evaluate CMD. If the evaluation of CMD fails, and FAIL_EXP # is given, then evaluate it. func_show_eval () { $debug_cmd _G_cmd=$1 _G_fail_exp=${2-':'} func_quote_for_expand "$_G_cmd" eval "func_notquiet $func_quote_for_expand_result" $opt_dry_run || { eval "$_G_cmd" _G_status=$? if test 0 -ne "$_G_status"; then eval "(exit $_G_status); $_G_fail_exp" fi } } # func_show_eval_locale CMD [FAIL_EXP] # ------------------------------------ # Unless opt_quiet is true, then output CMD. Then, if opt_dryrun is # not true, evaluate CMD. If the evaluation of CMD fails, and FAIL_EXP # is given, then evaluate it. Use the saved locale for evaluation. func_show_eval_locale () { $debug_cmd _G_cmd=$1 _G_fail_exp=${2-':'} $opt_quiet || { func_quote_for_expand "$_G_cmd" eval "func_echo $func_quote_for_expand_result" } $opt_dry_run || { eval "$_G_user_locale $_G_cmd" _G_status=$? eval "$_G_safe_locale" if test 0 -ne "$_G_status"; then eval "(exit $_G_status); $_G_fail_exp" fi } } # func_tr_sh # ---------- # Turn $1 into a string suitable for a shell variable name. # Result is stored in $func_tr_sh_result. All characters # not in the set a-zA-Z0-9_ are replaced with '_'. Further, # if $1 begins with a digit, a '_' is prepended as well. func_tr_sh () { $debug_cmd case $1 in [0-9]* | *[!a-zA-Z0-9_]*) func_tr_sh_result=`$ECHO "$1" | $SED -e 's/^\([0-9]\)/_\1/' -e 's/[^a-zA-Z0-9_]/_/g'` ;; * ) func_tr_sh_result=$1 ;; esac } # func_verbose ARG... # ------------------- # Echo program name prefixed message in verbose mode only. func_verbose () { $debug_cmd $opt_verbose && func_echo "$*" : } # func_warn_and_continue ARG... # ----------------------------- # Echo program name prefixed warning message to standard error. func_warn_and_continue () { $debug_cmd $require_term_colors func_echo_infix_1 "${tc_red}warning$tc_reset" "$*" >&2 } # func_warning CATEGORY ARG... # ---------------------------- # Echo program name prefixed warning message to standard error. Warning # messages can be filtered according to CATEGORY, where this function # elides messages where CATEGORY is not listed in the global variable # 'opt_warning_types'. func_warning () { $debug_cmd # CATEGORY must be in the warning_categories list! case " $warning_categories " in *" $1 "*) ;; *) func_internal_error "invalid warning category '$1'" ;; esac _G_category=$1 shift case " $opt_warning_types " in *" $_G_category "*) $warning_func ${1+"$@"} ;; esac } # func_sort_ver VER1 VER2 # ----------------------- # 'sort -V' is not generally available. # Note this deviates from the version comparison in automake # in that it treats 1.5 < 1.5.0, and treats 1.4.4a < 1.4-p3a # but this should suffice as we won't be specifying old # version formats or redundant trailing .0 in bootstrap.conf. # If we did want full compatibility then we should probably # use m4_version_compare from autoconf. func_sort_ver () { $debug_cmd printf '%s\n%s\n' "$1" "$2" \ | sort -t. -k 1,1n -k 2,2n -k 3,3n -k 4,4n -k 5,5n -k 6,6n -k 7,7n -k 8,8n -k 9,9n } # func_lt_ver PREV CURR # --------------------- # Return true if PREV and CURR are in the correct order according to # func_sort_ver, otherwise false. Use it like this: # # func_lt_ver "$prev_ver" "$proposed_ver" || func_fatal_error "..." func_lt_ver () { $debug_cmd test "x$1" = x`func_sort_ver "$1" "$2" | $SED 1q` } # Local variables: # mode: shell-script # sh-indentation: 2 # eval: (add-hook 'before-save-hook 'time-stamp) # time-stamp-pattern: "10/scriptversion=%:y-%02m-%02d.%02H; # UTC" # time-stamp-time-zone: "UTC" # End: #! /bin/sh # Set a version string for this script. scriptversion=2014-01-07.03; # UTC # A portable, pluggable option parser for Bourne shell. # Written by Gary V. Vaughan, 2010 # Copyright (C) 2010-2015 Free Software Foundation, Inc. # This is free software; see the source for copying conditions. There is NO # warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # You should have received a copy of the GNU General Public License # along with this program. If not, see . # Please report bugs or propose patches to gary@gnu.org. ## ------ ## ## Usage. ## ## ------ ## # This file is a library for parsing options in your shell scripts along # with assorted other useful supporting features that you can make use # of too. # # For the simplest scripts you might need only: # # #!/bin/sh # . relative/path/to/funclib.sh # . relative/path/to/options-parser # scriptversion=1.0 # func_options ${1+"$@"} # eval set dummy "$func_options_result"; shift # ...rest of your script... # # In order for the '--version' option to work, you will need to have a # suitably formatted comment like the one at the top of this file # starting with '# Written by ' and ending with '# warranty; '. # # For '-h' and '--help' to work, you will also need a one line # description of your script's purpose in a comment directly above the # '# Written by ' line, like the one at the top of this file. # # The default options also support '--debug', which will turn on shell # execution tracing (see the comment above debug_cmd below for another # use), and '--verbose' and the func_verbose function to allow your script # to display verbose messages only when your user has specified # '--verbose'. # # After sourcing this file, you can plug processing for additional # options by amending the variables from the 'Configuration' section # below, and following the instructions in the 'Option parsing' # section further down. ## -------------- ## ## Configuration. ## ## -------------- ## # You should override these variables in your script after sourcing this # file so that they reflect the customisations you have added to the # option parser. # The usage line for option parsing errors and the start of '-h' and # '--help' output messages. You can embed shell variables for delayed # expansion at the time the message is displayed, but you will need to # quote other shell meta-characters carefully to prevent them being # expanded when the contents are evaled. usage='$progpath [OPTION]...' # Short help message in response to '-h' and '--help'. Add to this or # override it after sourcing this library to reflect the full set of # options your script accepts. usage_message="\ --debug enable verbose shell tracing -W, --warnings=CATEGORY report the warnings falling in CATEGORY [all] -v, --verbose verbosely report processing --version print version information and exit -h, --help print short or long help message and exit " # Additional text appended to 'usage_message' in response to '--help'. long_help_message=" Warning categories include: 'all' show all warnings 'none' turn off all the warnings 'error' warnings are treated as fatal errors" # Help message printed before fatal option parsing errors. fatal_help="Try '\$progname --help' for more information." ## ------------------------- ## ## Hook function management. ## ## ------------------------- ## # This section contains functions for adding, removing, and running hooks # to the main code. A hook is just a named list of of function, that can # be run in order later on. # func_hookable FUNC_NAME # ----------------------- # Declare that FUNC_NAME will run hooks added with # 'func_add_hook FUNC_NAME ...'. func_hookable () { $debug_cmd func_append hookable_fns " $1" } # func_add_hook FUNC_NAME HOOK_FUNC # --------------------------------- # Request that FUNC_NAME call HOOK_FUNC before it returns. FUNC_NAME must # first have been declared "hookable" by a call to 'func_hookable'. func_add_hook () { $debug_cmd case " $hookable_fns " in *" $1 "*) ;; *) func_fatal_error "'$1' does not accept hook functions." ;; esac eval func_append ${1}_hooks '" $2"' } # func_remove_hook FUNC_NAME HOOK_FUNC # ------------------------------------ # Remove HOOK_FUNC from the list of functions called by FUNC_NAME. func_remove_hook () { $debug_cmd eval ${1}_hooks='`$ECHO "\$'$1'_hooks" |$SED "s| '$2'||"`' } # func_run_hooks FUNC_NAME [ARG]... # --------------------------------- # Run all hook functions registered to FUNC_NAME. # It is assumed that the list of hook functions contains nothing more # than a whitespace-delimited list of legal shell function names, and # no effort is wasted trying to catch shell meta-characters or preserve # whitespace. func_run_hooks () { $debug_cmd case " $hookable_fns " in *" $1 "*) ;; *) func_fatal_error "'$1' does not support hook funcions.n" ;; esac eval _G_hook_fns=\$$1_hooks; shift for _G_hook in $_G_hook_fns; do eval $_G_hook '"$@"' # store returned options list back into positional # parameters for next 'cmd' execution. eval _G_hook_result=\$${_G_hook}_result eval set dummy "$_G_hook_result"; shift done func_quote_for_eval ${1+"$@"} func_run_hooks_result=$func_quote_for_eval_result } ## --------------- ## ## Option parsing. ## ## --------------- ## # In order to add your own option parsing hooks, you must accept the # full positional parameter list in your hook function, remove any # options that you action, and then pass back the remaining unprocessed # options in '_result', escaped suitably for # 'eval'. Like this: # # my_options_prep () # { # $debug_cmd # # # Extend the existing usage message. # usage_message=$usage_message' # -s, --silent don'\''t print informational messages # ' # # func_quote_for_eval ${1+"$@"} # my_options_prep_result=$func_quote_for_eval_result # } # func_add_hook func_options_prep my_options_prep # # # my_silent_option () # { # $debug_cmd # # # Note that for efficiency, we parse as many options as we can # # recognise in a loop before passing the remainder back to the # # caller on the first unrecognised argument we encounter. # while test $# -gt 0; do # opt=$1; shift # case $opt in # --silent|-s) opt_silent=: ;; # # Separate non-argument short options: # -s*) func_split_short_opt "$_G_opt" # set dummy "$func_split_short_opt_name" \ # "-$func_split_short_opt_arg" ${1+"$@"} # shift # ;; # *) set dummy "$_G_opt" "$*"; shift; break ;; # esac # done # # func_quote_for_eval ${1+"$@"} # my_silent_option_result=$func_quote_for_eval_result # } # func_add_hook func_parse_options my_silent_option # # # my_option_validation () # { # $debug_cmd # # $opt_silent && $opt_verbose && func_fatal_help "\ # '--silent' and '--verbose' options are mutually exclusive." # # func_quote_for_eval ${1+"$@"} # my_option_validation_result=$func_quote_for_eval_result # } # func_add_hook func_validate_options my_option_validation # # You'll alse need to manually amend $usage_message to reflect the extra # options you parse. It's preferable to append if you can, so that # multiple option parsing hooks can be added safely. # func_options [ARG]... # --------------------- # All the functions called inside func_options are hookable. See the # individual implementations for details. func_hookable func_options func_options () { $debug_cmd func_options_prep ${1+"$@"} eval func_parse_options \ ${func_options_prep_result+"$func_options_prep_result"} eval func_validate_options \ ${func_parse_options_result+"$func_parse_options_result"} eval func_run_hooks func_options \ ${func_validate_options_result+"$func_validate_options_result"} # save modified positional parameters for caller func_options_result=$func_run_hooks_result } # func_options_prep [ARG]... # -------------------------- # All initialisations required before starting the option parse loop. # Note that when calling hook functions, we pass through the list of # positional parameters. If a hook function modifies that list, and # needs to propogate that back to rest of this script, then the complete # modified list must be put in 'func_run_hooks_result' before # returning. func_hookable func_options_prep func_options_prep () { $debug_cmd # Option defaults: opt_verbose=false opt_warning_types= func_run_hooks func_options_prep ${1+"$@"} # save modified positional parameters for caller func_options_prep_result=$func_run_hooks_result } # func_parse_options [ARG]... # --------------------------- # The main option parsing loop. func_hookable func_parse_options func_parse_options () { $debug_cmd func_parse_options_result= # this just eases exit handling while test $# -gt 0; do # Defer to hook functions for initial option parsing, so they # get priority in the event of reusing an option name. func_run_hooks func_parse_options ${1+"$@"} # Adjust func_parse_options positional parameters to match eval set dummy "$func_run_hooks_result"; shift # Break out of the loop if we already parsed every option. test $# -gt 0 || break _G_opt=$1 shift case $_G_opt in --debug|-x) debug_cmd='set -x' func_echo "enabling shell trace mode" $debug_cmd ;; --no-warnings|--no-warning|--no-warn) set dummy --warnings none ${1+"$@"} shift ;; --warnings|--warning|-W) test $# = 0 && func_missing_arg $_G_opt && break case " $warning_categories $1" in *" $1 "*) # trailing space prevents matching last $1 above func_append_uniq opt_warning_types " $1" ;; *all) opt_warning_types=$warning_categories ;; *none) opt_warning_types=none warning_func=: ;; *error) opt_warning_types=$warning_categories warning_func=func_fatal_error ;; *) func_fatal_error \ "unsupported warning category: '$1'" ;; esac shift ;; --verbose|-v) opt_verbose=: ;; --version) func_version ;; -\?|-h) func_usage ;; --help) func_help ;; # Separate optargs to long options (plugins may need this): --*=*) func_split_equals "$_G_opt" set dummy "$func_split_equals_lhs" \ "$func_split_equals_rhs" ${1+"$@"} shift ;; # Separate optargs to short options: -W*) func_split_short_opt "$_G_opt" set dummy "$func_split_short_opt_name" \ "$func_split_short_opt_arg" ${1+"$@"} shift ;; # Separate non-argument short options: -\?*|-h*|-v*|-x*) func_split_short_opt "$_G_opt" set dummy "$func_split_short_opt_name" \ "-$func_split_short_opt_arg" ${1+"$@"} shift ;; --) break ;; -*) func_fatal_help "unrecognised option: '$_G_opt'" ;; *) set dummy "$_G_opt" ${1+"$@"}; shift; break ;; esac done # save modified positional parameters for caller func_quote_for_eval ${1+"$@"} func_parse_options_result=$func_quote_for_eval_result } # func_validate_options [ARG]... # ------------------------------ # Perform any sanity checks on option settings and/or unconsumed # arguments. func_hookable func_validate_options func_validate_options () { $debug_cmd # Display all warnings if -W was not given. test -n "$opt_warning_types" || opt_warning_types=" $warning_categories" func_run_hooks func_validate_options ${1+"$@"} # Bail if the options were screwed! $exit_cmd $EXIT_FAILURE # save modified positional parameters for caller func_validate_options_result=$func_run_hooks_result } ## ----------------- ## ## Helper functions. ## ## ----------------- ## # This section contains the helper functions used by the rest of the # hookable option parser framework in ascii-betical order. # func_fatal_help ARG... # ---------------------- # Echo program name prefixed message to standard error, followed by # a help hint, and exit. func_fatal_help () { $debug_cmd eval \$ECHO \""Usage: $usage"\" eval \$ECHO \""$fatal_help"\" func_error ${1+"$@"} exit $EXIT_FAILURE } # func_help # --------- # Echo long help message to standard output and exit. func_help () { $debug_cmd func_usage_message $ECHO "$long_help_message" exit 0 } # func_missing_arg ARGNAME # ------------------------ # Echo program name prefixed message to standard error and set global # exit_cmd. func_missing_arg () { $debug_cmd func_error "Missing argument for '$1'." exit_cmd=exit } # func_split_equals STRING # ------------------------ # Set func_split_equals_lhs and func_split_equals_rhs shell variables after # splitting STRING at the '=' sign. test -z "$_G_HAVE_XSI_OPS" \ && (eval 'x=a/b/c; test 5aa/bb/cc = "${#x}${x%%/*}${x%/*}${x#*/}${x##*/}"') 2>/dev/null \ && _G_HAVE_XSI_OPS=yes if test yes = "$_G_HAVE_XSI_OPS" then # This is an XSI compatible shell, allowing a faster implementation... eval 'func_split_equals () { $debug_cmd func_split_equals_lhs=${1%%=*} func_split_equals_rhs=${1#*=} test "x$func_split_equals_lhs" = "x$1" \ && func_split_equals_rhs= }' else # ...otherwise fall back to using expr, which is often a shell builtin. func_split_equals () { $debug_cmd func_split_equals_lhs=`expr "x$1" : 'x\([^=]*\)'` func_split_equals_rhs= test "x$func_split_equals_lhs" = "x$1" \ || func_split_equals_rhs=`expr "x$1" : 'x[^=]*=\(.*\)$'` } fi #func_split_equals # func_split_short_opt SHORTOPT # ----------------------------- # Set func_split_short_opt_name and func_split_short_opt_arg shell # variables after splitting SHORTOPT after the 2nd character. if test yes = "$_G_HAVE_XSI_OPS" then # This is an XSI compatible shell, allowing a faster implementation... eval 'func_split_short_opt () { $debug_cmd func_split_short_opt_arg=${1#??} func_split_short_opt_name=${1%"$func_split_short_opt_arg"} }' else # ...otherwise fall back to using expr, which is often a shell builtin. func_split_short_opt () { $debug_cmd func_split_short_opt_name=`expr "x$1" : 'x-\(.\)'` func_split_short_opt_arg=`expr "x$1" : 'x-.\(.*\)$'` } fi #func_split_short_opt # func_usage # ---------- # Echo short help message to standard output and exit. func_usage () { $debug_cmd func_usage_message $ECHO "Run '$progname --help |${PAGER-more}' for full usage" exit 0 } # func_usage_message # ------------------ # Echo short help message to standard output. func_usage_message () { $debug_cmd eval \$ECHO \""Usage: $usage"\" echo $SED -n 's|^# || /^Written by/{ x;p;x } h /^Written by/q' < "$progpath" echo eval \$ECHO \""$usage_message"\" } # func_version # ------------ # Echo version message to standard output and exit. func_version () { $debug_cmd printf '%s\n' "$progname $scriptversion" $SED -n ' /(C)/!b go :more /\./!{ N s|\n# | | b more } :go /^# Written by /,/# warranty; / { s|^# || s|^# *$|| s|\((C)\)[ 0-9,-]*[ ,-]\([1-9][0-9]* \)|\1 \2| p } /^# Written by / { s|^# || p } /^warranty; /q' < "$progpath" exit $? } # Local variables: # mode: shell-script # sh-indentation: 2 # eval: (add-hook 'before-save-hook 'time-stamp) # time-stamp-pattern: "10/scriptversion=%:y-%02m-%02d.%02H; # UTC" # time-stamp-time-zone: "UTC" # End: # Set a version string. scriptversion='(GNU libtool) 2.4.6' # func_echo ARG... # ---------------- # Libtool also displays the current mode in messages, so override # funclib.sh func_echo with this custom definition. func_echo () { $debug_cmd _G_message=$* func_echo_IFS=$IFS IFS=$nl for _G_line in $_G_message; do IFS=$func_echo_IFS $ECHO "$progname${opt_mode+: $opt_mode}: $_G_line" done IFS=$func_echo_IFS } # func_warning ARG... # ------------------- # Libtool warnings are not categorized, so override funclib.sh # func_warning with this simpler definition. func_warning () { $debug_cmd $warning_func ${1+"$@"} } ## ---------------- ## ## Options parsing. ## ## ---------------- ## # Hook in the functions to make sure our own options are parsed during # the option parsing loop. usage='$progpath [OPTION]... [MODE-ARG]...' # Short help message in response to '-h'. usage_message="Options: --config show all configuration variables --debug enable verbose shell tracing -n, --dry-run display commands without modifying any files --features display basic configuration information and exit --mode=MODE use operation mode MODE --no-warnings equivalent to '-Wnone' --preserve-dup-deps don't remove duplicate dependency libraries --quiet, --silent don't print informational messages --tag=TAG use configuration variables from tag TAG -v, --verbose print more informational messages than default --version print version information -W, --warnings=CATEGORY report the warnings falling in CATEGORY [all] -h, --help, --help-all print short, long, or detailed help message " # Additional text appended to 'usage_message' in response to '--help'. func_help () { $debug_cmd func_usage_message $ECHO "$long_help_message MODE must be one of the following: clean remove files from the build directory compile compile a source file into a libtool object execute automatically set library path, then run a program finish complete the installation of libtool libraries install install libraries or executables link create a library or an executable uninstall remove libraries from an installed directory MODE-ARGS vary depending on the MODE. When passed as first option, '--mode=MODE' may be abbreviated as 'MODE' or a unique abbreviation of that. Try '$progname --help --mode=MODE' for a more detailed description of MODE. When reporting a bug, please describe a test case to reproduce it and include the following information: host-triplet: $host shell: $SHELL compiler: $LTCC compiler flags: $LTCFLAGS linker: $LD (gnu? $with_gnu_ld) version: $progname $scriptversion Debian-2.4.6-2 automake: `($AUTOMAKE --version) 2>/dev/null |$SED 1q` autoconf: `($AUTOCONF --version) 2>/dev/null |$SED 1q` Report bugs to . GNU libtool home page: . General help using GNU software: ." exit 0 } # func_lo2o OBJECT-NAME # --------------------- # Transform OBJECT-NAME from a '.lo' suffix to the platform specific # object suffix. lo2o=s/\\.lo\$/.$objext/ o2lo=s/\\.$objext\$/.lo/ if test yes = "$_G_HAVE_XSI_OPS"; then eval 'func_lo2o () { case $1 in *.lo) func_lo2o_result=${1%.lo}.$objext ;; * ) func_lo2o_result=$1 ;; esac }' # func_xform LIBOBJ-OR-SOURCE # --------------------------- # Transform LIBOBJ-OR-SOURCE from a '.o' or '.c' (or otherwise) # suffix to a '.lo' libtool-object suffix. eval 'func_xform () { func_xform_result=${1%.*}.lo }' else # ...otherwise fall back to using sed. func_lo2o () { func_lo2o_result=`$ECHO "$1" | $SED "$lo2o"` } func_xform () { func_xform_result=`$ECHO "$1" | $SED 's|\.[^.]*$|.lo|'` } fi # func_fatal_configuration ARG... # ------------------------------- # Echo program name prefixed message to standard error, followed by # a configuration failure hint, and exit. func_fatal_configuration () { func__fatal_error ${1+"$@"} \ "See the $PACKAGE documentation for more information." \ "Fatal configuration error." } # func_config # ----------- # Display the configuration for all the tags in this script. func_config () { re_begincf='^# ### BEGIN LIBTOOL' re_endcf='^# ### END LIBTOOL' # Default configuration. $SED "1,/$re_begincf CONFIG/d;/$re_endcf CONFIG/,\$d" < "$progpath" # Now print the configurations for the tags. for tagname in $taglist; do $SED -n "/$re_begincf TAG CONFIG: $tagname\$/,/$re_endcf TAG CONFIG: $tagname\$/p" < "$progpath" done exit $? } # func_features # ------------- # Display the features supported by this script. func_features () { echo "host: $host" if test yes = "$build_libtool_libs"; then echo "enable shared libraries" else echo "disable shared libraries" fi if test yes = "$build_old_libs"; then echo "enable static libraries" else echo "disable static libraries" fi exit $? } # func_enable_tag TAGNAME # ----------------------- # Verify that TAGNAME is valid, and either flag an error and exit, or # enable the TAGNAME tag. We also add TAGNAME to the global $taglist # variable here. func_enable_tag () { # Global variable: tagname=$1 re_begincf="^# ### BEGIN LIBTOOL TAG CONFIG: $tagname\$" re_endcf="^# ### END LIBTOOL TAG CONFIG: $tagname\$" sed_extractcf=/$re_begincf/,/$re_endcf/p # Validate tagname. case $tagname in *[!-_A-Za-z0-9,/]*) func_fatal_error "invalid tag name: $tagname" ;; esac # Don't test for the "default" C tag, as we know it's # there but not specially marked. case $tagname in CC) ;; *) if $GREP "$re_begincf" "$progpath" >/dev/null 2>&1; then taglist="$taglist $tagname" # Evaluate the configuration. Be careful to quote the path # and the sed script, to avoid splitting on whitespace, but # also don't use non-portable quotes within backquotes within # quotes we have to do it in 2 steps: extractedcf=`$SED -n -e "$sed_extractcf" < "$progpath"` eval "$extractedcf" else func_error "ignoring unknown tag $tagname" fi ;; esac } # func_check_version_match # ------------------------ # Ensure that we are using m4 macros, and libtool script from the same # release of libtool. func_check_version_match () { if test "$package_revision" != "$macro_revision"; then if test "$VERSION" != "$macro_version"; then if test -z "$macro_version"; then cat >&2 <<_LT_EOF $progname: Version mismatch error. This is $PACKAGE $VERSION, but the $progname: definition of this LT_INIT comes from an older release. $progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION $progname: and run autoconf again. _LT_EOF else cat >&2 <<_LT_EOF $progname: Version mismatch error. This is $PACKAGE $VERSION, but the $progname: definition of this LT_INIT comes from $PACKAGE $macro_version. $progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION $progname: and run autoconf again. _LT_EOF fi else cat >&2 <<_LT_EOF $progname: Version mismatch error. This is $PACKAGE $VERSION, revision $package_revision, $progname: but the definition of this LT_INIT comes from revision $macro_revision. $progname: You should recreate aclocal.m4 with macros from revision $package_revision $progname: of $PACKAGE $VERSION and run autoconf again. _LT_EOF fi exit $EXIT_MISMATCH fi } # libtool_options_prep [ARG]... # ----------------------------- # Preparation for options parsed by libtool. libtool_options_prep () { $debug_mode # Option defaults: opt_config=false opt_dlopen= opt_dry_run=false opt_help=false opt_mode= opt_preserve_dup_deps=false opt_quiet=false nonopt= preserve_args= # Shorthand for --mode=foo, only valid as the first argument case $1 in clean|clea|cle|cl) shift; set dummy --mode clean ${1+"$@"}; shift ;; compile|compil|compi|comp|com|co|c) shift; set dummy --mode compile ${1+"$@"}; shift ;; execute|execut|execu|exec|exe|ex|e) shift; set dummy --mode execute ${1+"$@"}; shift ;; finish|finis|fini|fin|fi|f) shift; set dummy --mode finish ${1+"$@"}; shift ;; install|instal|insta|inst|ins|in|i) shift; set dummy --mode install ${1+"$@"}; shift ;; link|lin|li|l) shift; set dummy --mode link ${1+"$@"}; shift ;; uninstall|uninstal|uninsta|uninst|unins|unin|uni|un|u) shift; set dummy --mode uninstall ${1+"$@"}; shift ;; esac # Pass back the list of options. func_quote_for_eval ${1+"$@"} libtool_options_prep_result=$func_quote_for_eval_result } func_add_hook func_options_prep libtool_options_prep # libtool_parse_options [ARG]... # --------------------------------- # Provide handling for libtool specific options. libtool_parse_options () { $debug_cmd # Perform our own loop to consume as many options as possible in # each iteration. while test $# -gt 0; do _G_opt=$1 shift case $_G_opt in --dry-run|--dryrun|-n) opt_dry_run=: ;; --config) func_config ;; --dlopen|-dlopen) opt_dlopen="${opt_dlopen+$opt_dlopen }$1" shift ;; --preserve-dup-deps) opt_preserve_dup_deps=: ;; --features) func_features ;; --finish) set dummy --mode finish ${1+"$@"}; shift ;; --help) opt_help=: ;; --help-all) opt_help=': help-all' ;; --mode) test $# = 0 && func_missing_arg $_G_opt && break opt_mode=$1 case $1 in # Valid mode arguments: clean|compile|execute|finish|install|link|relink|uninstall) ;; # Catch anything else as an error *) func_error "invalid argument for $_G_opt" exit_cmd=exit break ;; esac shift ;; --no-silent|--no-quiet) opt_quiet=false func_append preserve_args " $_G_opt" ;; --no-warnings|--no-warning|--no-warn) opt_warning=false func_append preserve_args " $_G_opt" ;; --no-verbose) opt_verbose=false func_append preserve_args " $_G_opt" ;; --silent|--quiet) opt_quiet=: opt_verbose=false func_append preserve_args " $_G_opt" ;; --tag) test $# = 0 && func_missing_arg $_G_opt && break opt_tag=$1 func_append preserve_args " $_G_opt $1" func_enable_tag "$1" shift ;; --verbose|-v) opt_quiet=false opt_verbose=: func_append preserve_args " $_G_opt" ;; # An option not handled by this hook function: *) set dummy "$_G_opt" ${1+"$@"}; shift; break ;; esac done # save modified positional parameters for caller func_quote_for_eval ${1+"$@"} libtool_parse_options_result=$func_quote_for_eval_result } func_add_hook func_parse_options libtool_parse_options # libtool_validate_options [ARG]... # --------------------------------- # Perform any sanity checks on option settings and/or unconsumed # arguments. libtool_validate_options () { # save first non-option argument if test 0 -lt $#; then nonopt=$1 shift fi # preserve --debug test : = "$debug_cmd" || func_append preserve_args " --debug" case $host in # Solaris2 added to fix http://debbugs.gnu.org/cgi/bugreport.cgi?bug=16452 # see also: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59788 *cygwin* | *mingw* | *pw32* | *cegcc* | *solaris2* | *os2*) # don't eliminate duplications in $postdeps and $predeps opt_duplicate_compiler_generated_deps=: ;; *) opt_duplicate_compiler_generated_deps=$opt_preserve_dup_deps ;; esac $opt_help || { # Sanity checks first: func_check_version_match test yes != "$build_libtool_libs" \ && test yes != "$build_old_libs" \ && func_fatal_configuration "not configured to build any kind of library" # Darwin sucks eval std_shrext=\"$shrext_cmds\" # Only execute mode is allowed to have -dlopen flags. if test -n "$opt_dlopen" && test execute != "$opt_mode"; then func_error "unrecognized option '-dlopen'" $ECHO "$help" 1>&2 exit $EXIT_FAILURE fi # Change the help message to a mode-specific one. generic_help=$help help="Try '$progname --help --mode=$opt_mode' for more information." } # Pass back the unparsed argument list func_quote_for_eval ${1+"$@"} libtool_validate_options_result=$func_quote_for_eval_result } func_add_hook func_validate_options libtool_validate_options # Process options as early as possible so that --help and --version # can return quickly. func_options ${1+"$@"} eval set dummy "$func_options_result"; shift ## ----------- ## ## Main. ## ## ----------- ## magic='%%%MAGIC variable%%%' magic_exe='%%%MAGIC EXE variable%%%' # Global variables. extracted_archives= extracted_serial=0 # If this variable is set in any of the actions, the command in it # will be execed at the end. This prevents here-documents from being # left over by shells. exec_cmd= # A function that is used when there is no print builtin or printf. func_fallback_echo () { eval 'cat <<_LTECHO_EOF $1 _LTECHO_EOF' } # func_generated_by_libtool # True iff stdin has been generated by Libtool. This function is only # a basic sanity check; it will hardly flush out determined imposters. func_generated_by_libtool_p () { $GREP "^# Generated by .*$PACKAGE" > /dev/null 2>&1 } # func_lalib_p file # True iff FILE is a libtool '.la' library or '.lo' object file. # This function is only a basic sanity check; it will hardly flush out # determined imposters. func_lalib_p () { test -f "$1" && $SED -e 4q "$1" 2>/dev/null | func_generated_by_libtool_p } # func_lalib_unsafe_p file # True iff FILE is a libtool '.la' library or '.lo' object file. # This function implements the same check as func_lalib_p without # resorting to external programs. To this end, it redirects stdin and # closes it afterwards, without saving the original file descriptor. # As a safety measure, use it only where a negative result would be # fatal anyway. Works if 'file' does not exist. func_lalib_unsafe_p () { lalib_p=no if test -f "$1" && test -r "$1" && exec 5<&0 <"$1"; then for lalib_p_l in 1 2 3 4 do read lalib_p_line case $lalib_p_line in \#\ Generated\ by\ *$PACKAGE* ) lalib_p=yes; break;; esac done exec 0<&5 5<&- fi test yes = "$lalib_p" } # func_ltwrapper_script_p file # True iff FILE is a libtool wrapper script # This function is only a basic sanity check; it will hardly flush out # determined imposters. func_ltwrapper_script_p () { test -f "$1" && $lt_truncate_bin < "$1" 2>/dev/null | func_generated_by_libtool_p } # func_ltwrapper_executable_p file # True iff FILE is a libtool wrapper executable # This function is only a basic sanity check; it will hardly flush out # determined imposters. func_ltwrapper_executable_p () { func_ltwrapper_exec_suffix= case $1 in *.exe) ;; *) func_ltwrapper_exec_suffix=.exe ;; esac $GREP "$magic_exe" "$1$func_ltwrapper_exec_suffix" >/dev/null 2>&1 } # func_ltwrapper_scriptname file # Assumes file is an ltwrapper_executable # uses $file to determine the appropriate filename for a # temporary ltwrapper_script. func_ltwrapper_scriptname () { func_dirname_and_basename "$1" "" "." func_stripname '' '.exe' "$func_basename_result" func_ltwrapper_scriptname_result=$func_dirname_result/$objdir/${func_stripname_result}_ltshwrapper } # func_ltwrapper_p file # True iff FILE is a libtool wrapper script or wrapper executable # This function is only a basic sanity check; it will hardly flush out # determined imposters. func_ltwrapper_p () { func_ltwrapper_script_p "$1" || func_ltwrapper_executable_p "$1" } # func_execute_cmds commands fail_cmd # Execute tilde-delimited COMMANDS. # If FAIL_CMD is given, eval that upon failure. # FAIL_CMD may read-access the current command in variable CMD! func_execute_cmds () { $debug_cmd save_ifs=$IFS; IFS='~' for cmd in $1; do IFS=$sp$nl eval cmd=\"$cmd\" IFS=$save_ifs func_show_eval "$cmd" "${2-:}" done IFS=$save_ifs } # func_source file # Source FILE, adding directory component if necessary. # Note that it is not necessary on cygwin/mingw to append a dot to # FILE even if both FILE and FILE.exe exist: automatic-append-.exe # behavior happens only for exec(3), not for open(2)! Also, sourcing # 'FILE.' does not work on cygwin managed mounts. func_source () { $debug_cmd case $1 in */* | *\\*) . "$1" ;; *) . "./$1" ;; esac } # func_resolve_sysroot PATH # Replace a leading = in PATH with a sysroot. Store the result into # func_resolve_sysroot_result func_resolve_sysroot () { func_resolve_sysroot_result=$1 case $func_resolve_sysroot_result in =*) func_stripname '=' '' "$func_resolve_sysroot_result" func_resolve_sysroot_result=$lt_sysroot$func_stripname_result ;; esac } # func_replace_sysroot PATH # If PATH begins with the sysroot, replace it with = and # store the result into func_replace_sysroot_result. func_replace_sysroot () { case $lt_sysroot:$1 in ?*:"$lt_sysroot"*) func_stripname "$lt_sysroot" '' "$1" func_replace_sysroot_result='='$func_stripname_result ;; *) # Including no sysroot. func_replace_sysroot_result=$1 ;; esac } # func_infer_tag arg # Infer tagged configuration to use if any are available and # if one wasn't chosen via the "--tag" command line option. # Only attempt this if the compiler in the base compile # command doesn't match the default compiler. # arg is usually of the form 'gcc ...' func_infer_tag () { $debug_cmd if test -n "$available_tags" && test -z "$tagname"; then CC_quoted= for arg in $CC; do func_append_quoted CC_quoted "$arg" done CC_expanded=`func_echo_all $CC` CC_quoted_expanded=`func_echo_all $CC_quoted` case $@ in # Blanks in the command may have been stripped by the calling shell, # but not from the CC environment variable when configure was run. " $CC "* | "$CC "* | " $CC_expanded "* | "$CC_expanded "* | \ " $CC_quoted"* | "$CC_quoted "* | " $CC_quoted_expanded "* | "$CC_quoted_expanded "*) ;; # Blanks at the start of $base_compile will cause this to fail # if we don't check for them as well. *) for z in $available_tags; do if $GREP "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$progpath" > /dev/null; then # Evaluate the configuration. eval "`$SED -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $progpath`" CC_quoted= for arg in $CC; do # Double-quote args containing other shell metacharacters. func_append_quoted CC_quoted "$arg" done CC_expanded=`func_echo_all $CC` CC_quoted_expanded=`func_echo_all $CC_quoted` case "$@ " in " $CC "* | "$CC "* | " $CC_expanded "* | "$CC_expanded "* | \ " $CC_quoted"* | "$CC_quoted "* | " $CC_quoted_expanded "* | "$CC_quoted_expanded "*) # The compiler in the base compile command matches # the one in the tagged configuration. # Assume this is the tagged configuration we want. tagname=$z break ;; esac fi done # If $tagname still isn't set, then no tagged configuration # was found and let the user know that the "--tag" command # line option must be used. if test -z "$tagname"; then func_echo "unable to infer tagged configuration" func_fatal_error "specify a tag with '--tag'" # else # func_verbose "using $tagname tagged configuration" fi ;; esac fi } # func_write_libtool_object output_name pic_name nonpic_name # Create a libtool object file (analogous to a ".la" file), # but don't create it if we're doing a dry run. func_write_libtool_object () { write_libobj=$1 if test yes = "$build_libtool_libs"; then write_lobj=\'$2\' else write_lobj=none fi if test yes = "$build_old_libs"; then write_oldobj=\'$3\' else write_oldobj=none fi $opt_dry_run || { cat >${write_libobj}T </dev/null` if test "$?" -eq 0 && test -n "$func_convert_core_file_wine_to_w32_tmp"; then func_convert_core_file_wine_to_w32_result=`$ECHO "$func_convert_core_file_wine_to_w32_tmp" | $SED -e "$sed_naive_backslashify"` else func_convert_core_file_wine_to_w32_result= fi fi } # end: func_convert_core_file_wine_to_w32 # func_convert_core_path_wine_to_w32 ARG # Helper function used by path conversion functions when $build is *nix, and # $host is mingw, cygwin, or some other w32 environment. Relies on a correctly # configured wine environment available, with the winepath program in $build's # $PATH. Assumes ARG has no leading or trailing path separator characters. # # ARG is path to be converted from $build format to win32. # Result is available in $func_convert_core_path_wine_to_w32_result. # Unconvertible file (directory) names in ARG are skipped; if no directory names # are convertible, then the result may be empty. func_convert_core_path_wine_to_w32 () { $debug_cmd # unfortunately, winepath doesn't convert paths, only file names func_convert_core_path_wine_to_w32_result= if test -n "$1"; then oldIFS=$IFS IFS=: for func_convert_core_path_wine_to_w32_f in $1; do IFS=$oldIFS func_convert_core_file_wine_to_w32 "$func_convert_core_path_wine_to_w32_f" if test -n "$func_convert_core_file_wine_to_w32_result"; then if test -z "$func_convert_core_path_wine_to_w32_result"; then func_convert_core_path_wine_to_w32_result=$func_convert_core_file_wine_to_w32_result else func_append func_convert_core_path_wine_to_w32_result ";$func_convert_core_file_wine_to_w32_result" fi fi done IFS=$oldIFS fi } # end: func_convert_core_path_wine_to_w32 # func_cygpath ARGS... # Wrapper around calling the cygpath program via LT_CYGPATH. This is used when # when (1) $build is *nix and Cygwin is hosted via a wine environment; or (2) # $build is MSYS and $host is Cygwin, or (3) $build is Cygwin. In case (1) or # (2), returns the Cygwin file name or path in func_cygpath_result (input # file name or path is assumed to be in w32 format, as previously converted # from $build's *nix or MSYS format). In case (3), returns the w32 file name # or path in func_cygpath_result (input file name or path is assumed to be in # Cygwin format). Returns an empty string on error. # # ARGS are passed to cygpath, with the last one being the file name or path to # be converted. # # Specify the absolute *nix (or w32) name to cygpath in the LT_CYGPATH # environment variable; do not put it in $PATH. func_cygpath () { $debug_cmd if test -n "$LT_CYGPATH" && test -f "$LT_CYGPATH"; then func_cygpath_result=`$LT_CYGPATH "$@" 2>/dev/null` if test "$?" -ne 0; then # on failure, ensure result is empty func_cygpath_result= fi else func_cygpath_result= func_error "LT_CYGPATH is empty or specifies non-existent file: '$LT_CYGPATH'" fi } #end: func_cygpath # func_convert_core_msys_to_w32 ARG # Convert file name or path ARG from MSYS format to w32 format. Return # result in func_convert_core_msys_to_w32_result. func_convert_core_msys_to_w32 () { $debug_cmd # awkward: cmd appends spaces to result func_convert_core_msys_to_w32_result=`( cmd //c echo "$1" ) 2>/dev/null | $SED -e 's/[ ]*$//' -e "$sed_naive_backslashify"` } #end: func_convert_core_msys_to_w32 # func_convert_file_check ARG1 ARG2 # Verify that ARG1 (a file name in $build format) was converted to $host # format in ARG2. Otherwise, emit an error message, but continue (resetting # func_to_host_file_result to ARG1). func_convert_file_check () { $debug_cmd if test -z "$2" && test -n "$1"; then func_error "Could not determine host file name corresponding to" func_error " '$1'" func_error "Continuing, but uninstalled executables may not work." # Fallback: func_to_host_file_result=$1 fi } # end func_convert_file_check # func_convert_path_check FROM_PATHSEP TO_PATHSEP FROM_PATH TO_PATH # Verify that FROM_PATH (a path in $build format) was converted to $host # format in TO_PATH. Otherwise, emit an error message, but continue, resetting # func_to_host_file_result to a simplistic fallback value (see below). func_convert_path_check () { $debug_cmd if test -z "$4" && test -n "$3"; then func_error "Could not determine the host path corresponding to" func_error " '$3'" func_error "Continuing, but uninstalled executables may not work." # Fallback. This is a deliberately simplistic "conversion" and # should not be "improved". See libtool.info. if test "x$1" != "x$2"; then lt_replace_pathsep_chars="s|$1|$2|g" func_to_host_path_result=`echo "$3" | $SED -e "$lt_replace_pathsep_chars"` else func_to_host_path_result=$3 fi fi } # end func_convert_path_check # func_convert_path_front_back_pathsep FRONTPAT BACKPAT REPL ORIG # Modifies func_to_host_path_result by prepending REPL if ORIG matches FRONTPAT # and appending REPL if ORIG matches BACKPAT. func_convert_path_front_back_pathsep () { $debug_cmd case $4 in $1 ) func_to_host_path_result=$3$func_to_host_path_result ;; esac case $4 in $2 ) func_append func_to_host_path_result "$3" ;; esac } # end func_convert_path_front_back_pathsep ################################################## # $build to $host FILE NAME CONVERSION FUNCTIONS # ################################################## # invoked via '$to_host_file_cmd ARG' # # In each case, ARG is the path to be converted from $build to $host format. # Result will be available in $func_to_host_file_result. # func_to_host_file ARG # Converts the file name ARG from $build format to $host format. Return result # in func_to_host_file_result. func_to_host_file () { $debug_cmd $to_host_file_cmd "$1" } # end func_to_host_file # func_to_tool_file ARG LAZY # converts the file name ARG from $build format to toolchain format. Return # result in func_to_tool_file_result. If the conversion in use is listed # in (the comma separated) LAZY, no conversion takes place. func_to_tool_file () { $debug_cmd case ,$2, in *,"$to_tool_file_cmd",*) func_to_tool_file_result=$1 ;; *) $to_tool_file_cmd "$1" func_to_tool_file_result=$func_to_host_file_result ;; esac } # end func_to_tool_file # func_convert_file_noop ARG # Copy ARG to func_to_host_file_result. func_convert_file_noop () { func_to_host_file_result=$1 } # end func_convert_file_noop # func_convert_file_msys_to_w32 ARG # Convert file name ARG from (mingw) MSYS to (mingw) w32 format; automatic # conversion to w32 is not available inside the cwrapper. Returns result in # func_to_host_file_result. func_convert_file_msys_to_w32 () { $debug_cmd func_to_host_file_result=$1 if test -n "$1"; then func_convert_core_msys_to_w32 "$1" func_to_host_file_result=$func_convert_core_msys_to_w32_result fi func_convert_file_check "$1" "$func_to_host_file_result" } # end func_convert_file_msys_to_w32 # func_convert_file_cygwin_to_w32 ARG # Convert file name ARG from Cygwin to w32 format. Returns result in # func_to_host_file_result. func_convert_file_cygwin_to_w32 () { $debug_cmd func_to_host_file_result=$1 if test -n "$1"; then # because $build is cygwin, we call "the" cygpath in $PATH; no need to use # LT_CYGPATH in this case. func_to_host_file_result=`cygpath -m "$1"` fi func_convert_file_check "$1" "$func_to_host_file_result" } # end func_convert_file_cygwin_to_w32 # func_convert_file_nix_to_w32 ARG # Convert file name ARG from *nix to w32 format. Requires a wine environment # and a working winepath. Returns result in func_to_host_file_result. func_convert_file_nix_to_w32 () { $debug_cmd func_to_host_file_result=$1 if test -n "$1"; then func_convert_core_file_wine_to_w32 "$1" func_to_host_file_result=$func_convert_core_file_wine_to_w32_result fi func_convert_file_check "$1" "$func_to_host_file_result" } # end func_convert_file_nix_to_w32 # func_convert_file_msys_to_cygwin ARG # Convert file name ARG from MSYS to Cygwin format. Requires LT_CYGPATH set. # Returns result in func_to_host_file_result. func_convert_file_msys_to_cygwin () { $debug_cmd func_to_host_file_result=$1 if test -n "$1"; then func_convert_core_msys_to_w32 "$1" func_cygpath -u "$func_convert_core_msys_to_w32_result" func_to_host_file_result=$func_cygpath_result fi func_convert_file_check "$1" "$func_to_host_file_result" } # end func_convert_file_msys_to_cygwin # func_convert_file_nix_to_cygwin ARG # Convert file name ARG from *nix to Cygwin format. Requires Cygwin installed # in a wine environment, working winepath, and LT_CYGPATH set. Returns result # in func_to_host_file_result. func_convert_file_nix_to_cygwin () { $debug_cmd func_to_host_file_result=$1 if test -n "$1"; then # convert from *nix to w32, then use cygpath to convert from w32 to cygwin. func_convert_core_file_wine_to_w32 "$1" func_cygpath -u "$func_convert_core_file_wine_to_w32_result" func_to_host_file_result=$func_cygpath_result fi func_convert_file_check "$1" "$func_to_host_file_result" } # end func_convert_file_nix_to_cygwin ############################################# # $build to $host PATH CONVERSION FUNCTIONS # ############################################# # invoked via '$to_host_path_cmd ARG' # # In each case, ARG is the path to be converted from $build to $host format. # The result will be available in $func_to_host_path_result. # # Path separators are also converted from $build format to $host format. If # ARG begins or ends with a path separator character, it is preserved (but # converted to $host format) on output. # # All path conversion functions are named using the following convention: # file name conversion function : func_convert_file_X_to_Y () # path conversion function : func_convert_path_X_to_Y () # where, for any given $build/$host combination the 'X_to_Y' value is the # same. If conversion functions are added for new $build/$host combinations, # the two new functions must follow this pattern, or func_init_to_host_path_cmd # will break. # func_init_to_host_path_cmd # Ensures that function "pointer" variable $to_host_path_cmd is set to the # appropriate value, based on the value of $to_host_file_cmd. to_host_path_cmd= func_init_to_host_path_cmd () { $debug_cmd if test -z "$to_host_path_cmd"; then func_stripname 'func_convert_file_' '' "$to_host_file_cmd" to_host_path_cmd=func_convert_path_$func_stripname_result fi } # func_to_host_path ARG # Converts the path ARG from $build format to $host format. Return result # in func_to_host_path_result. func_to_host_path () { $debug_cmd func_init_to_host_path_cmd $to_host_path_cmd "$1" } # end func_to_host_path # func_convert_path_noop ARG # Copy ARG to func_to_host_path_result. func_convert_path_noop () { func_to_host_path_result=$1 } # end func_convert_path_noop # func_convert_path_msys_to_w32 ARG # Convert path ARG from (mingw) MSYS to (mingw) w32 format; automatic # conversion to w32 is not available inside the cwrapper. Returns result in # func_to_host_path_result. func_convert_path_msys_to_w32 () { $debug_cmd func_to_host_path_result=$1 if test -n "$1"; then # Remove leading and trailing path separator characters from ARG. MSYS # behavior is inconsistent here; cygpath turns them into '.;' and ';.'; # and winepath ignores them completely. func_stripname : : "$1" func_to_host_path_tmp1=$func_stripname_result func_convert_core_msys_to_w32 "$func_to_host_path_tmp1" func_to_host_path_result=$func_convert_core_msys_to_w32_result func_convert_path_check : ";" \ "$func_to_host_path_tmp1" "$func_to_host_path_result" func_convert_path_front_back_pathsep ":*" "*:" ";" "$1" fi } # end func_convert_path_msys_to_w32 # func_convert_path_cygwin_to_w32 ARG # Convert path ARG from Cygwin to w32 format. Returns result in # func_to_host_file_result. func_convert_path_cygwin_to_w32 () { $debug_cmd func_to_host_path_result=$1 if test -n "$1"; then # See func_convert_path_msys_to_w32: func_stripname : : "$1" func_to_host_path_tmp1=$func_stripname_result func_to_host_path_result=`cygpath -m -p "$func_to_host_path_tmp1"` func_convert_path_check : ";" \ "$func_to_host_path_tmp1" "$func_to_host_path_result" func_convert_path_front_back_pathsep ":*" "*:" ";" "$1" fi } # end func_convert_path_cygwin_to_w32 # func_convert_path_nix_to_w32 ARG # Convert path ARG from *nix to w32 format. Requires a wine environment and # a working winepath. Returns result in func_to_host_file_result. func_convert_path_nix_to_w32 () { $debug_cmd func_to_host_path_result=$1 if test -n "$1"; then # See func_convert_path_msys_to_w32: func_stripname : : "$1" func_to_host_path_tmp1=$func_stripname_result func_convert_core_path_wine_to_w32 "$func_to_host_path_tmp1" func_to_host_path_result=$func_convert_core_path_wine_to_w32_result func_convert_path_check : ";" \ "$func_to_host_path_tmp1" "$func_to_host_path_result" func_convert_path_front_back_pathsep ":*" "*:" ";" "$1" fi } # end func_convert_path_nix_to_w32 # func_convert_path_msys_to_cygwin ARG # Convert path ARG from MSYS to Cygwin format. Requires LT_CYGPATH set. # Returns result in func_to_host_file_result. func_convert_path_msys_to_cygwin () { $debug_cmd func_to_host_path_result=$1 if test -n "$1"; then # See func_convert_path_msys_to_w32: func_stripname : : "$1" func_to_host_path_tmp1=$func_stripname_result func_convert_core_msys_to_w32 "$func_to_host_path_tmp1" func_cygpath -u -p "$func_convert_core_msys_to_w32_result" func_to_host_path_result=$func_cygpath_result func_convert_path_check : : \ "$func_to_host_path_tmp1" "$func_to_host_path_result" func_convert_path_front_back_pathsep ":*" "*:" : "$1" fi } # end func_convert_path_msys_to_cygwin # func_convert_path_nix_to_cygwin ARG # Convert path ARG from *nix to Cygwin format. Requires Cygwin installed in a # a wine environment, working winepath, and LT_CYGPATH set. Returns result in # func_to_host_file_result. func_convert_path_nix_to_cygwin () { $debug_cmd func_to_host_path_result=$1 if test -n "$1"; then # Remove leading and trailing path separator characters from # ARG. msys behavior is inconsistent here, cygpath turns them # into '.;' and ';.', and winepath ignores them completely. func_stripname : : "$1" func_to_host_path_tmp1=$func_stripname_result func_convert_core_path_wine_to_w32 "$func_to_host_path_tmp1" func_cygpath -u -p "$func_convert_core_path_wine_to_w32_result" func_to_host_path_result=$func_cygpath_result func_convert_path_check : : \ "$func_to_host_path_tmp1" "$func_to_host_path_result" func_convert_path_front_back_pathsep ":*" "*:" : "$1" fi } # end func_convert_path_nix_to_cygwin # func_dll_def_p FILE # True iff FILE is a Windows DLL '.def' file. # Keep in sync with _LT_DLL_DEF_P in libtool.m4 func_dll_def_p () { $debug_cmd func_dll_def_p_tmp=`$SED -n \ -e 's/^[ ]*//' \ -e '/^\(;.*\)*$/d' \ -e 's/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p' \ -e q \ "$1"` test DEF = "$func_dll_def_p_tmp" } # func_mode_compile arg... func_mode_compile () { $debug_cmd # Get the compilation command and the source file. base_compile= srcfile=$nonopt # always keep a non-empty value in "srcfile" suppress_opt=yes suppress_output= arg_mode=normal libobj= later= pie_flag= for arg do case $arg_mode in arg ) # do not "continue". Instead, add this to base_compile lastarg=$arg arg_mode=normal ;; target ) libobj=$arg arg_mode=normal continue ;; normal ) # Accept any command-line options. case $arg in -o) test -n "$libobj" && \ func_fatal_error "you cannot specify '-o' more than once" arg_mode=target continue ;; -pie | -fpie | -fPIE) func_append pie_flag " $arg" continue ;; -shared | -static | -prefer-pic | -prefer-non-pic) func_append later " $arg" continue ;; -no-suppress) suppress_opt=no continue ;; -Xcompiler) arg_mode=arg # the next one goes into the "base_compile" arg list continue # The current "srcfile" will either be retained or ;; # replaced later. I would guess that would be a bug. -Wc,*) func_stripname '-Wc,' '' "$arg" args=$func_stripname_result lastarg= save_ifs=$IFS; IFS=, for arg in $args; do IFS=$save_ifs func_append_quoted lastarg "$arg" done IFS=$save_ifs func_stripname ' ' '' "$lastarg" lastarg=$func_stripname_result # Add the arguments to base_compile. func_append base_compile " $lastarg" continue ;; *) # Accept the current argument as the source file. # The previous "srcfile" becomes the current argument. # lastarg=$srcfile srcfile=$arg ;; esac # case $arg ;; esac # case $arg_mode # Aesthetically quote the previous argument. func_append_quoted base_compile "$lastarg" done # for arg case $arg_mode in arg) func_fatal_error "you must specify an argument for -Xcompile" ;; target) func_fatal_error "you must specify a target with '-o'" ;; *) # Get the name of the library object. test -z "$libobj" && { func_basename "$srcfile" libobj=$func_basename_result } ;; esac # Recognize several different file suffixes. # If the user specifies -o file.o, it is replaced with file.lo case $libobj in *.[cCFSifmso] | \ *.ada | *.adb | *.ads | *.asm | \ *.c++ | *.cc | *.ii | *.class | *.cpp | *.cxx | \ *.[fF][09]? | *.for | *.java | *.go | *.obj | *.sx | *.cu | *.cup) func_xform "$libobj" libobj=$func_xform_result ;; esac case $libobj in *.lo) func_lo2o "$libobj"; obj=$func_lo2o_result ;; *) func_fatal_error "cannot determine name of library object from '$libobj'" ;; esac func_infer_tag $base_compile for arg in $later; do case $arg in -shared) test yes = "$build_libtool_libs" \ || func_fatal_configuration "cannot build a shared library" build_old_libs=no continue ;; -static) build_libtool_libs=no build_old_libs=yes continue ;; -prefer-pic) pic_mode=yes continue ;; -prefer-non-pic) pic_mode=no continue ;; esac done func_quote_for_eval "$libobj" test "X$libobj" != "X$func_quote_for_eval_result" \ && $ECHO "X$libobj" | $GREP '[]~#^*{};<>?"'"'"' &()|`$[]' \ && func_warning "libobj name '$libobj' may not contain shell special characters." func_dirname_and_basename "$obj" "/" "" objname=$func_basename_result xdir=$func_dirname_result lobj=$xdir$objdir/$objname test -z "$base_compile" && \ func_fatal_help "you must specify a compilation command" # Delete any leftover library objects. if test yes = "$build_old_libs"; then removelist="$obj $lobj $libobj ${libobj}T" else removelist="$lobj $libobj ${libobj}T" fi # On Cygwin there's no "real" PIC flag so we must build both object types case $host_os in cygwin* | mingw* | pw32* | os2* | cegcc*) pic_mode=default ;; esac if test no = "$pic_mode" && test pass_all != "$deplibs_check_method"; then # non-PIC code in shared libraries is not supported pic_mode=default fi # Calculate the filename of the output object if compiler does # not support -o with -c if test no = "$compiler_c_o"; then output_obj=`$ECHO "$srcfile" | $SED 's%^.*/%%; s%\.[^.]*$%%'`.$objext lockfile=$output_obj.lock else output_obj= need_locks=no lockfile= fi # Lock this critical section if it is needed # We use this script file to make the link, it avoids creating a new file if test yes = "$need_locks"; then until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do func_echo "Waiting for $lockfile to be removed" sleep 2 done elif test warn = "$need_locks"; then if test -f "$lockfile"; then $ECHO "\ *** ERROR, $lockfile exists and contains: `cat $lockfile 2>/dev/null` This indicates that another process is trying to use the same temporary object file, and libtool could not work around it because your compiler does not support '-c' and '-o' together. If you repeat this compilation, it may succeed, by chance, but you had better avoid parallel builds (make -j) in this platform, or get a better compiler." $opt_dry_run || $RM $removelist exit $EXIT_FAILURE fi func_append removelist " $output_obj" $ECHO "$srcfile" > "$lockfile" fi $opt_dry_run || $RM $removelist func_append removelist " $lockfile" trap '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' 1 2 15 func_to_tool_file "$srcfile" func_convert_file_msys_to_w32 srcfile=$func_to_tool_file_result func_quote_for_eval "$srcfile" qsrcfile=$func_quote_for_eval_result # Only build a PIC object if we are building libtool libraries. if test yes = "$build_libtool_libs"; then # Without this assignment, base_compile gets emptied. fbsd_hideous_sh_bug=$base_compile if test no != "$pic_mode"; then command="$base_compile $qsrcfile $pic_flag" else # Don't build PIC code command="$base_compile $qsrcfile" fi func_mkdir_p "$xdir$objdir" if test -z "$output_obj"; then # Place PIC objects in $objdir func_append command " -o $lobj" fi func_show_eval_locale "$command" \ 'test -n "$output_obj" && $RM $removelist; exit $EXIT_FAILURE' if test warn = "$need_locks" && test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then $ECHO "\ *** ERROR, $lockfile contains: `cat $lockfile 2>/dev/null` but it should contain: $srcfile This indicates that another process is trying to use the same temporary object file, and libtool could not work around it because your compiler does not support '-c' and '-o' together. If you repeat this compilation, it may succeed, by chance, but you had better avoid parallel builds (make -j) in this platform, or get a better compiler." $opt_dry_run || $RM $removelist exit $EXIT_FAILURE fi # Just move the object if needed, then go on to compile the next one if test -n "$output_obj" && test "X$output_obj" != "X$lobj"; then func_show_eval '$MV "$output_obj" "$lobj"' \ 'error=$?; $opt_dry_run || $RM $removelist; exit $error' fi # Allow error messages only from the first compilation. if test yes = "$suppress_opt"; then suppress_output=' >/dev/null 2>&1' fi fi # Only build a position-dependent object if we build old libraries. if test yes = "$build_old_libs"; then if test yes != "$pic_mode"; then # Don't build PIC code command="$base_compile $qsrcfile$pie_flag" else command="$base_compile $qsrcfile $pic_flag" fi if test yes = "$compiler_c_o"; then func_append command " -o $obj" fi # Suppress compiler output if we already did a PIC compilation. func_append command "$suppress_output" func_show_eval_locale "$command" \ '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' if test warn = "$need_locks" && test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then $ECHO "\ *** ERROR, $lockfile contains: `cat $lockfile 2>/dev/null` but it should contain: $srcfile This indicates that another process is trying to use the same temporary object file, and libtool could not work around it because your compiler does not support '-c' and '-o' together. If you repeat this compilation, it may succeed, by chance, but you had better avoid parallel builds (make -j) in this platform, or get a better compiler." $opt_dry_run || $RM $removelist exit $EXIT_FAILURE fi # Just move the object if needed if test -n "$output_obj" && test "X$output_obj" != "X$obj"; then func_show_eval '$MV "$output_obj" "$obj"' \ 'error=$?; $opt_dry_run || $RM $removelist; exit $error' fi fi $opt_dry_run || { func_write_libtool_object "$libobj" "$objdir/$objname" "$objname" # Unlock the critical section if it was locked if test no != "$need_locks"; then removelist=$lockfile $RM "$lockfile" fi } exit $EXIT_SUCCESS } $opt_help || { test compile = "$opt_mode" && func_mode_compile ${1+"$@"} } func_mode_help () { # We need to display help for each of the modes. case $opt_mode in "") # Generic help is extracted from the usage comments # at the start of this file. func_help ;; clean) $ECHO \ "Usage: $progname [OPTION]... --mode=clean RM [RM-OPTION]... FILE... Remove files from the build directory. RM is the name of the program to use to delete files associated with each FILE (typically '/bin/rm'). RM-OPTIONS are options (such as '-f') to be passed to RM. If FILE is a libtool library, object or program, all the files associated with it are deleted. Otherwise, only FILE itself is deleted using RM." ;; compile) $ECHO \ "Usage: $progname [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE Compile a source file into a libtool library object. This mode accepts the following additional options: -o OUTPUT-FILE set the output file name to OUTPUT-FILE -no-suppress do not suppress compiler output for multiple passes -prefer-pic try to build PIC objects only -prefer-non-pic try to build non-PIC objects only -shared do not build a '.o' file suitable for static linking -static only build a '.o' file suitable for static linking -Wc,FLAG pass FLAG directly to the compiler COMPILE-COMMAND is a command to be used in creating a 'standard' object file from the given SOURCEFILE. The output file name is determined by removing the directory component from SOURCEFILE, then substituting the C source code suffix '.c' with the library object suffix, '.lo'." ;; execute) $ECHO \ "Usage: $progname [OPTION]... --mode=execute COMMAND [ARGS]... Automatically set library path, then run a program. This mode accepts the following additional options: -dlopen FILE add the directory containing FILE to the library path This mode sets the library path environment variable according to '-dlopen' flags. If any of the ARGS are libtool executable wrappers, then they are translated into their corresponding uninstalled binary, and any of their required library directories are added to the library path. Then, COMMAND is executed, with ARGS as arguments." ;; finish) $ECHO \ "Usage: $progname [OPTION]... --mode=finish [LIBDIR]... Complete the installation of libtool libraries. Each LIBDIR is a directory that contains libtool libraries. The commands that this mode executes may require superuser privileges. Use the '--dry-run' option if you just want to see what would be executed." ;; install) $ECHO \ "Usage: $progname [OPTION]... --mode=install INSTALL-COMMAND... Install executables or libraries. INSTALL-COMMAND is the installation command. The first component should be either the 'install' or 'cp' program. The following components of INSTALL-COMMAND are treated specially: -inst-prefix-dir PREFIX-DIR Use PREFIX-DIR as a staging area for installation The rest of the components are interpreted as arguments to that command (only BSD-compatible install options are recognized)." ;; link) $ECHO \ "Usage: $progname [OPTION]... --mode=link LINK-COMMAND... Link object files or libraries together to form another library, or to create an executable program. LINK-COMMAND is a command using the C compiler that you would use to create a program from several object files. The following components of LINK-COMMAND are treated specially: -all-static do not do any dynamic linking at all -avoid-version do not add a version suffix if possible -bindir BINDIR specify path to binaries directory (for systems where libraries must be found in the PATH setting at runtime) -dlopen FILE '-dlpreopen' FILE if it cannot be dlopened at runtime -dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols -export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3) -export-symbols SYMFILE try to export only the symbols listed in SYMFILE -export-symbols-regex REGEX try to export only the symbols matching REGEX -LLIBDIR search LIBDIR for required installed libraries -lNAME OUTPUT-FILE requires the installed library libNAME -module build a library that can dlopened -no-fast-install disable the fast-install mode -no-install link a not-installable executable -no-undefined declare that a library does not refer to external symbols -o OUTPUT-FILE create OUTPUT-FILE from the specified objects -objectlist FILE use a list of object files found in FILE to specify objects -os2dllname NAME force a short DLL name on OS/2 (no effect on other OSes) -precious-files-regex REGEX don't remove output files matching REGEX -release RELEASE specify package release information -rpath LIBDIR the created library will eventually be installed in LIBDIR -R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries -shared only do dynamic linking of libtool libraries -shrext SUFFIX override the standard shared library file extension -static do not do any dynamic linking of uninstalled libtool libraries -static-libtool-libs do not do any dynamic linking of libtool libraries -version-info CURRENT[:REVISION[:AGE]] specify library version info [each variable defaults to 0] -weak LIBNAME declare that the target provides the LIBNAME interface -Wc,FLAG -Xcompiler FLAG pass linker-specific FLAG directly to the compiler -Wl,FLAG -Xlinker FLAG pass linker-specific FLAG directly to the linker -XCClinker FLAG pass link-specific FLAG to the compiler driver (CC) All other options (arguments beginning with '-') are ignored. Every other argument is treated as a filename. Files ending in '.la' are treated as uninstalled libtool libraries, other files are standard or library object files. If the OUTPUT-FILE ends in '.la', then a libtool library is created, only library objects ('.lo' files) may be specified, and '-rpath' is required, except when creating a convenience library. If OUTPUT-FILE ends in '.a' or '.lib', then a standard library is created using 'ar' and 'ranlib', or on Windows using 'lib'. If OUTPUT-FILE ends in '.lo' or '.$objext', then a reloadable object file is created, otherwise an executable program is created." ;; uninstall) $ECHO \ "Usage: $progname [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE... Remove libraries from an installation directory. RM is the name of the program to use to delete files associated with each FILE (typically '/bin/rm'). RM-OPTIONS are options (such as '-f') to be passed to RM. If FILE is a libtool library, all the files associated with it are deleted. Otherwise, only FILE itself is deleted using RM." ;; *) func_fatal_help "invalid operation mode '$opt_mode'" ;; esac echo $ECHO "Try '$progname --help' for more information about other modes." } # Now that we've collected a possible --mode arg, show help if necessary if $opt_help; then if test : = "$opt_help"; then func_mode_help else { func_help noexit for opt_mode in compile link execute install finish uninstall clean; do func_mode_help done } | $SED -n '1p; 2,$s/^Usage:/ or: /p' { func_help noexit for opt_mode in compile link execute install finish uninstall clean; do echo func_mode_help done } | $SED '1d /^When reporting/,/^Report/{ H d } $x /information about other modes/d /more detailed .*MODE/d s/^Usage:.*--mode=\([^ ]*\) .*/Description of \1 mode:/' fi exit $? fi # func_mode_execute arg... func_mode_execute () { $debug_cmd # The first argument is the command name. cmd=$nonopt test -z "$cmd" && \ func_fatal_help "you must specify a COMMAND" # Handle -dlopen flags immediately. for file in $opt_dlopen; do test -f "$file" \ || func_fatal_help "'$file' is not a file" dir= case $file in *.la) func_resolve_sysroot "$file" file=$func_resolve_sysroot_result # Check to see that this really is a libtool archive. func_lalib_unsafe_p "$file" \ || func_fatal_help "'$lib' is not a valid libtool archive" # Read the libtool library. dlname= library_names= func_source "$file" # Skip this library if it cannot be dlopened. if test -z "$dlname"; then # Warn if it was a shared library. test -n "$library_names" && \ func_warning "'$file' was not linked with '-export-dynamic'" continue fi func_dirname "$file" "" "." dir=$func_dirname_result if test -f "$dir/$objdir/$dlname"; then func_append dir "/$objdir" else if test ! -f "$dir/$dlname"; then func_fatal_error "cannot find '$dlname' in '$dir' or '$dir/$objdir'" fi fi ;; *.lo) # Just add the directory containing the .lo file. func_dirname "$file" "" "." dir=$func_dirname_result ;; *) func_warning "'-dlopen' is ignored for non-libtool libraries and objects" continue ;; esac # Get the absolute pathname. absdir=`cd "$dir" && pwd` test -n "$absdir" && dir=$absdir # Now add the directory to shlibpath_var. if eval "test -z \"\$$shlibpath_var\""; then eval "$shlibpath_var=\"\$dir\"" else eval "$shlibpath_var=\"\$dir:\$$shlibpath_var\"" fi done # This variable tells wrapper scripts just to set shlibpath_var # rather than running their programs. libtool_execute_magic=$magic # Check if any of the arguments is a wrapper script. args= for file do case $file in -* | *.la | *.lo ) ;; *) # Do a test to see if this is really a libtool program. if func_ltwrapper_script_p "$file"; then func_source "$file" # Transform arg to wrapped name. file=$progdir/$program elif func_ltwrapper_executable_p "$file"; then func_ltwrapper_scriptname "$file" func_source "$func_ltwrapper_scriptname_result" # Transform arg to wrapped name. file=$progdir/$program fi ;; esac # Quote arguments (to preserve shell metacharacters). func_append_quoted args "$file" done if $opt_dry_run; then # Display what would be done. if test -n "$shlibpath_var"; then eval "\$ECHO \"\$shlibpath_var=\$$shlibpath_var\"" echo "export $shlibpath_var" fi $ECHO "$cmd$args" exit $EXIT_SUCCESS else if test -n "$shlibpath_var"; then # Export the shlibpath_var. eval "export $shlibpath_var" fi # Restore saved environment variables for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES do eval "if test \"\${save_$lt_var+set}\" = set; then $lt_var=\$save_$lt_var; export $lt_var else $lt_unset $lt_var fi" done # Now prepare to actually exec the command. exec_cmd=\$cmd$args fi } test execute = "$opt_mode" && func_mode_execute ${1+"$@"} # func_mode_finish arg... func_mode_finish () { $debug_cmd libs= libdirs= admincmds= for opt in "$nonopt" ${1+"$@"} do if test -d "$opt"; then func_append libdirs " $opt" elif test -f "$opt"; then if func_lalib_unsafe_p "$opt"; then func_append libs " $opt" else func_warning "'$opt' is not a valid libtool archive" fi else func_fatal_error "invalid argument '$opt'" fi done if test -n "$libs"; then if test -n "$lt_sysroot"; then sysroot_regex=`$ECHO "$lt_sysroot" | $SED "$sed_make_literal_regex"` sysroot_cmd="s/\([ ']\)$sysroot_regex/\1/g;" else sysroot_cmd= fi # Remove sysroot references if $opt_dry_run; then for lib in $libs; do echo "removing references to $lt_sysroot and '=' prefixes from $lib" done else tmpdir=`func_mktempdir` for lib in $libs; do $SED -e "$sysroot_cmd s/\([ ']-[LR]\)=/\1/g; s/\([ ']\)=/\1/g" $lib \ > $tmpdir/tmp-la mv -f $tmpdir/tmp-la $lib done ${RM}r "$tmpdir" fi fi if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then for libdir in $libdirs; do if test -n "$finish_cmds"; then # Do each command in the finish commands. func_execute_cmds "$finish_cmds" 'admincmds="$admincmds '"$cmd"'"' fi if test -n "$finish_eval"; then # Do the single finish_eval. eval cmds=\"$finish_eval\" $opt_dry_run || eval "$cmds" || func_append admincmds " $cmds" fi done fi # Exit here if they wanted silent mode. $opt_quiet && exit $EXIT_SUCCESS if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then echo "----------------------------------------------------------------------" echo "Libraries have been installed in:" for libdir in $libdirs; do $ECHO " $libdir" done echo echo "If you ever happen to want to link against installed libraries" echo "in a given directory, LIBDIR, you must either use libtool, and" echo "specify the full pathname of the library, or use the '-LLIBDIR'" echo "flag during linking and do at least one of the following:" if test -n "$shlibpath_var"; then echo " - add LIBDIR to the '$shlibpath_var' environment variable" echo " during execution" fi if test -n "$runpath_var"; then echo " - add LIBDIR to the '$runpath_var' environment variable" echo " during linking" fi if test -n "$hardcode_libdir_flag_spec"; then libdir=LIBDIR eval flag=\"$hardcode_libdir_flag_spec\" $ECHO " - use the '$flag' linker flag" fi if test -n "$admincmds"; then $ECHO " - have your system administrator run these commands:$admincmds" fi if test -f /etc/ld.so.conf; then echo " - have your system administrator add LIBDIR to '/etc/ld.so.conf'" fi echo echo "See any operating system documentation about shared libraries for" case $host in solaris2.[6789]|solaris2.1[0-9]) echo "more information, such as the ld(1), crle(1) and ld.so(8) manual" echo "pages." ;; *) echo "more information, such as the ld(1) and ld.so(8) manual pages." ;; esac echo "----------------------------------------------------------------------" fi exit $EXIT_SUCCESS } test finish = "$opt_mode" && func_mode_finish ${1+"$@"} # func_mode_install arg... func_mode_install () { $debug_cmd # There may be an optional sh(1) argument at the beginning of # install_prog (especially on Windows NT). if test "$SHELL" = "$nonopt" || test /bin/sh = "$nonopt" || # Allow the use of GNU shtool's install command. case $nonopt in *shtool*) :;; *) false;; esac then # Aesthetically quote it. func_quote_for_eval "$nonopt" install_prog="$func_quote_for_eval_result " arg=$1 shift else install_prog= arg=$nonopt fi # The real first argument should be the name of the installation program. # Aesthetically quote it. func_quote_for_eval "$arg" func_append install_prog "$func_quote_for_eval_result" install_shared_prog=$install_prog case " $install_prog " in *[\\\ /]cp\ *) install_cp=: ;; *) install_cp=false ;; esac # We need to accept at least all the BSD install flags. dest= files= opts= prev= install_type= isdir=false stripme= no_mode=: for arg do arg2= if test -n "$dest"; then func_append files " $dest" dest=$arg continue fi case $arg in -d) isdir=: ;; -f) if $install_cp; then :; else prev=$arg fi ;; -g | -m | -o) prev=$arg ;; -s) stripme=" -s" continue ;; -*) ;; *) # If the previous option needed an argument, then skip it. if test -n "$prev"; then if test X-m = "X$prev" && test -n "$install_override_mode"; then arg2=$install_override_mode no_mode=false fi prev= else dest=$arg continue fi ;; esac # Aesthetically quote the argument. func_quote_for_eval "$arg" func_append install_prog " $func_quote_for_eval_result" if test -n "$arg2"; then func_quote_for_eval "$arg2" fi func_append install_shared_prog " $func_quote_for_eval_result" done test -z "$install_prog" && \ func_fatal_help "you must specify an install program" test -n "$prev" && \ func_fatal_help "the '$prev' option requires an argument" if test -n "$install_override_mode" && $no_mode; then if $install_cp; then :; else func_quote_for_eval "$install_override_mode" func_append install_shared_prog " -m $func_quote_for_eval_result" fi fi if test -z "$files"; then if test -z "$dest"; then func_fatal_help "no file or destination specified" else func_fatal_help "you must specify a destination" fi fi # Strip any trailing slash from the destination. func_stripname '' '/' "$dest" dest=$func_stripname_result # Check to see that the destination is a directory. test -d "$dest" && isdir=: if $isdir; then destdir=$dest destname= else func_dirname_and_basename "$dest" "" "." destdir=$func_dirname_result destname=$func_basename_result # Not a directory, so check to see that there is only one file specified. set dummy $files; shift test "$#" -gt 1 && \ func_fatal_help "'$dest' is not a directory" fi case $destdir in [\\/]* | [A-Za-z]:[\\/]*) ;; *) for file in $files; do case $file in *.lo) ;; *) func_fatal_help "'$destdir' must be an absolute directory name" ;; esac done ;; esac # This variable tells wrapper scripts just to set variables rather # than running their programs. libtool_install_magic=$magic staticlibs= future_libdirs= current_libdirs= for file in $files; do # Do each installation. case $file in *.$libext) # Do the static libraries later. func_append staticlibs " $file" ;; *.la) func_resolve_sysroot "$file" file=$func_resolve_sysroot_result # Check to see that this really is a libtool archive. func_lalib_unsafe_p "$file" \ || func_fatal_help "'$file' is not a valid libtool archive" library_names= old_library= relink_command= func_source "$file" # Add the libdir to current_libdirs if it is the destination. if test "X$destdir" = "X$libdir"; then case "$current_libdirs " in *" $libdir "*) ;; *) func_append current_libdirs " $libdir" ;; esac else # Note the libdir as a future libdir. case "$future_libdirs " in *" $libdir "*) ;; *) func_append future_libdirs " $libdir" ;; esac fi func_dirname "$file" "/" "" dir=$func_dirname_result func_append dir "$objdir" if test -n "$relink_command"; then # Determine the prefix the user has applied to our future dir. inst_prefix_dir=`$ECHO "$destdir" | $SED -e "s%$libdir\$%%"` # Don't allow the user to place us outside of our expected # location b/c this prevents finding dependent libraries that # are installed to the same prefix. # At present, this check doesn't affect windows .dll's that # are installed into $libdir/../bin (currently, that works fine) # but it's something to keep an eye on. test "$inst_prefix_dir" = "$destdir" && \ func_fatal_error "error: cannot install '$file' to a directory not ending in $libdir" if test -n "$inst_prefix_dir"; then # Stick the inst_prefix_dir data into the link command. relink_command=`$ECHO "$relink_command" | $SED "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"` else relink_command=`$ECHO "$relink_command" | $SED "s%@inst_prefix_dir@%%"` fi func_warning "relinking '$file'" func_show_eval "$relink_command" \ 'func_fatal_error "error: relink '\''$file'\'' with the above command before installing it"' fi # See the names of the shared library. set dummy $library_names; shift if test -n "$1"; then realname=$1 shift srcname=$realname test -n "$relink_command" && srcname=${realname}T # Install the shared library and build the symlinks. func_show_eval "$install_shared_prog $dir/$srcname $destdir/$realname" \ 'exit $?' tstripme=$stripme case $host_os in cygwin* | mingw* | pw32* | cegcc*) case $realname in *.dll.a) tstripme= ;; esac ;; os2*) case $realname in *_dll.a) tstripme= ;; esac ;; esac if test -n "$tstripme" && test -n "$striplib"; then func_show_eval "$striplib $destdir/$realname" 'exit $?' fi if test "$#" -gt 0; then # Delete the old symlinks, and create new ones. # Try 'ln -sf' first, because the 'ln' binary might depend on # the symlink we replace! Solaris /bin/ln does not understand -f, # so we also need to try rm && ln -s. for linkname do test "$linkname" != "$realname" \ && func_show_eval "(cd $destdir && { $LN_S -f $realname $linkname || { $RM $linkname && $LN_S $realname $linkname; }; })" done fi # Do each command in the postinstall commands. lib=$destdir/$realname func_execute_cmds "$postinstall_cmds" 'exit $?' fi # Install the pseudo-library for information purposes. func_basename "$file" name=$func_basename_result instname=$dir/${name}i func_show_eval "$install_prog $instname $destdir/$name" 'exit $?' # Maybe install the static library, too. test -n "$old_library" && func_append staticlibs " $dir/$old_library" ;; *.lo) # Install (i.e. copy) a libtool object. # Figure out destination file name, if it wasn't already specified. if test -n "$destname"; then destfile=$destdir/$destname else func_basename "$file" destfile=$func_basename_result destfile=$destdir/$destfile fi # Deduce the name of the destination old-style object file. case $destfile in *.lo) func_lo2o "$destfile" staticdest=$func_lo2o_result ;; *.$objext) staticdest=$destfile destfile= ;; *) func_fatal_help "cannot copy a libtool object to '$destfile'" ;; esac # Install the libtool object if requested. test -n "$destfile" && \ func_show_eval "$install_prog $file $destfile" 'exit $?' # Install the old object if enabled. if test yes = "$build_old_libs"; then # Deduce the name of the old-style object file. func_lo2o "$file" staticobj=$func_lo2o_result func_show_eval "$install_prog \$staticobj \$staticdest" 'exit $?' fi exit $EXIT_SUCCESS ;; *) # Figure out destination file name, if it wasn't already specified. if test -n "$destname"; then destfile=$destdir/$destname else func_basename "$file" destfile=$func_basename_result destfile=$destdir/$destfile fi # If the file is missing, and there is a .exe on the end, strip it # because it is most likely a libtool script we actually want to # install stripped_ext= case $file in *.exe) if test ! -f "$file"; then func_stripname '' '.exe' "$file" file=$func_stripname_result stripped_ext=.exe fi ;; esac # Do a test to see if this is really a libtool program. case $host in *cygwin* | *mingw*) if func_ltwrapper_executable_p "$file"; then func_ltwrapper_scriptname "$file" wrapper=$func_ltwrapper_scriptname_result else func_stripname '' '.exe' "$file" wrapper=$func_stripname_result fi ;; *) wrapper=$file ;; esac if func_ltwrapper_script_p "$wrapper"; then notinst_deplibs= relink_command= func_source "$wrapper" # Check the variables that should have been set. test -z "$generated_by_libtool_version" && \ func_fatal_error "invalid libtool wrapper script '$wrapper'" finalize=: for lib in $notinst_deplibs; do # Check to see that each library is installed. libdir= if test -f "$lib"; then func_source "$lib" fi libfile=$libdir/`$ECHO "$lib" | $SED 's%^.*/%%g'` if test -n "$libdir" && test ! -f "$libfile"; then func_warning "'$lib' has not been installed in '$libdir'" finalize=false fi done relink_command= func_source "$wrapper" outputname= if test no = "$fast_install" && test -n "$relink_command"; then $opt_dry_run || { if $finalize; then tmpdir=`func_mktempdir` func_basename "$file$stripped_ext" file=$func_basename_result outputname=$tmpdir/$file # Replace the output file specification. relink_command=`$ECHO "$relink_command" | $SED 's%@OUTPUT@%'"$outputname"'%g'` $opt_quiet || { func_quote_for_expand "$relink_command" eval "func_echo $func_quote_for_expand_result" } if eval "$relink_command"; then : else func_error "error: relink '$file' with the above command before installing it" $opt_dry_run || ${RM}r "$tmpdir" continue fi file=$outputname else func_warning "cannot relink '$file'" fi } else # Install the binary that we compiled earlier. file=`$ECHO "$file$stripped_ext" | $SED "s%\([^/]*\)$%$objdir/\1%"` fi fi # remove .exe since cygwin /usr/bin/install will append another # one anyway case $install_prog,$host in */usr/bin/install*,*cygwin*) case $file:$destfile in *.exe:*.exe) # this is ok ;; *.exe:*) destfile=$destfile.exe ;; *:*.exe) func_stripname '' '.exe' "$destfile" destfile=$func_stripname_result ;; esac ;; esac func_show_eval "$install_prog\$stripme \$file \$destfile" 'exit $?' $opt_dry_run || if test -n "$outputname"; then ${RM}r "$tmpdir" fi ;; esac done for file in $staticlibs; do func_basename "$file" name=$func_basename_result # Set up the ranlib parameters. oldlib=$destdir/$name func_to_tool_file "$oldlib" func_convert_file_msys_to_w32 tool_oldlib=$func_to_tool_file_result func_show_eval "$install_prog \$file \$oldlib" 'exit $?' if test -n "$stripme" && test -n "$old_striplib"; then func_show_eval "$old_striplib $tool_oldlib" 'exit $?' fi # Do each command in the postinstall commands. func_execute_cmds "$old_postinstall_cmds" 'exit $?' done test -n "$future_libdirs" && \ func_warning "remember to run '$progname --finish$future_libdirs'" if test -n "$current_libdirs"; then # Maybe just do a dry run. $opt_dry_run && current_libdirs=" -n$current_libdirs" exec_cmd='$SHELL "$progpath" $preserve_args --finish$current_libdirs' else exit $EXIT_SUCCESS fi } test install = "$opt_mode" && func_mode_install ${1+"$@"} # func_generate_dlsyms outputname originator pic_p # Extract symbols from dlprefiles and create ${outputname}S.o with # a dlpreopen symbol table. func_generate_dlsyms () { $debug_cmd my_outputname=$1 my_originator=$2 my_pic_p=${3-false} my_prefix=`$ECHO "$my_originator" | $SED 's%[^a-zA-Z0-9]%_%g'` my_dlsyms= if test -n "$dlfiles$dlprefiles" || test no != "$dlself"; then if test -n "$NM" && test -n "$global_symbol_pipe"; then my_dlsyms=${my_outputname}S.c else func_error "not configured to extract global symbols from dlpreopened files" fi fi if test -n "$my_dlsyms"; then case $my_dlsyms in "") ;; *.c) # Discover the nlist of each of the dlfiles. nlist=$output_objdir/$my_outputname.nm func_show_eval "$RM $nlist ${nlist}S ${nlist}T" # Parse the name list into a source file. func_verbose "creating $output_objdir/$my_dlsyms" $opt_dry_run || $ECHO > "$output_objdir/$my_dlsyms" "\ /* $my_dlsyms - symbol resolution table for '$my_outputname' dlsym emulation. */ /* Generated by $PROGRAM (GNU $PACKAGE) $VERSION */ #ifdef __cplusplus extern \"C\" { #endif #if defined __GNUC__ && (((__GNUC__ == 4) && (__GNUC_MINOR__ >= 4)) || (__GNUC__ > 4)) #pragma GCC diagnostic ignored \"-Wstrict-prototypes\" #endif /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */ #if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE /* DATA imports from DLLs on WIN32 can't be const, because runtime relocations are performed -- see ld's documentation on pseudo-relocs. */ # define LT_DLSYM_CONST #elif defined __osf__ /* This system does not cope well with relocations in const data. */ # define LT_DLSYM_CONST #else # define LT_DLSYM_CONST const #endif #define STREQ(s1, s2) (strcmp ((s1), (s2)) == 0) /* External symbol declarations for the compiler. */\ " if test yes = "$dlself"; then func_verbose "generating symbol list for '$output'" $opt_dry_run || echo ': @PROGRAM@ ' > "$nlist" # Add our own program objects to the symbol list. progfiles=`$ECHO "$objs$old_deplibs" | $SP2NL | $SED "$lo2o" | $NL2SP` for progfile in $progfiles; do func_to_tool_file "$progfile" func_convert_file_msys_to_w32 func_verbose "extracting global C symbols from '$func_to_tool_file_result'" $opt_dry_run || eval "$NM $func_to_tool_file_result | $global_symbol_pipe >> '$nlist'" done if test -n "$exclude_expsyms"; then $opt_dry_run || { eval '$EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T' eval '$MV "$nlist"T "$nlist"' } fi if test -n "$export_symbols_regex"; then $opt_dry_run || { eval '$EGREP -e "$export_symbols_regex" "$nlist" > "$nlist"T' eval '$MV "$nlist"T "$nlist"' } fi # Prepare the list of exported symbols if test -z "$export_symbols"; then export_symbols=$output_objdir/$outputname.exp $opt_dry_run || { $RM $export_symbols eval "$SED -n -e '/^: @PROGRAM@ $/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"' case $host in *cygwin* | *mingw* | *cegcc* ) eval "echo EXPORTS "'> "$output_objdir/$outputname.def"' eval 'cat "$export_symbols" >> "$output_objdir/$outputname.def"' ;; esac } else $opt_dry_run || { eval "$SED -e 's/\([].[*^$]\)/\\\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$outputname.exp"' eval '$GREP -f "$output_objdir/$outputname.exp" < "$nlist" > "$nlist"T' eval '$MV "$nlist"T "$nlist"' case $host in *cygwin* | *mingw* | *cegcc* ) eval "echo EXPORTS "'> "$output_objdir/$outputname.def"' eval 'cat "$nlist" >> "$output_objdir/$outputname.def"' ;; esac } fi fi for dlprefile in $dlprefiles; do func_verbose "extracting global C symbols from '$dlprefile'" func_basename "$dlprefile" name=$func_basename_result case $host in *cygwin* | *mingw* | *cegcc* ) # if an import library, we need to obtain dlname if func_win32_import_lib_p "$dlprefile"; then func_tr_sh "$dlprefile" eval "curr_lafile=\$libfile_$func_tr_sh_result" dlprefile_dlbasename= if test -n "$curr_lafile" && func_lalib_p "$curr_lafile"; then # Use subshell, to avoid clobbering current variable values dlprefile_dlname=`source "$curr_lafile" && echo "$dlname"` if test -n "$dlprefile_dlname"; then func_basename "$dlprefile_dlname" dlprefile_dlbasename=$func_basename_result else # no lafile. user explicitly requested -dlpreopen . $sharedlib_from_linklib_cmd "$dlprefile" dlprefile_dlbasename=$sharedlib_from_linklib_result fi fi $opt_dry_run || { if test -n "$dlprefile_dlbasename"; then eval '$ECHO ": $dlprefile_dlbasename" >> "$nlist"' else func_warning "Could not compute DLL name from $name" eval '$ECHO ": $name " >> "$nlist"' fi func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32 eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe | $SED -e '/I __imp/d' -e 's/I __nm_/D /;s/_nm__//' >> '$nlist'" } else # not an import lib $opt_dry_run || { eval '$ECHO ": $name " >> "$nlist"' func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32 eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe >> '$nlist'" } fi ;; *) $opt_dry_run || { eval '$ECHO ": $name " >> "$nlist"' func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32 eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe >> '$nlist'" } ;; esac done $opt_dry_run || { # Make sure we have at least an empty file. test -f "$nlist" || : > "$nlist" if test -n "$exclude_expsyms"; then $EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T $MV "$nlist"T "$nlist" fi # Try sorting and uniquifying the output. if $GREP -v "^: " < "$nlist" | if sort -k 3 /dev/null 2>&1; then sort -k 3 else sort +2 fi | uniq > "$nlist"S; then : else $GREP -v "^: " < "$nlist" > "$nlist"S fi if test -f "$nlist"S; then eval "$global_symbol_to_cdecl"' < "$nlist"S >> "$output_objdir/$my_dlsyms"' else echo '/* NONE */' >> "$output_objdir/$my_dlsyms" fi func_show_eval '$RM "${nlist}I"' if test -n "$global_symbol_to_import"; then eval "$global_symbol_to_import"' < "$nlist"S > "$nlist"I' fi echo >> "$output_objdir/$my_dlsyms" "\ /* The mapping between symbol names and symbols. */ typedef struct { const char *name; void *address; } lt_dlsymlist; extern LT_DLSYM_CONST lt_dlsymlist lt_${my_prefix}_LTX_preloaded_symbols[];\ " if test -s "$nlist"I; then echo >> "$output_objdir/$my_dlsyms" "\ static void lt_syminit(void) { LT_DLSYM_CONST lt_dlsymlist *symbol = lt_${my_prefix}_LTX_preloaded_symbols; for (; symbol->name; ++symbol) {" $SED 's/.*/ if (STREQ (symbol->name, \"&\")) symbol->address = (void *) \&&;/' < "$nlist"I >> "$output_objdir/$my_dlsyms" echo >> "$output_objdir/$my_dlsyms" "\ } }" fi echo >> "$output_objdir/$my_dlsyms" "\ LT_DLSYM_CONST lt_dlsymlist lt_${my_prefix}_LTX_preloaded_symbols[] = { {\"$my_originator\", (void *) 0}," if test -s "$nlist"I; then echo >> "$output_objdir/$my_dlsyms" "\ {\"@INIT@\", (void *) <_syminit}," fi case $need_lib_prefix in no) eval "$global_symbol_to_c_name_address" < "$nlist" >> "$output_objdir/$my_dlsyms" ;; *) eval "$global_symbol_to_c_name_address_lib_prefix" < "$nlist" >> "$output_objdir/$my_dlsyms" ;; esac echo >> "$output_objdir/$my_dlsyms" "\ {0, (void *) 0} }; /* This works around a problem in FreeBSD linker */ #ifdef FREEBSD_WORKAROUND static const void *lt_preloaded_setup() { return lt_${my_prefix}_LTX_preloaded_symbols; } #endif #ifdef __cplusplus } #endif\ " } # !$opt_dry_run pic_flag_for_symtable= case "$compile_command " in *" -static "*) ;; *) case $host in # compiling the symbol table file with pic_flag works around # a FreeBSD bug that causes programs to crash when -lm is # linked before any other PIC object. But we must not use # pic_flag when linking with -static. The problem exists in # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1. *-*-freebsd2.*|*-*-freebsd3.0*|*-*-freebsdelf3.0*) pic_flag_for_symtable=" $pic_flag -DFREEBSD_WORKAROUND" ;; *-*-hpux*) pic_flag_for_symtable=" $pic_flag" ;; *) $my_pic_p && pic_flag_for_symtable=" $pic_flag" ;; esac ;; esac symtab_cflags= for arg in $LTCFLAGS; do case $arg in -pie | -fpie | -fPIE) ;; *) func_append symtab_cflags " $arg" ;; esac done # Now compile the dynamic symbol file. func_show_eval '(cd $output_objdir && $LTCC$symtab_cflags -c$no_builtin_flag$pic_flag_for_symtable "$my_dlsyms")' 'exit $?' # Clean up the generated files. func_show_eval '$RM "$output_objdir/$my_dlsyms" "$nlist" "${nlist}S" "${nlist}T" "${nlist}I"' # Transform the symbol file into the correct name. symfileobj=$output_objdir/${my_outputname}S.$objext case $host in *cygwin* | *mingw* | *cegcc* ) if test -f "$output_objdir/$my_outputname.def"; then compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"` finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"` else compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$symfileobj%"` finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$symfileobj%"` fi ;; *) compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$symfileobj%"` finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$symfileobj%"` ;; esac ;; *) func_fatal_error "unknown suffix for '$my_dlsyms'" ;; esac else # We keep going just in case the user didn't refer to # lt_preloaded_symbols. The linker will fail if global_symbol_pipe # really was required. # Nullify the symbol file. compile_command=`$ECHO "$compile_command" | $SED "s% @SYMFILE@%%"` finalize_command=`$ECHO "$finalize_command" | $SED "s% @SYMFILE@%%"` fi } # func_cygming_gnu_implib_p ARG # This predicate returns with zero status (TRUE) if # ARG is a GNU/binutils-style import library. Returns # with nonzero status (FALSE) otherwise. func_cygming_gnu_implib_p () { $debug_cmd func_to_tool_file "$1" func_convert_file_msys_to_w32 func_cygming_gnu_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $EGREP ' (_head_[A-Za-z0-9_]+_[ad]l*|[A-Za-z0-9_]+_[ad]l*_iname)$'` test -n "$func_cygming_gnu_implib_tmp" } # func_cygming_ms_implib_p ARG # This predicate returns with zero status (TRUE) if # ARG is an MS-style import library. Returns # with nonzero status (FALSE) otherwise. func_cygming_ms_implib_p () { $debug_cmd func_to_tool_file "$1" func_convert_file_msys_to_w32 func_cygming_ms_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $GREP '_NULL_IMPORT_DESCRIPTOR'` test -n "$func_cygming_ms_implib_tmp" } # func_win32_libid arg # return the library type of file 'arg' # # Need a lot of goo to handle *both* DLLs and import libs # Has to be a shell function in order to 'eat' the argument # that is supplied when $file_magic_command is called. # Despite the name, also deal with 64 bit binaries. func_win32_libid () { $debug_cmd win32_libid_type=unknown win32_fileres=`file -L $1 2>/dev/null` case $win32_fileres in *ar\ archive\ import\ library*) # definitely import win32_libid_type="x86 archive import" ;; *ar\ archive*) # could be an import, or static # Keep the egrep pattern in sync with the one in _LT_CHECK_MAGIC_METHOD. if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null | $EGREP 'file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' >/dev/null; then case $nm_interface in "MS dumpbin") if func_cygming_ms_implib_p "$1" || func_cygming_gnu_implib_p "$1" then win32_nmres=import else win32_nmres= fi ;; *) func_to_tool_file "$1" func_convert_file_msys_to_w32 win32_nmres=`eval $NM -f posix -A \"$func_to_tool_file_result\" | $SED -n -e ' 1,100{ / I /{ s|.*|import| p q } }'` ;; esac case $win32_nmres in import*) win32_libid_type="x86 archive import";; *) win32_libid_type="x86 archive static";; esac fi ;; *DLL*) win32_libid_type="x86 DLL" ;; *executable*) # but shell scripts are "executable" too... case $win32_fileres in *MS\ Windows\ PE\ Intel*) win32_libid_type="x86 DLL" ;; esac ;; esac $ECHO "$win32_libid_type" } # func_cygming_dll_for_implib ARG # # Platform-specific function to extract the # name of the DLL associated with the specified # import library ARG. # Invoked by eval'ing the libtool variable # $sharedlib_from_linklib_cmd # Result is available in the variable # $sharedlib_from_linklib_result func_cygming_dll_for_implib () { $debug_cmd sharedlib_from_linklib_result=`$DLLTOOL --identify-strict --identify "$1"` } # func_cygming_dll_for_implib_fallback_core SECTION_NAME LIBNAMEs # # The is the core of a fallback implementation of a # platform-specific function to extract the name of the # DLL associated with the specified import library LIBNAME. # # SECTION_NAME is either .idata$6 or .idata$7, depending # on the platform and compiler that created the implib. # # Echos the name of the DLL associated with the # specified import library. func_cygming_dll_for_implib_fallback_core () { $debug_cmd match_literal=`$ECHO "$1" | $SED "$sed_make_literal_regex"` $OBJDUMP -s --section "$1" "$2" 2>/dev/null | $SED '/^Contents of section '"$match_literal"':/{ # Place marker at beginning of archive member dllname section s/.*/====MARK====/ p d } # These lines can sometimes be longer than 43 characters, but # are always uninteresting /:[ ]*file format pe[i]\{,1\}-/d /^In archive [^:]*:/d # Ensure marker is printed /^====MARK====/p # Remove all lines with less than 43 characters /^.\{43\}/!d # From remaining lines, remove first 43 characters s/^.\{43\}//' | $SED -n ' # Join marker and all lines until next marker into a single line /^====MARK====/ b para H $ b para b :para x s/\n//g # Remove the marker s/^====MARK====// # Remove trailing dots and whitespace s/[\. \t]*$// # Print /./p' | # we now have a list, one entry per line, of the stringified # contents of the appropriate section of all members of the # archive that possess that section. Heuristic: eliminate # all those that have a first or second character that is # a '.' (that is, objdump's representation of an unprintable # character.) This should work for all archives with less than # 0x302f exports -- but will fail for DLLs whose name actually # begins with a literal '.' or a single character followed by # a '.'. # # Of those that remain, print the first one. $SED -e '/^\./d;/^.\./d;q' } # func_cygming_dll_for_implib_fallback ARG # Platform-specific function to extract the # name of the DLL associated with the specified # import library ARG. # # This fallback implementation is for use when $DLLTOOL # does not support the --identify-strict option. # Invoked by eval'ing the libtool variable # $sharedlib_from_linklib_cmd # Result is available in the variable # $sharedlib_from_linklib_result func_cygming_dll_for_implib_fallback () { $debug_cmd if func_cygming_gnu_implib_p "$1"; then # binutils import library sharedlib_from_linklib_result=`func_cygming_dll_for_implib_fallback_core '.idata$7' "$1"` elif func_cygming_ms_implib_p "$1"; then # ms-generated import library sharedlib_from_linklib_result=`func_cygming_dll_for_implib_fallback_core '.idata$6' "$1"` else # unknown sharedlib_from_linklib_result= fi } # func_extract_an_archive dir oldlib func_extract_an_archive () { $debug_cmd f_ex_an_ar_dir=$1; shift f_ex_an_ar_oldlib=$1 if test yes = "$lock_old_archive_extraction"; then lockfile=$f_ex_an_ar_oldlib.lock until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do func_echo "Waiting for $lockfile to be removed" sleep 2 done fi func_show_eval "(cd \$f_ex_an_ar_dir && $AR x \"\$f_ex_an_ar_oldlib\")" \ 'stat=$?; rm -f "$lockfile"; exit $stat' if test yes = "$lock_old_archive_extraction"; then $opt_dry_run || rm -f "$lockfile" fi if ($AR t "$f_ex_an_ar_oldlib" | sort | sort -uc >/dev/null 2>&1); then : else func_fatal_error "object name conflicts in archive: $f_ex_an_ar_dir/$f_ex_an_ar_oldlib" fi } # func_extract_archives gentop oldlib ... func_extract_archives () { $debug_cmd my_gentop=$1; shift my_oldlibs=${1+"$@"} my_oldobjs= my_xlib= my_xabs= my_xdir= for my_xlib in $my_oldlibs; do # Extract the objects. case $my_xlib in [\\/]* | [A-Za-z]:[\\/]*) my_xabs=$my_xlib ;; *) my_xabs=`pwd`"/$my_xlib" ;; esac func_basename "$my_xlib" my_xlib=$func_basename_result my_xlib_u=$my_xlib while :; do case " $extracted_archives " in *" $my_xlib_u "*) func_arith $extracted_serial + 1 extracted_serial=$func_arith_result my_xlib_u=lt$extracted_serial-$my_xlib ;; *) break ;; esac done extracted_archives="$extracted_archives $my_xlib_u" my_xdir=$my_gentop/$my_xlib_u func_mkdir_p "$my_xdir" case $host in *-darwin*) func_verbose "Extracting $my_xabs" # Do not bother doing anything if just a dry run $opt_dry_run || { darwin_orig_dir=`pwd` cd $my_xdir || exit $? darwin_archive=$my_xabs darwin_curdir=`pwd` func_basename "$darwin_archive" darwin_base_archive=$func_basename_result darwin_arches=`$LIPO -info "$darwin_archive" 2>/dev/null | $GREP Architectures 2>/dev/null || true` if test -n "$darwin_arches"; then darwin_arches=`$ECHO "$darwin_arches" | $SED -e 's/.*are://'` darwin_arch= func_verbose "$darwin_base_archive has multiple architectures $darwin_arches" for darwin_arch in $darwin_arches; do func_mkdir_p "unfat-$$/$darwin_base_archive-$darwin_arch" $LIPO -thin $darwin_arch -output "unfat-$$/$darwin_base_archive-$darwin_arch/$darwin_base_archive" "$darwin_archive" cd "unfat-$$/$darwin_base_archive-$darwin_arch" func_extract_an_archive "`pwd`" "$darwin_base_archive" cd "$darwin_curdir" $RM "unfat-$$/$darwin_base_archive-$darwin_arch/$darwin_base_archive" done # $darwin_arches ## Okay now we've a bunch of thin objects, gotta fatten them up :) darwin_filelist=`find unfat-$$ -type f -name \*.o -print -o -name \*.lo -print | $SED -e "$sed_basename" | sort -u` darwin_file= darwin_files= for darwin_file in $darwin_filelist; do darwin_files=`find unfat-$$ -name $darwin_file -print | sort | $NL2SP` $LIPO -create -output "$darwin_file" $darwin_files done # $darwin_filelist $RM -rf unfat-$$ cd "$darwin_orig_dir" else cd $darwin_orig_dir func_extract_an_archive "$my_xdir" "$my_xabs" fi # $darwin_arches } # !$opt_dry_run ;; *) func_extract_an_archive "$my_xdir" "$my_xabs" ;; esac my_oldobjs="$my_oldobjs "`find $my_xdir -name \*.$objext -print -o -name \*.lo -print | sort | $NL2SP` done func_extract_archives_result=$my_oldobjs } # func_emit_wrapper [arg=no] # # Emit a libtool wrapper script on stdout. # Don't directly open a file because we may want to # incorporate the script contents within a cygwin/mingw # wrapper executable. Must ONLY be called from within # func_mode_link because it depends on a number of variables # set therein. # # ARG is the value that the WRAPPER_SCRIPT_BELONGS_IN_OBJDIR # variable will take. If 'yes', then the emitted script # will assume that the directory where it is stored is # the $objdir directory. This is a cygwin/mingw-specific # behavior. func_emit_wrapper () { func_emit_wrapper_arg1=${1-no} $ECHO "\ #! $SHELL # $output - temporary wrapper script for $objdir/$outputname # Generated by $PROGRAM (GNU $PACKAGE) $VERSION # # The $output program cannot be directly executed until all the libtool # libraries that it depends on are installed. # # This wrapper script should never be moved out of the build directory. # If it is, it will not operate correctly. # Sed substitution that helps us do robust quoting. It backslashifies # metacharacters that are still active within double-quoted strings. sed_quote_subst='$sed_quote_subst' # Be Bourne compatible if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then emulate sh NULLCMD=: # Zsh 3.x and 4.x performs word splitting on \${1+\"\$@\"}, which # is contrary to our usage. Disable this feature. alias -g '\${1+\"\$@\"}'='\"\$@\"' setopt NO_GLOB_SUBST else case \`(set -o) 2>/dev/null\` in *posix*) set -o posix;; esac fi BIN_SH=xpg4; export BIN_SH # for Tru64 DUALCASE=1; export DUALCASE # for MKS sh # The HP-UX ksh and POSIX shell print the target directory to stdout # if CDPATH is set. (unset CDPATH) >/dev/null 2>&1 && unset CDPATH relink_command=\"$relink_command\" # This environment variable determines our operation mode. if test \"\$libtool_install_magic\" = \"$magic\"; then # install mode needs the following variables: generated_by_libtool_version='$macro_version' notinst_deplibs='$notinst_deplibs' else # When we are sourced in execute mode, \$file and \$ECHO are already set. if test \"\$libtool_execute_magic\" != \"$magic\"; then file=\"\$0\"" qECHO=`$ECHO "$ECHO" | $SED "$sed_quote_subst"` $ECHO "\ # A function that is used when there is no print builtin or printf. func_fallback_echo () { eval 'cat <<_LTECHO_EOF \$1 _LTECHO_EOF' } ECHO=\"$qECHO\" fi # Very basic option parsing. These options are (a) specific to # the libtool wrapper, (b) are identical between the wrapper # /script/ and the wrapper /executable/ that is used only on # windows platforms, and (c) all begin with the string "--lt-" # (application programs are unlikely to have options that match # this pattern). # # There are only two supported options: --lt-debug and # --lt-dump-script. There is, deliberately, no --lt-help. # # The first argument to this parsing function should be the # script's $0 value, followed by "$@". lt_option_debug= func_parse_lt_options () { lt_script_arg0=\$0 shift for lt_opt do case \"\$lt_opt\" in --lt-debug) lt_option_debug=1 ;; --lt-dump-script) lt_dump_D=\`\$ECHO \"X\$lt_script_arg0\" | $SED -e 's/^X//' -e 's%/[^/]*$%%'\` test \"X\$lt_dump_D\" = \"X\$lt_script_arg0\" && lt_dump_D=. lt_dump_F=\`\$ECHO \"X\$lt_script_arg0\" | $SED -e 's/^X//' -e 's%^.*/%%'\` cat \"\$lt_dump_D/\$lt_dump_F\" exit 0 ;; --lt-*) \$ECHO \"Unrecognized --lt- option: '\$lt_opt'\" 1>&2 exit 1 ;; esac done # Print the debug banner immediately: if test -n \"\$lt_option_debug\"; then echo \"$outputname:$output:\$LINENO: libtool wrapper (GNU $PACKAGE) $VERSION\" 1>&2 fi } # Used when --lt-debug. Prints its arguments to stdout # (redirection is the responsibility of the caller) func_lt_dump_args () { lt_dump_args_N=1; for lt_arg do \$ECHO \"$outputname:$output:\$LINENO: newargv[\$lt_dump_args_N]: \$lt_arg\" lt_dump_args_N=\`expr \$lt_dump_args_N + 1\` done } # Core function for launching the target application func_exec_program_core () { " case $host in # Backslashes separate directories on plain windows *-*-mingw | *-*-os2* | *-cegcc*) $ECHO "\ if test -n \"\$lt_option_debug\"; then \$ECHO \"$outputname:$output:\$LINENO: newargv[0]: \$progdir\\\\\$program\" 1>&2 func_lt_dump_args \${1+\"\$@\"} 1>&2 fi exec \"\$progdir\\\\\$program\" \${1+\"\$@\"} " ;; *) $ECHO "\ if test -n \"\$lt_option_debug\"; then \$ECHO \"$outputname:$output:\$LINENO: newargv[0]: \$progdir/\$program\" 1>&2 func_lt_dump_args \${1+\"\$@\"} 1>&2 fi exec \"\$progdir/\$program\" \${1+\"\$@\"} " ;; esac $ECHO "\ \$ECHO \"\$0: cannot exec \$program \$*\" 1>&2 exit 1 } # A function to encapsulate launching the target application # Strips options in the --lt-* namespace from \$@ and # launches target application with the remaining arguments. func_exec_program () { case \" \$* \" in *\\ --lt-*) for lt_wr_arg do case \$lt_wr_arg in --lt-*) ;; *) set x \"\$@\" \"\$lt_wr_arg\"; shift;; esac shift done ;; esac func_exec_program_core \${1+\"\$@\"} } # Parse options func_parse_lt_options \"\$0\" \${1+\"\$@\"} # Find the directory that this script lives in. thisdir=\`\$ECHO \"\$file\" | $SED 's%/[^/]*$%%'\` test \"x\$thisdir\" = \"x\$file\" && thisdir=. # Follow symbolic links until we get to the real thisdir. file=\`ls -ld \"\$file\" | $SED -n 's/.*-> //p'\` while test -n \"\$file\"; do destdir=\`\$ECHO \"\$file\" | $SED 's%/[^/]*\$%%'\` # If there was a directory component, then change thisdir. if test \"x\$destdir\" != \"x\$file\"; then case \"\$destdir\" in [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;; *) thisdir=\"\$thisdir/\$destdir\" ;; esac fi file=\`\$ECHO \"\$file\" | $SED 's%^.*/%%'\` file=\`ls -ld \"\$thisdir/\$file\" | $SED -n 's/.*-> //p'\` done # Usually 'no', except on cygwin/mingw when embedded into # the cwrapper. WRAPPER_SCRIPT_BELONGS_IN_OBJDIR=$func_emit_wrapper_arg1 if test \"\$WRAPPER_SCRIPT_BELONGS_IN_OBJDIR\" = \"yes\"; then # special case for '.' if test \"\$thisdir\" = \".\"; then thisdir=\`pwd\` fi # remove .libs from thisdir case \"\$thisdir\" in *[\\\\/]$objdir ) thisdir=\`\$ECHO \"\$thisdir\" | $SED 's%[\\\\/][^\\\\/]*$%%'\` ;; $objdir ) thisdir=. ;; esac fi # Try to get the absolute directory name. absdir=\`cd \"\$thisdir\" && pwd\` test -n \"\$absdir\" && thisdir=\"\$absdir\" " if test yes = "$fast_install"; then $ECHO "\ program=lt-'$outputname'$exeext progdir=\"\$thisdir/$objdir\" if test ! -f \"\$progdir/\$program\" || { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | $SED 1q\`; \\ test \"X\$file\" != \"X\$progdir/\$program\"; }; then file=\"\$\$-\$program\" if test ! -d \"\$progdir\"; then $MKDIR \"\$progdir\" else $RM \"\$progdir/\$file\" fi" $ECHO "\ # relink executable if necessary if test -n \"\$relink_command\"; then if relink_command_output=\`eval \$relink_command 2>&1\`; then : else \$ECHO \"\$relink_command_output\" >&2 $RM \"\$progdir/\$file\" exit 1 fi fi $MV \"\$progdir/\$file\" \"\$progdir/\$program\" 2>/dev/null || { $RM \"\$progdir/\$program\"; $MV \"\$progdir/\$file\" \"\$progdir/\$program\"; } $RM \"\$progdir/\$file\" fi" else $ECHO "\ program='$outputname' progdir=\"\$thisdir/$objdir\" " fi $ECHO "\ if test -f \"\$progdir/\$program\"; then" # fixup the dll searchpath if we need to. # # Fix the DLL searchpath if we need to. Do this before prepending # to shlibpath, because on Windows, both are PATH and uninstalled # libraries must come first. if test -n "$dllsearchpath"; then $ECHO "\ # Add the dll search path components to the executable PATH PATH=$dllsearchpath:\$PATH " fi # Export our shlibpath_var if we have one. if test yes = "$shlibpath_overrides_runpath" && test -n "$shlibpath_var" && test -n "$temp_rpath"; then $ECHO "\ # Add our own library path to $shlibpath_var $shlibpath_var=\"$temp_rpath\$$shlibpath_var\" # Some systems cannot cope with colon-terminated $shlibpath_var # The second colon is a workaround for a bug in BeOS R4 sed $shlibpath_var=\`\$ECHO \"\$$shlibpath_var\" | $SED 's/::*\$//'\` export $shlibpath_var " fi $ECHO "\ if test \"\$libtool_execute_magic\" != \"$magic\"; then # Run the actual program with our arguments. func_exec_program \${1+\"\$@\"} fi else # The program doesn't exist. \$ECHO \"\$0: error: '\$progdir/\$program' does not exist\" 1>&2 \$ECHO \"This script is just a wrapper for \$program.\" 1>&2 \$ECHO \"See the $PACKAGE documentation for more information.\" 1>&2 exit 1 fi fi\ " } # func_emit_cwrapperexe_src # emit the source code for a wrapper executable on stdout # Must ONLY be called from within func_mode_link because # it depends on a number of variable set therein. func_emit_cwrapperexe_src () { cat < #include #ifdef _MSC_VER # include # include # include #else # include # include # ifdef __CYGWIN__ # include # endif #endif #include #include #include #include #include #include #include #include #define STREQ(s1, s2) (strcmp ((s1), (s2)) == 0) /* declarations of non-ANSI functions */ #if defined __MINGW32__ # ifdef __STRICT_ANSI__ int _putenv (const char *); # endif #elif defined __CYGWIN__ # ifdef __STRICT_ANSI__ char *realpath (const char *, char *); int putenv (char *); int setenv (const char *, const char *, int); # endif /* #elif defined other_platform || defined ... */ #endif /* portability defines, excluding path handling macros */ #if defined _MSC_VER # define setmode _setmode # define stat _stat # define chmod _chmod # define getcwd _getcwd # define putenv _putenv # define S_IXUSR _S_IEXEC #elif defined __MINGW32__ # define setmode _setmode # define stat _stat # define chmod _chmod # define getcwd _getcwd # define putenv _putenv #elif defined __CYGWIN__ # define HAVE_SETENV # define FOPEN_WB "wb" /* #elif defined other platforms ... */ #endif #if defined PATH_MAX # define LT_PATHMAX PATH_MAX #elif defined MAXPATHLEN # define LT_PATHMAX MAXPATHLEN #else # define LT_PATHMAX 1024 #endif #ifndef S_IXOTH # define S_IXOTH 0 #endif #ifndef S_IXGRP # define S_IXGRP 0 #endif /* path handling portability macros */ #ifndef DIR_SEPARATOR # define DIR_SEPARATOR '/' # define PATH_SEPARATOR ':' #endif #if defined _WIN32 || defined __MSDOS__ || defined __DJGPP__ || \ defined __OS2__ # define HAVE_DOS_BASED_FILE_SYSTEM # define FOPEN_WB "wb" # ifndef DIR_SEPARATOR_2 # define DIR_SEPARATOR_2 '\\' # endif # ifndef PATH_SEPARATOR_2 # define PATH_SEPARATOR_2 ';' # endif #endif #ifndef DIR_SEPARATOR_2 # define IS_DIR_SEPARATOR(ch) ((ch) == DIR_SEPARATOR) #else /* DIR_SEPARATOR_2 */ # define IS_DIR_SEPARATOR(ch) \ (((ch) == DIR_SEPARATOR) || ((ch) == DIR_SEPARATOR_2)) #endif /* DIR_SEPARATOR_2 */ #ifndef PATH_SEPARATOR_2 # define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR) #else /* PATH_SEPARATOR_2 */ # define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR_2) #endif /* PATH_SEPARATOR_2 */ #ifndef FOPEN_WB # define FOPEN_WB "w" #endif #ifndef _O_BINARY # define _O_BINARY 0 #endif #define XMALLOC(type, num) ((type *) xmalloc ((num) * sizeof(type))) #define XFREE(stale) do { \ if (stale) { free (stale); stale = 0; } \ } while (0) #if defined LT_DEBUGWRAPPER static int lt_debug = 1; #else static int lt_debug = 0; #endif const char *program_name = "libtool-wrapper"; /* in case xstrdup fails */ void *xmalloc (size_t num); char *xstrdup (const char *string); const char *base_name (const char *name); char *find_executable (const char *wrapper); char *chase_symlinks (const char *pathspec); int make_executable (const char *path); int check_executable (const char *path); char *strendzap (char *str, const char *pat); void lt_debugprintf (const char *file, int line, const char *fmt, ...); void lt_fatal (const char *file, int line, const char *message, ...); static const char *nonnull (const char *s); static const char *nonempty (const char *s); void lt_setenv (const char *name, const char *value); char *lt_extend_str (const char *orig_value, const char *add, int to_end); void lt_update_exe_path (const char *name, const char *value); void lt_update_lib_path (const char *name, const char *value); char **prepare_spawn (char **argv); void lt_dump_script (FILE *f); EOF cat <= 0) && (st.st_mode & (S_IXUSR | S_IXGRP | S_IXOTH))) return 1; else return 0; } int make_executable (const char *path) { int rval = 0; struct stat st; lt_debugprintf (__FILE__, __LINE__, "(make_executable): %s\n", nonempty (path)); if ((!path) || (!*path)) return 0; if (stat (path, &st) >= 0) { rval = chmod (path, st.st_mode | S_IXOTH | S_IXGRP | S_IXUSR); } return rval; } /* Searches for the full path of the wrapper. Returns newly allocated full path name if found, NULL otherwise Does not chase symlinks, even on platforms that support them. */ char * find_executable (const char *wrapper) { int has_slash = 0; const char *p; const char *p_next; /* static buffer for getcwd */ char tmp[LT_PATHMAX + 1]; size_t tmp_len; char *concat_name; lt_debugprintf (__FILE__, __LINE__, "(find_executable): %s\n", nonempty (wrapper)); if ((wrapper == NULL) || (*wrapper == '\0')) return NULL; /* Absolute path? */ #if defined HAVE_DOS_BASED_FILE_SYSTEM if (isalpha ((unsigned char) wrapper[0]) && wrapper[1] == ':') { concat_name = xstrdup (wrapper); if (check_executable (concat_name)) return concat_name; XFREE (concat_name); } else { #endif if (IS_DIR_SEPARATOR (wrapper[0])) { concat_name = xstrdup (wrapper); if (check_executable (concat_name)) return concat_name; XFREE (concat_name); } #if defined HAVE_DOS_BASED_FILE_SYSTEM } #endif for (p = wrapper; *p; p++) if (*p == '/') { has_slash = 1; break; } if (!has_slash) { /* no slashes; search PATH */ const char *path = getenv ("PATH"); if (path != NULL) { for (p = path; *p; p = p_next) { const char *q; size_t p_len; for (q = p; *q; q++) if (IS_PATH_SEPARATOR (*q)) break; p_len = (size_t) (q - p); p_next = (*q == '\0' ? q : q + 1); if (p_len == 0) { /* empty path: current directory */ if (getcwd (tmp, LT_PATHMAX) == NULL) lt_fatal (__FILE__, __LINE__, "getcwd failed: %s", nonnull (strerror (errno))); tmp_len = strlen (tmp); concat_name = XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1); memcpy (concat_name, tmp, tmp_len); concat_name[tmp_len] = '/'; strcpy (concat_name + tmp_len + 1, wrapper); } else { concat_name = XMALLOC (char, p_len + 1 + strlen (wrapper) + 1); memcpy (concat_name, p, p_len); concat_name[p_len] = '/'; strcpy (concat_name + p_len + 1, wrapper); } if (check_executable (concat_name)) return concat_name; XFREE (concat_name); } } /* not found in PATH; assume curdir */ } /* Relative path | not found in path: prepend cwd */ if (getcwd (tmp, LT_PATHMAX) == NULL) lt_fatal (__FILE__, __LINE__, "getcwd failed: %s", nonnull (strerror (errno))); tmp_len = strlen (tmp); concat_name = XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1); memcpy (concat_name, tmp, tmp_len); concat_name[tmp_len] = '/'; strcpy (concat_name + tmp_len + 1, wrapper); if (check_executable (concat_name)) return concat_name; XFREE (concat_name); return NULL; } char * chase_symlinks (const char *pathspec) { #ifndef S_ISLNK return xstrdup (pathspec); #else char buf[LT_PATHMAX]; struct stat s; char *tmp_pathspec = xstrdup (pathspec); char *p; int has_symlinks = 0; while (strlen (tmp_pathspec) && !has_symlinks) { lt_debugprintf (__FILE__, __LINE__, "checking path component for symlinks: %s\n", tmp_pathspec); if (lstat (tmp_pathspec, &s) == 0) { if (S_ISLNK (s.st_mode) != 0) { has_symlinks = 1; break; } /* search backwards for last DIR_SEPARATOR */ p = tmp_pathspec + strlen (tmp_pathspec) - 1; while ((p > tmp_pathspec) && (!IS_DIR_SEPARATOR (*p))) p--; if ((p == tmp_pathspec) && (!IS_DIR_SEPARATOR (*p))) { /* no more DIR_SEPARATORS left */ break; } *p = '\0'; } else { lt_fatal (__FILE__, __LINE__, "error accessing file \"%s\": %s", tmp_pathspec, nonnull (strerror (errno))); } } XFREE (tmp_pathspec); if (!has_symlinks) { return xstrdup (pathspec); } tmp_pathspec = realpath (pathspec, buf); if (tmp_pathspec == 0) { lt_fatal (__FILE__, __LINE__, "could not follow symlinks for %s", pathspec); } return xstrdup (tmp_pathspec); #endif } char * strendzap (char *str, const char *pat) { size_t len, patlen; assert (str != NULL); assert (pat != NULL); len = strlen (str); patlen = strlen (pat); if (patlen <= len) { str += len - patlen; if (STREQ (str, pat)) *str = '\0'; } return str; } void lt_debugprintf (const char *file, int line, const char *fmt, ...) { va_list args; if (lt_debug) { (void) fprintf (stderr, "%s:%s:%d: ", program_name, file, line); va_start (args, fmt); (void) vfprintf (stderr, fmt, args); va_end (args); } } static void lt_error_core (int exit_status, const char *file, int line, const char *mode, const char *message, va_list ap) { fprintf (stderr, "%s:%s:%d: %s: ", program_name, file, line, mode); vfprintf (stderr, message, ap); fprintf (stderr, ".\n"); if (exit_status >= 0) exit (exit_status); } void lt_fatal (const char *file, int line, const char *message, ...) { va_list ap; va_start (ap, message); lt_error_core (EXIT_FAILURE, file, line, "FATAL", message, ap); va_end (ap); } static const char * nonnull (const char *s) { return s ? s : "(null)"; } static const char * nonempty (const char *s) { return (s && !*s) ? "(empty)" : nonnull (s); } void lt_setenv (const char *name, const char *value) { lt_debugprintf (__FILE__, __LINE__, "(lt_setenv) setting '%s' to '%s'\n", nonnull (name), nonnull (value)); { #ifdef HAVE_SETENV /* always make a copy, for consistency with !HAVE_SETENV */ char *str = xstrdup (value); setenv (name, str, 1); #else size_t len = strlen (name) + 1 + strlen (value) + 1; char *str = XMALLOC (char, len); sprintf (str, "%s=%s", name, value); if (putenv (str) != EXIT_SUCCESS) { XFREE (str); } #endif } } char * lt_extend_str (const char *orig_value, const char *add, int to_end) { char *new_value; if (orig_value && *orig_value) { size_t orig_value_len = strlen (orig_value); size_t add_len = strlen (add); new_value = XMALLOC (char, add_len + orig_value_len + 1); if (to_end) { strcpy (new_value, orig_value); strcpy (new_value + orig_value_len, add); } else { strcpy (new_value, add); strcpy (new_value + add_len, orig_value); } } else { new_value = xstrdup (add); } return new_value; } void lt_update_exe_path (const char *name, const char *value) { lt_debugprintf (__FILE__, __LINE__, "(lt_update_exe_path) modifying '%s' by prepending '%s'\n", nonnull (name), nonnull (value)); if (name && *name && value && *value) { char *new_value = lt_extend_str (getenv (name), value, 0); /* some systems can't cope with a ':'-terminated path #' */ size_t len = strlen (new_value); while ((len > 0) && IS_PATH_SEPARATOR (new_value[len-1])) { new_value[--len] = '\0'; } lt_setenv (name, new_value); XFREE (new_value); } } void lt_update_lib_path (const char *name, const char *value) { lt_debugprintf (__FILE__, __LINE__, "(lt_update_lib_path) modifying '%s' by prepending '%s'\n", nonnull (name), nonnull (value)); if (name && *name && value && *value) { char *new_value = lt_extend_str (getenv (name), value, 0); lt_setenv (name, new_value); XFREE (new_value); } } EOF case $host_os in mingw*) cat <<"EOF" /* Prepares an argument vector before calling spawn(). Note that spawn() does not by itself call the command interpreter (getenv ("COMSPEC") != NULL ? getenv ("COMSPEC") : ({ OSVERSIONINFO v; v.dwOSVersionInfoSize = sizeof(OSVERSIONINFO); GetVersionEx(&v); v.dwPlatformId == VER_PLATFORM_WIN32_NT; }) ? "cmd.exe" : "command.com"). Instead it simply concatenates the arguments, separated by ' ', and calls CreateProcess(). We must quote the arguments since Win32 CreateProcess() interprets characters like ' ', '\t', '\\', '"' (but not '<' and '>') in a special way: - Space and tab are interpreted as delimiters. They are not treated as delimiters if they are surrounded by double quotes: "...". - Unescaped double quotes are removed from the input. Their only effect is that within double quotes, space and tab are treated like normal characters. - Backslashes not followed by double quotes are not special. - But 2*n+1 backslashes followed by a double quote become n backslashes followed by a double quote (n >= 0): \" -> " \\\" -> \" \\\\\" -> \\" */ #define SHELL_SPECIAL_CHARS "\"\\ \001\002\003\004\005\006\007\010\011\012\013\014\015\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037" #define SHELL_SPACE_CHARS " \001\002\003\004\005\006\007\010\011\012\013\014\015\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037" char ** prepare_spawn (char **argv) { size_t argc; char **new_argv; size_t i; /* Count number of arguments. */ for (argc = 0; argv[argc] != NULL; argc++) ; /* Allocate new argument vector. */ new_argv = XMALLOC (char *, argc + 1); /* Put quoted arguments into the new argument vector. */ for (i = 0; i < argc; i++) { const char *string = argv[i]; if (string[0] == '\0') new_argv[i] = xstrdup ("\"\""); else if (strpbrk (string, SHELL_SPECIAL_CHARS) != NULL) { int quote_around = (strpbrk (string, SHELL_SPACE_CHARS) != NULL); size_t length; unsigned int backslashes; const char *s; char *quoted_string; char *p; length = 0; backslashes = 0; if (quote_around) length++; for (s = string; *s != '\0'; s++) { char c = *s; if (c == '"') length += backslashes + 1; length++; if (c == '\\') backslashes++; else backslashes = 0; } if (quote_around) length += backslashes + 1; quoted_string = XMALLOC (char, length + 1); p = quoted_string; backslashes = 0; if (quote_around) *p++ = '"'; for (s = string; *s != '\0'; s++) { char c = *s; if (c == '"') { unsigned int j; for (j = backslashes + 1; j > 0; j--) *p++ = '\\'; } *p++ = c; if (c == '\\') backslashes++; else backslashes = 0; } if (quote_around) { unsigned int j; for (j = backslashes; j > 0; j--) *p++ = '\\'; *p++ = '"'; } *p = '\0'; new_argv[i] = quoted_string; } else new_argv[i] = (char *) string; } new_argv[argc] = NULL; return new_argv; } EOF ;; esac cat <<"EOF" void lt_dump_script (FILE* f) { EOF func_emit_wrapper yes | $SED -n -e ' s/^\(.\{79\}\)\(..*\)/\1\ \2/ h s/\([\\"]\)/\\\1/g s/$/\\n/ s/\([^\n]*\).*/ fputs ("\1", f);/p g D' cat <<"EOF" } EOF } # end: func_emit_cwrapperexe_src # func_win32_import_lib_p ARG # True if ARG is an import lib, as indicated by $file_magic_cmd func_win32_import_lib_p () { $debug_cmd case `eval $file_magic_cmd \"\$1\" 2>/dev/null | $SED -e 10q` in *import*) : ;; *) false ;; esac } # func_suncc_cstd_abi # !!ONLY CALL THIS FOR SUN CC AFTER $compile_command IS FULLY EXPANDED!! # Several compiler flags select an ABI that is incompatible with the # Cstd library. Avoid specifying it if any are in CXXFLAGS. func_suncc_cstd_abi () { $debug_cmd case " $compile_command " in *" -compat=g "*|*\ -std=c++[0-9][0-9]\ *|*" -library=stdcxx4 "*|*" -library=stlport4 "*) suncc_use_cstd_abi=no ;; *) suncc_use_cstd_abi=yes ;; esac } # func_mode_link arg... func_mode_link () { $debug_cmd case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) # It is impossible to link a dll without this setting, and # we shouldn't force the makefile maintainer to figure out # what system we are compiling for in order to pass an extra # flag for every libtool invocation. # allow_undefined=no # FIXME: Unfortunately, there are problems with the above when trying # to make a dll that has undefined symbols, in which case not # even a static library is built. For now, we need to specify # -no-undefined on the libtool link line when we can be certain # that all symbols are satisfied, otherwise we get a static library. allow_undefined=yes ;; *) allow_undefined=yes ;; esac libtool_args=$nonopt base_compile="$nonopt $@" compile_command=$nonopt finalize_command=$nonopt compile_rpath= finalize_rpath= compile_shlibpath= finalize_shlibpath= convenience= old_convenience= deplibs= old_deplibs= compiler_flags= linker_flags= dllsearchpath= lib_search_path=`pwd` inst_prefix_dir= new_inherited_linker_flags= avoid_version=no bindir= dlfiles= dlprefiles= dlself=no export_dynamic=no export_symbols= export_symbols_regex= generated= libobjs= ltlibs= module=no no_install=no objs= os2dllname= non_pic_objects= precious_files_regex= prefer_static_libs=no preload=false prev= prevarg= release= rpath= xrpath= perm_rpath= temp_rpath= thread_safe=no vinfo= vinfo_number=no weak_libs= single_module=$wl-single_module func_infer_tag $base_compile # We need to know -static, to get the right output filenames. for arg do case $arg in -shared) test yes != "$build_libtool_libs" \ && func_fatal_configuration "cannot build a shared library" build_old_libs=no break ;; -all-static | -static | -static-libtool-libs) case $arg in -all-static) if test yes = "$build_libtool_libs" && test -z "$link_static_flag"; then func_warning "complete static linking is impossible in this configuration" fi if test -n "$link_static_flag"; then dlopen_self=$dlopen_self_static fi prefer_static_libs=yes ;; -static) if test -z "$pic_flag" && test -n "$link_static_flag"; then dlopen_self=$dlopen_self_static fi prefer_static_libs=built ;; -static-libtool-libs) if test -z "$pic_flag" && test -n "$link_static_flag"; then dlopen_self=$dlopen_self_static fi prefer_static_libs=yes ;; esac build_libtool_libs=no build_old_libs=yes break ;; esac done # See if our shared archives depend on static archives. test -n "$old_archive_from_new_cmds" && build_old_libs=yes # Go through the arguments, transforming them on the way. while test "$#" -gt 0; do arg=$1 shift func_quote_for_eval "$arg" qarg=$func_quote_for_eval_unquoted_result func_append libtool_args " $func_quote_for_eval_result" # If the previous option needs an argument, assign it. if test -n "$prev"; then case $prev in output) func_append compile_command " @OUTPUT@" func_append finalize_command " @OUTPUT@" ;; esac case $prev in bindir) bindir=$arg prev= continue ;; dlfiles|dlprefiles) $preload || { # Add the symbol object into the linking commands. func_append compile_command " @SYMFILE@" func_append finalize_command " @SYMFILE@" preload=: } case $arg in *.la | *.lo) ;; # We handle these cases below. force) if test no = "$dlself"; then dlself=needless export_dynamic=yes fi prev= continue ;; self) if test dlprefiles = "$prev"; then dlself=yes elif test dlfiles = "$prev" && test yes != "$dlopen_self"; then dlself=yes else dlself=needless export_dynamic=yes fi prev= continue ;; *) if test dlfiles = "$prev"; then func_append dlfiles " $arg" else func_append dlprefiles " $arg" fi prev= continue ;; esac ;; expsyms) export_symbols=$arg test -f "$arg" \ || func_fatal_error "symbol file '$arg' does not exist" prev= continue ;; expsyms_regex) export_symbols_regex=$arg prev= continue ;; framework) case $host in *-*-darwin*) case "$deplibs " in *" $qarg.ltframework "*) ;; *) func_append deplibs " $qarg.ltframework" # this is fixed later ;; esac ;; esac prev= continue ;; inst_prefix) inst_prefix_dir=$arg prev= continue ;; mllvm) # Clang does not use LLVM to link, so we can simply discard any # '-mllvm $arg' options when doing the link step. prev= continue ;; objectlist) if test -f "$arg"; then save_arg=$arg moreargs= for fil in `cat "$save_arg"` do # func_append moreargs " $fil" arg=$fil # A libtool-controlled object. # Check to see that this really is a libtool object. if func_lalib_unsafe_p "$arg"; then pic_object= non_pic_object= # Read the .lo file func_source "$arg" if test -z "$pic_object" || test -z "$non_pic_object" || test none = "$pic_object" && test none = "$non_pic_object"; then func_fatal_error "cannot find name of object for '$arg'" fi # Extract subdirectory from the argument. func_dirname "$arg" "/" "" xdir=$func_dirname_result if test none != "$pic_object"; then # Prepend the subdirectory the object is found in. pic_object=$xdir$pic_object if test dlfiles = "$prev"; then if test yes = "$build_libtool_libs" && test yes = "$dlopen_support"; then func_append dlfiles " $pic_object" prev= continue else # If libtool objects are unsupported, then we need to preload. prev=dlprefiles fi fi # CHECK ME: I think I busted this. -Ossama if test dlprefiles = "$prev"; then # Preload the old-style object. func_append dlprefiles " $pic_object" prev= fi # A PIC object. func_append libobjs " $pic_object" arg=$pic_object fi # Non-PIC object. if test none != "$non_pic_object"; then # Prepend the subdirectory the object is found in. non_pic_object=$xdir$non_pic_object # A standard non-PIC object func_append non_pic_objects " $non_pic_object" if test -z "$pic_object" || test none = "$pic_object"; then arg=$non_pic_object fi else # If the PIC object exists, use it instead. # $xdir was prepended to $pic_object above. non_pic_object=$pic_object func_append non_pic_objects " $non_pic_object" fi else # Only an error if not doing a dry-run. if $opt_dry_run; then # Extract subdirectory from the argument. func_dirname "$arg" "/" "" xdir=$func_dirname_result func_lo2o "$arg" pic_object=$xdir$objdir/$func_lo2o_result non_pic_object=$xdir$func_lo2o_result func_append libobjs " $pic_object" func_append non_pic_objects " $non_pic_object" else func_fatal_error "'$arg' is not a valid libtool object" fi fi done else func_fatal_error "link input file '$arg' does not exist" fi arg=$save_arg prev= continue ;; os2dllname) os2dllname=$arg prev= continue ;; precious_regex) precious_files_regex=$arg prev= continue ;; release) release=-$arg prev= continue ;; rpath | xrpath) # We need an absolute path. case $arg in [\\/]* | [A-Za-z]:[\\/]*) ;; *) func_fatal_error "only absolute run-paths are allowed" ;; esac if test rpath = "$prev"; then case "$rpath " in *" $arg "*) ;; *) func_append rpath " $arg" ;; esac else case "$xrpath " in *" $arg "*) ;; *) func_append xrpath " $arg" ;; esac fi prev= continue ;; shrext) shrext_cmds=$arg prev= continue ;; weak) func_append weak_libs " $arg" prev= continue ;; xcclinker) func_append linker_flags " $qarg" func_append compiler_flags " $qarg" prev= func_append compile_command " $qarg" func_append finalize_command " $qarg" continue ;; xcompiler) func_append compiler_flags " $qarg" prev= func_append compile_command " $qarg" func_append finalize_command " $qarg" continue ;; xlinker) func_append linker_flags " $qarg" func_append compiler_flags " $wl$qarg" prev= func_append compile_command " $wl$qarg" func_append finalize_command " $wl$qarg" continue ;; *) eval "$prev=\"\$arg\"" prev= continue ;; esac fi # test -n "$prev" prevarg=$arg case $arg in -all-static) if test -n "$link_static_flag"; then # See comment for -static flag below, for more details. func_append compile_command " $link_static_flag" func_append finalize_command " $link_static_flag" fi continue ;; -allow-undefined) # FIXME: remove this flag sometime in the future. func_fatal_error "'-allow-undefined' must not be used because it is the default" ;; -avoid-version) avoid_version=yes continue ;; -bindir) prev=bindir continue ;; -dlopen) prev=dlfiles continue ;; -dlpreopen) prev=dlprefiles continue ;; -export-dynamic) export_dynamic=yes continue ;; -export-symbols | -export-symbols-regex) if test -n "$export_symbols" || test -n "$export_symbols_regex"; then func_fatal_error "more than one -exported-symbols argument is not allowed" fi if test X-export-symbols = "X$arg"; then prev=expsyms else prev=expsyms_regex fi continue ;; -framework) prev=framework continue ;; -inst-prefix-dir) prev=inst_prefix continue ;; # The native IRIX linker understands -LANG:*, -LIST:* and -LNO:* # so, if we see these flags be careful not to treat them like -L -L[A-Z][A-Z]*:*) case $with_gcc/$host in no/*-*-irix* | /*-*-irix*) func_append compile_command " $arg" func_append finalize_command " $arg" ;; esac continue ;; -L*) func_stripname "-L" '' "$arg" if test -z "$func_stripname_result"; then if test "$#" -gt 0; then func_fatal_error "require no space between '-L' and '$1'" else func_fatal_error "need path for '-L' option" fi fi func_resolve_sysroot "$func_stripname_result" dir=$func_resolve_sysroot_result # We need an absolute path. case $dir in [\\/]* | [A-Za-z]:[\\/]*) ;; *) absdir=`cd "$dir" && pwd` test -z "$absdir" && \ func_fatal_error "cannot determine absolute directory name of '$dir'" dir=$absdir ;; esac case "$deplibs " in *" -L$dir "* | *" $arg "*) # Will only happen for absolute or sysroot arguments ;; *) # Preserve sysroot, but never include relative directories case $dir in [\\/]* | [A-Za-z]:[\\/]* | =*) func_append deplibs " $arg" ;; *) func_append deplibs " -L$dir" ;; esac func_append lib_search_path " $dir" ;; esac case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) testbindir=`$ECHO "$dir" | $SED 's*/lib$*/bin*'` case :$dllsearchpath: in *":$dir:"*) ;; ::) dllsearchpath=$dir;; *) func_append dllsearchpath ":$dir";; esac case :$dllsearchpath: in *":$testbindir:"*) ;; ::) dllsearchpath=$testbindir;; *) func_append dllsearchpath ":$testbindir";; esac ;; esac continue ;; -l*) if test X-lc = "X$arg" || test X-lm = "X$arg"; then case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos* | *-cegcc* | *-*-haiku*) # These systems don't actually have a C or math library (as such) continue ;; *-*-os2*) # These systems don't actually have a C library (as such) test X-lc = "X$arg" && continue ;; *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-bitrig*) # Do not include libc due to us having libc/libc_r. test X-lc = "X$arg" && continue ;; *-*-rhapsody* | *-*-darwin1.[012]) # Rhapsody C and math libraries are in the System framework func_append deplibs " System.ltframework" continue ;; *-*-sco3.2v5* | *-*-sco5v6*) # Causes problems with __ctype test X-lc = "X$arg" && continue ;; *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) # Compiler inserts libc in the correct place for threads to work test X-lc = "X$arg" && continue ;; esac elif test X-lc_r = "X$arg"; then case $host in *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-bitrig*) # Do not include libc_r directly, use -pthread flag. continue ;; esac fi func_append deplibs " $arg" continue ;; -mllvm) prev=mllvm continue ;; -module) module=yes continue ;; # Tru64 UNIX uses -model [arg] to determine the layout of C++ # classes, name mangling, and exception handling. # Darwin uses the -arch flag to determine output architecture. -model|-arch|-isysroot|--sysroot) func_append compiler_flags " $arg" func_append compile_command " $arg" func_append finalize_command " $arg" prev=xcompiler continue ;; -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe \ |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*) func_append compiler_flags " $arg" func_append compile_command " $arg" func_append finalize_command " $arg" case "$new_inherited_linker_flags " in *" $arg "*) ;; * ) func_append new_inherited_linker_flags " $arg" ;; esac continue ;; -multi_module) single_module=$wl-multi_module continue ;; -no-fast-install) fast_install=no continue ;; -no-install) case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-darwin* | *-cegcc*) # The PATH hackery in wrapper scripts is required on Windows # and Darwin in order for the loader to find any dlls it needs. func_warning "'-no-install' is ignored for $host" func_warning "assuming '-no-fast-install' instead" fast_install=no ;; *) no_install=yes ;; esac continue ;; -no-undefined) allow_undefined=no continue ;; -objectlist) prev=objectlist continue ;; -os2dllname) prev=os2dllname continue ;; -o) prev=output ;; -precious-files-regex) prev=precious_regex continue ;; -release) prev=release continue ;; -rpath) prev=rpath continue ;; -R) prev=xrpath continue ;; -R*) func_stripname '-R' '' "$arg" dir=$func_stripname_result # We need an absolute path. case $dir in [\\/]* | [A-Za-z]:[\\/]*) ;; =*) func_stripname '=' '' "$dir" dir=$lt_sysroot$func_stripname_result ;; *) func_fatal_error "only absolute run-paths are allowed" ;; esac case "$xrpath " in *" $dir "*) ;; *) func_append xrpath " $dir" ;; esac continue ;; -shared) # The effects of -shared are defined in a previous loop. continue ;; -shrext) prev=shrext continue ;; -static | -static-libtool-libs) # The effects of -static are defined in a previous loop. # We used to do the same as -all-static on platforms that # didn't have a PIC flag, but the assumption that the effects # would be equivalent was wrong. It would break on at least # Digital Unix and AIX. continue ;; -thread-safe) thread_safe=yes continue ;; -version-info) prev=vinfo continue ;; -version-number) prev=vinfo vinfo_number=yes continue ;; -weak) prev=weak continue ;; -Wc,*) func_stripname '-Wc,' '' "$arg" args=$func_stripname_result arg= save_ifs=$IFS; IFS=, for flag in $args; do IFS=$save_ifs func_quote_for_eval "$flag" func_append arg " $func_quote_for_eval_result" func_append compiler_flags " $func_quote_for_eval_result" done IFS=$save_ifs func_stripname ' ' '' "$arg" arg=$func_stripname_result ;; -Wl,*) func_stripname '-Wl,' '' "$arg" args=$func_stripname_result arg= save_ifs=$IFS; IFS=, for flag in $args; do IFS=$save_ifs func_quote_for_eval "$flag" func_append arg " $wl$func_quote_for_eval_result" func_append compiler_flags " $wl$func_quote_for_eval_result" func_append linker_flags " $func_quote_for_eval_result" done IFS=$save_ifs func_stripname ' ' '' "$arg" arg=$func_stripname_result ;; -Xcompiler) prev=xcompiler continue ;; -Xlinker) prev=xlinker continue ;; -XCClinker) prev=xcclinker continue ;; # -msg_* for osf cc -msg_*) func_quote_for_eval "$arg" arg=$func_quote_for_eval_result ;; # Flags to be passed through unchanged, with rationale: # -64, -mips[0-9] enable 64-bit mode for the SGI compiler # -r[0-9][0-9]* specify processor for the SGI compiler # -xarch=*, -xtarget=* enable 64-bit mode for the Sun compiler # +DA*, +DD* enable 64-bit mode for the HP compiler # -q* compiler args for the IBM compiler # -m*, -t[45]*, -txscale* architecture-specific flags for GCC # -F/path path to uninstalled frameworks, gcc on darwin # -p, -pg, --coverage, -fprofile-* profiling flags for GCC # -fstack-protector* stack protector flags for GCC # @file GCC response files # -tp=* Portland pgcc target processor selection # --sysroot=* for sysroot support # -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization # -specs=* GCC specs files # -stdlib=* select c++ std lib with clang # -fsanitize=* Clang/GCC memory and address sanitizer -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \ -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \ -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*| \ -specs=*|-fsanitize=*) func_quote_for_eval "$arg" arg=$func_quote_for_eval_result func_append compile_command " $arg" func_append finalize_command " $arg" func_append compiler_flags " $arg" continue ;; -Z*) if test os2 = "`expr $host : '.*\(os2\)'`"; then # OS/2 uses -Zxxx to specify OS/2-specific options compiler_flags="$compiler_flags $arg" func_append compile_command " $arg" func_append finalize_command " $arg" case $arg in -Zlinker | -Zstack) prev=xcompiler ;; esac continue else # Otherwise treat like 'Some other compiler flag' below func_quote_for_eval "$arg" arg=$func_quote_for_eval_result fi ;; # Some other compiler flag. -* | +*) func_quote_for_eval "$arg" arg=$func_quote_for_eval_result ;; *.$objext) # A standard object. func_append objs " $arg" ;; *.lo) # A libtool-controlled object. # Check to see that this really is a libtool object. if func_lalib_unsafe_p "$arg"; then pic_object= non_pic_object= # Read the .lo file func_source "$arg" if test -z "$pic_object" || test -z "$non_pic_object" || test none = "$pic_object" && test none = "$non_pic_object"; then func_fatal_error "cannot find name of object for '$arg'" fi # Extract subdirectory from the argument. func_dirname "$arg" "/" "" xdir=$func_dirname_result test none = "$pic_object" || { # Prepend the subdirectory the object is found in. pic_object=$xdir$pic_object if test dlfiles = "$prev"; then if test yes = "$build_libtool_libs" && test yes = "$dlopen_support"; then func_append dlfiles " $pic_object" prev= continue else # If libtool objects are unsupported, then we need to preload. prev=dlprefiles fi fi # CHECK ME: I think I busted this. -Ossama if test dlprefiles = "$prev"; then # Preload the old-style object. func_append dlprefiles " $pic_object" prev= fi # A PIC object. func_append libobjs " $pic_object" arg=$pic_object } # Non-PIC object. if test none != "$non_pic_object"; then # Prepend the subdirectory the object is found in. non_pic_object=$xdir$non_pic_object # A standard non-PIC object func_append non_pic_objects " $non_pic_object" if test -z "$pic_object" || test none = "$pic_object"; then arg=$non_pic_object fi else # If the PIC object exists, use it instead. # $xdir was prepended to $pic_object above. non_pic_object=$pic_object func_append non_pic_objects " $non_pic_object" fi else # Only an error if not doing a dry-run. if $opt_dry_run; then # Extract subdirectory from the argument. func_dirname "$arg" "/" "" xdir=$func_dirname_result func_lo2o "$arg" pic_object=$xdir$objdir/$func_lo2o_result non_pic_object=$xdir$func_lo2o_result func_append libobjs " $pic_object" func_append non_pic_objects " $non_pic_object" else func_fatal_error "'$arg' is not a valid libtool object" fi fi ;; *.$libext) # An archive. func_append deplibs " $arg" func_append old_deplibs " $arg" continue ;; *.la) # A libtool-controlled library. func_resolve_sysroot "$arg" if test dlfiles = "$prev"; then # This library was specified with -dlopen. func_append dlfiles " $func_resolve_sysroot_result" prev= elif test dlprefiles = "$prev"; then # The library was specified with -dlpreopen. func_append dlprefiles " $func_resolve_sysroot_result" prev= else func_append deplibs " $func_resolve_sysroot_result" fi continue ;; # Some other compiler argument. *) # Unknown arguments in both finalize_command and compile_command need # to be aesthetically quoted because they are evaled later. func_quote_for_eval "$arg" arg=$func_quote_for_eval_result ;; esac # arg # Now actually substitute the argument into the commands. if test -n "$arg"; then func_append compile_command " $arg" func_append finalize_command " $arg" fi done # argument parsing loop test -n "$prev" && \ func_fatal_help "the '$prevarg' option requires an argument" if test yes = "$export_dynamic" && test -n "$export_dynamic_flag_spec"; then eval arg=\"$export_dynamic_flag_spec\" func_append compile_command " $arg" func_append finalize_command " $arg" fi oldlibs= # calculate the name of the file, without its directory func_basename "$output" outputname=$func_basename_result libobjs_save=$libobjs if test -n "$shlibpath_var"; then # get the directories listed in $shlibpath_var eval shlib_search_path=\`\$ECHO \"\$$shlibpath_var\" \| \$SED \'s/:/ /g\'\` else shlib_search_path= fi eval sys_lib_search_path=\"$sys_lib_search_path_spec\" eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\" # Definition is injected by LT_CONFIG during libtool generation. func_munge_path_list sys_lib_dlsearch_path "$LT_SYS_LIBRARY_PATH" func_dirname "$output" "/" "" output_objdir=$func_dirname_result$objdir func_to_tool_file "$output_objdir/" tool_output_objdir=$func_to_tool_file_result # Create the object directory. func_mkdir_p "$output_objdir" # Determine the type of output case $output in "") func_fatal_help "you must specify an output file" ;; *.$libext) linkmode=oldlib ;; *.lo | *.$objext) linkmode=obj ;; *.la) linkmode=lib ;; *) linkmode=prog ;; # Anything else should be a program. esac specialdeplibs= libs= # Find all interdependent deplibs by searching for libraries # that are linked more than once (e.g. -la -lb -la) for deplib in $deplibs; do if $opt_preserve_dup_deps; then case "$libs " in *" $deplib "*) func_append specialdeplibs " $deplib" ;; esac fi func_append libs " $deplib" done if test lib = "$linkmode"; then libs="$predeps $libs $compiler_lib_search_path $postdeps" # Compute libraries that are listed more than once in $predeps # $postdeps and mark them as special (i.e., whose duplicates are # not to be eliminated). pre_post_deps= if $opt_duplicate_compiler_generated_deps; then for pre_post_dep in $predeps $postdeps; do case "$pre_post_deps " in *" $pre_post_dep "*) func_append specialdeplibs " $pre_post_deps" ;; esac func_append pre_post_deps " $pre_post_dep" done fi pre_post_deps= fi deplibs= newdependency_libs= newlib_search_path= need_relink=no # whether we're linking any uninstalled libtool libraries notinst_deplibs= # not-installed libtool libraries notinst_path= # paths that contain not-installed libtool libraries case $linkmode in lib) passes="conv dlpreopen link" for file in $dlfiles $dlprefiles; do case $file in *.la) ;; *) func_fatal_help "libraries can '-dlopen' only libtool libraries: $file" ;; esac done ;; prog) compile_deplibs= finalize_deplibs= alldeplibs=false newdlfiles= newdlprefiles= passes="conv scan dlopen dlpreopen link" ;; *) passes="conv" ;; esac for pass in $passes; do # The preopen pass in lib mode reverses $deplibs; put it back here # so that -L comes before libs that need it for instance... if test lib,link = "$linkmode,$pass"; then ## FIXME: Find the place where the list is rebuilt in the wrong ## order, and fix it there properly tmp_deplibs= for deplib in $deplibs; do tmp_deplibs="$deplib $tmp_deplibs" done deplibs=$tmp_deplibs fi if test lib,link = "$linkmode,$pass" || test prog,scan = "$linkmode,$pass"; then libs=$deplibs deplibs= fi if test prog = "$linkmode"; then case $pass in dlopen) libs=$dlfiles ;; dlpreopen) libs=$dlprefiles ;; link) libs="$deplibs %DEPLIBS%" test "X$link_all_deplibs" != Xno && libs="$libs $dependency_libs" ;; esac fi if test lib,dlpreopen = "$linkmode,$pass"; then # Collect and forward deplibs of preopened libtool libs for lib in $dlprefiles; do # Ignore non-libtool-libs dependency_libs= func_resolve_sysroot "$lib" case $lib in *.la) func_source "$func_resolve_sysroot_result" ;; esac # Collect preopened libtool deplibs, except any this library # has declared as weak libs for deplib in $dependency_libs; do func_basename "$deplib" deplib_base=$func_basename_result case " $weak_libs " in *" $deplib_base "*) ;; *) func_append deplibs " $deplib" ;; esac done done libs=$dlprefiles fi if test dlopen = "$pass"; then # Collect dlpreopened libraries save_deplibs=$deplibs deplibs= fi for deplib in $libs; do lib= found=false case $deplib in -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe \ |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*) if test prog,link = "$linkmode,$pass"; then compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" else func_append compiler_flags " $deplib" if test lib = "$linkmode"; then case "$new_inherited_linker_flags " in *" $deplib "*) ;; * ) func_append new_inherited_linker_flags " $deplib" ;; esac fi fi continue ;; -l*) if test lib != "$linkmode" && test prog != "$linkmode"; then func_warning "'-l' is ignored for archives/objects" continue fi func_stripname '-l' '' "$deplib" name=$func_stripname_result if test lib = "$linkmode"; then searchdirs="$newlib_search_path $lib_search_path $compiler_lib_search_dirs $sys_lib_search_path $shlib_search_path" else searchdirs="$newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path" fi for searchdir in $searchdirs; do for search_ext in .la $std_shrext .so .a; do # Search the libtool library lib=$searchdir/lib$name$search_ext if test -f "$lib"; then if test .la = "$search_ext"; then found=: else found=false fi break 2 fi done done if $found; then # deplib is a libtool library # If $allow_libtool_libs_with_static_runtimes && $deplib is a stdlib, # We need to do some special things here, and not later. if test yes = "$allow_libtool_libs_with_static_runtimes"; then case " $predeps $postdeps " in *" $deplib "*) if func_lalib_p "$lib"; then library_names= old_library= func_source "$lib" for l in $old_library $library_names; do ll=$l done if test "X$ll" = "X$old_library"; then # only static version available found=false func_dirname "$lib" "" "." ladir=$func_dirname_result lib=$ladir/$old_library if test prog,link = "$linkmode,$pass"; then compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" else deplibs="$deplib $deplibs" test lib = "$linkmode" && newdependency_libs="$deplib $newdependency_libs" fi continue fi fi ;; *) ;; esac fi else # deplib doesn't seem to be a libtool library if test prog,link = "$linkmode,$pass"; then compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" else deplibs="$deplib $deplibs" test lib = "$linkmode" && newdependency_libs="$deplib $newdependency_libs" fi continue fi ;; # -l *.ltframework) if test prog,link = "$linkmode,$pass"; then compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" else deplibs="$deplib $deplibs" if test lib = "$linkmode"; then case "$new_inherited_linker_flags " in *" $deplib "*) ;; * ) func_append new_inherited_linker_flags " $deplib" ;; esac fi fi continue ;; -L*) case $linkmode in lib) deplibs="$deplib $deplibs" test conv = "$pass" && continue newdependency_libs="$deplib $newdependency_libs" func_stripname '-L' '' "$deplib" func_resolve_sysroot "$func_stripname_result" func_append newlib_search_path " $func_resolve_sysroot_result" ;; prog) if test conv = "$pass"; then deplibs="$deplib $deplibs" continue fi if test scan = "$pass"; then deplibs="$deplib $deplibs" else compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" fi func_stripname '-L' '' "$deplib" func_resolve_sysroot "$func_stripname_result" func_append newlib_search_path " $func_resolve_sysroot_result" ;; *) func_warning "'-L' is ignored for archives/objects" ;; esac # linkmode continue ;; # -L -R*) if test link = "$pass"; then func_stripname '-R' '' "$deplib" func_resolve_sysroot "$func_stripname_result" dir=$func_resolve_sysroot_result # Make sure the xrpath contains only unique directories. case "$xrpath " in *" $dir "*) ;; *) func_append xrpath " $dir" ;; esac fi deplibs="$deplib $deplibs" continue ;; *.la) func_resolve_sysroot "$deplib" lib=$func_resolve_sysroot_result ;; *.$libext) if test conv = "$pass"; then deplibs="$deplib $deplibs" continue fi case $linkmode in lib) # Linking convenience modules into shared libraries is allowed, # but linking other static libraries is non-portable. case " $dlpreconveniencelibs " in *" $deplib "*) ;; *) valid_a_lib=false case $deplibs_check_method in match_pattern*) set dummy $deplibs_check_method; shift match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"` if eval "\$ECHO \"$deplib\"" 2>/dev/null | $SED 10q \ | $EGREP "$match_pattern_regex" > /dev/null; then valid_a_lib=: fi ;; pass_all) valid_a_lib=: ;; esac if $valid_a_lib; then echo $ECHO "*** Warning: Linking the shared library $output against the" $ECHO "*** static library $deplib is not portable!" deplibs="$deplib $deplibs" else echo $ECHO "*** Warning: Trying to link with static lib archive $deplib." echo "*** I have the capability to make that library automatically link in when" echo "*** you link to this library. But I can only do this if you have a" echo "*** shared version of the library, which you do not appear to have" echo "*** because the file extensions .$libext of this argument makes me believe" echo "*** that it is just a static archive that I should not use here." fi ;; esac continue ;; prog) if test link != "$pass"; then deplibs="$deplib $deplibs" else compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" fi continue ;; esac # linkmode ;; # *.$libext *.lo | *.$objext) if test conv = "$pass"; then deplibs="$deplib $deplibs" elif test prog = "$linkmode"; then if test dlpreopen = "$pass" || test yes != "$dlopen_support" || test no = "$build_libtool_libs"; then # If there is no dlopen support or we're linking statically, # we need to preload. func_append newdlprefiles " $deplib" compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" else func_append newdlfiles " $deplib" fi fi continue ;; %DEPLIBS%) alldeplibs=: continue ;; esac # case $deplib $found || test -f "$lib" \ || func_fatal_error "cannot find the library '$lib' or unhandled argument '$deplib'" # Check to see that this really is a libtool archive. func_lalib_unsafe_p "$lib" \ || func_fatal_error "'$lib' is not a valid libtool archive" func_dirname "$lib" "" "." ladir=$func_dirname_result dlname= dlopen= dlpreopen= libdir= library_names= old_library= inherited_linker_flags= # If the library was installed with an old release of libtool, # it will not redefine variables installed, or shouldnotlink installed=yes shouldnotlink=no avoidtemprpath= # Read the .la file func_source "$lib" # Convert "-framework foo" to "foo.ltframework" if test -n "$inherited_linker_flags"; then tmp_inherited_linker_flags=`$ECHO "$inherited_linker_flags" | $SED 's/-framework \([^ $]*\)/\1.ltframework/g'` for tmp_inherited_linker_flag in $tmp_inherited_linker_flags; do case " $new_inherited_linker_flags " in *" $tmp_inherited_linker_flag "*) ;; *) func_append new_inherited_linker_flags " $tmp_inherited_linker_flag";; esac done fi dependency_libs=`$ECHO " $dependency_libs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` if test lib,link = "$linkmode,$pass" || test prog,scan = "$linkmode,$pass" || { test prog != "$linkmode" && test lib != "$linkmode"; }; then test -n "$dlopen" && func_append dlfiles " $dlopen" test -n "$dlpreopen" && func_append dlprefiles " $dlpreopen" fi if test conv = "$pass"; then # Only check for convenience libraries deplibs="$lib $deplibs" if test -z "$libdir"; then if test -z "$old_library"; then func_fatal_error "cannot find name of link library for '$lib'" fi # It is a libtool convenience library, so add in its objects. func_append convenience " $ladir/$objdir/$old_library" func_append old_convenience " $ladir/$objdir/$old_library" tmp_libs= for deplib in $dependency_libs; do deplibs="$deplib $deplibs" if $opt_preserve_dup_deps; then case "$tmp_libs " in *" $deplib "*) func_append specialdeplibs " $deplib" ;; esac fi func_append tmp_libs " $deplib" done elif test prog != "$linkmode" && test lib != "$linkmode"; then func_fatal_error "'$lib' is not a convenience library" fi continue fi # $pass = conv # Get the name of the library we link against. linklib= if test -n "$old_library" && { test yes = "$prefer_static_libs" || test built,no = "$prefer_static_libs,$installed"; }; then linklib=$old_library else for l in $old_library $library_names; do linklib=$l done fi if test -z "$linklib"; then func_fatal_error "cannot find name of link library for '$lib'" fi # This library was specified with -dlopen. if test dlopen = "$pass"; then test -z "$libdir" \ && func_fatal_error "cannot -dlopen a convenience library: '$lib'" if test -z "$dlname" || test yes != "$dlopen_support" || test no = "$build_libtool_libs" then # If there is no dlname, no dlopen support or we're linking # statically, we need to preload. We also need to preload any # dependent libraries so libltdl's deplib preloader doesn't # bomb out in the load deplibs phase. func_append dlprefiles " $lib $dependency_libs" else func_append newdlfiles " $lib" fi continue fi # $pass = dlopen # We need an absolute path. case $ladir in [\\/]* | [A-Za-z]:[\\/]*) abs_ladir=$ladir ;; *) abs_ladir=`cd "$ladir" && pwd` if test -z "$abs_ladir"; then func_warning "cannot determine absolute directory name of '$ladir'" func_warning "passing it literally to the linker, although it might fail" abs_ladir=$ladir fi ;; esac func_basename "$lib" laname=$func_basename_result # Find the relevant object directory and library name. if test yes = "$installed"; then if test ! -f "$lt_sysroot$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then func_warning "library '$lib' was moved." dir=$ladir absdir=$abs_ladir libdir=$abs_ladir else dir=$lt_sysroot$libdir absdir=$lt_sysroot$libdir fi test yes = "$hardcode_automatic" && avoidtemprpath=yes else if test ! -f "$ladir/$objdir/$linklib" && test -f "$abs_ladir/$linklib"; then dir=$ladir absdir=$abs_ladir # Remove this search path later func_append notinst_path " $abs_ladir" else dir=$ladir/$objdir absdir=$abs_ladir/$objdir # Remove this search path later func_append notinst_path " $abs_ladir" fi fi # $installed = yes func_stripname 'lib' '.la' "$laname" name=$func_stripname_result # This library was specified with -dlpreopen. if test dlpreopen = "$pass"; then if test -z "$libdir" && test prog = "$linkmode"; then func_fatal_error "only libraries may -dlpreopen a convenience library: '$lib'" fi case $host in # special handling for platforms with PE-DLLs. *cygwin* | *mingw* | *cegcc* ) # Linker will automatically link against shared library if both # static and shared are present. Therefore, ensure we extract # symbols from the import library if a shared library is present # (otherwise, the dlopen module name will be incorrect). We do # this by putting the import library name into $newdlprefiles. # We recover the dlopen module name by 'saving' the la file # name in a special purpose variable, and (later) extracting the # dlname from the la file. if test -n "$dlname"; then func_tr_sh "$dir/$linklib" eval "libfile_$func_tr_sh_result=\$abs_ladir/\$laname" func_append newdlprefiles " $dir/$linklib" else func_append newdlprefiles " $dir/$old_library" # Keep a list of preopened convenience libraries to check # that they are being used correctly in the link pass. test -z "$libdir" && \ func_append dlpreconveniencelibs " $dir/$old_library" fi ;; * ) # Prefer using a static library (so that no silly _DYNAMIC symbols # are required to link). if test -n "$old_library"; then func_append newdlprefiles " $dir/$old_library" # Keep a list of preopened convenience libraries to check # that they are being used correctly in the link pass. test -z "$libdir" && \ func_append dlpreconveniencelibs " $dir/$old_library" # Otherwise, use the dlname, so that lt_dlopen finds it. elif test -n "$dlname"; then func_append newdlprefiles " $dir/$dlname" else func_append newdlprefiles " $dir/$linklib" fi ;; esac fi # $pass = dlpreopen if test -z "$libdir"; then # Link the convenience library if test lib = "$linkmode"; then deplibs="$dir/$old_library $deplibs" elif test prog,link = "$linkmode,$pass"; then compile_deplibs="$dir/$old_library $compile_deplibs" finalize_deplibs="$dir/$old_library $finalize_deplibs" else deplibs="$lib $deplibs" # used for prog,scan pass fi continue fi if test prog = "$linkmode" && test link != "$pass"; then func_append newlib_search_path " $ladir" deplibs="$lib $deplibs" linkalldeplibs=false if test no != "$link_all_deplibs" || test -z "$library_names" || test no = "$build_libtool_libs"; then linkalldeplibs=: fi tmp_libs= for deplib in $dependency_libs; do case $deplib in -L*) func_stripname '-L' '' "$deplib" func_resolve_sysroot "$func_stripname_result" func_append newlib_search_path " $func_resolve_sysroot_result" ;; esac # Need to link against all dependency_libs? if $linkalldeplibs; then deplibs="$deplib $deplibs" else # Need to hardcode shared library paths # or/and link against static libraries newdependency_libs="$deplib $newdependency_libs" fi if $opt_preserve_dup_deps; then case "$tmp_libs " in *" $deplib "*) func_append specialdeplibs " $deplib" ;; esac fi func_append tmp_libs " $deplib" done # for deplib continue fi # $linkmode = prog... if test prog,link = "$linkmode,$pass"; then if test -n "$library_names" && { { test no = "$prefer_static_libs" || test built,yes = "$prefer_static_libs,$installed"; } || test -z "$old_library"; }; then # We need to hardcode the library path if test -n "$shlibpath_var" && test -z "$avoidtemprpath"; then # Make sure the rpath contains only unique directories. case $temp_rpath: in *"$absdir:"*) ;; *) func_append temp_rpath "$absdir:" ;; esac fi # Hardcode the library path. # Skip directories that are in the system default run-time # search path. case " $sys_lib_dlsearch_path " in *" $absdir "*) ;; *) case "$compile_rpath " in *" $absdir "*) ;; *) func_append compile_rpath " $absdir" ;; esac ;; esac case " $sys_lib_dlsearch_path " in *" $libdir "*) ;; *) case "$finalize_rpath " in *" $libdir "*) ;; *) func_append finalize_rpath " $libdir" ;; esac ;; esac fi # $linkmode,$pass = prog,link... if $alldeplibs && { test pass_all = "$deplibs_check_method" || { test yes = "$build_libtool_libs" && test -n "$library_names"; }; }; then # We only need to search for static libraries continue fi fi link_static=no # Whether the deplib will be linked statically use_static_libs=$prefer_static_libs if test built = "$use_static_libs" && test yes = "$installed"; then use_static_libs=no fi if test -n "$library_names" && { test no = "$use_static_libs" || test -z "$old_library"; }; then case $host in *cygwin* | *mingw* | *cegcc* | *os2*) # No point in relinking DLLs because paths are not encoded func_append notinst_deplibs " $lib" need_relink=no ;; *) if test no = "$installed"; then func_append notinst_deplibs " $lib" need_relink=yes fi ;; esac # This is a shared library # Warn about portability, can't link against -module's on some # systems (darwin). Don't bleat about dlopened modules though! dlopenmodule= for dlpremoduletest in $dlprefiles; do if test "X$dlpremoduletest" = "X$lib"; then dlopenmodule=$dlpremoduletest break fi done if test -z "$dlopenmodule" && test yes = "$shouldnotlink" && test link = "$pass"; then echo if test prog = "$linkmode"; then $ECHO "*** Warning: Linking the executable $output against the loadable module" else $ECHO "*** Warning: Linking the shared library $output against the loadable module" fi $ECHO "*** $linklib is not portable!" fi if test lib = "$linkmode" && test yes = "$hardcode_into_libs"; then # Hardcode the library path. # Skip directories that are in the system default run-time # search path. case " $sys_lib_dlsearch_path " in *" $absdir "*) ;; *) case "$compile_rpath " in *" $absdir "*) ;; *) func_append compile_rpath " $absdir" ;; esac ;; esac case " $sys_lib_dlsearch_path " in *" $libdir "*) ;; *) case "$finalize_rpath " in *" $libdir "*) ;; *) func_append finalize_rpath " $libdir" ;; esac ;; esac fi if test -n "$old_archive_from_expsyms_cmds"; then # figure out the soname set dummy $library_names shift realname=$1 shift libname=`eval "\\$ECHO \"$libname_spec\""` # use dlname if we got it. it's perfectly good, no? if test -n "$dlname"; then soname=$dlname elif test -n "$soname_spec"; then # bleh windows case $host in *cygwin* | mingw* | *cegcc* | *os2*) func_arith $current - $age major=$func_arith_result versuffix=-$major ;; esac eval soname=\"$soname_spec\" else soname=$realname fi # Make a new name for the extract_expsyms_cmds to use soroot=$soname func_basename "$soroot" soname=$func_basename_result func_stripname 'lib' '.dll' "$soname" newlib=libimp-$func_stripname_result.a # If the library has no export list, then create one now if test -f "$output_objdir/$soname-def"; then : else func_verbose "extracting exported symbol list from '$soname'" func_execute_cmds "$extract_expsyms_cmds" 'exit $?' fi # Create $newlib if test -f "$output_objdir/$newlib"; then :; else func_verbose "generating import library for '$soname'" func_execute_cmds "$old_archive_from_expsyms_cmds" 'exit $?' fi # make sure the library variables are pointing to the new library dir=$output_objdir linklib=$newlib fi # test -n "$old_archive_from_expsyms_cmds" if test prog = "$linkmode" || test relink != "$opt_mode"; then add_shlibpath= add_dir= add= lib_linked=yes case $hardcode_action in immediate | unsupported) if test no = "$hardcode_direct"; then add=$dir/$linklib case $host in *-*-sco3.2v5.0.[024]*) add_dir=-L$dir ;; *-*-sysv4*uw2*) add_dir=-L$dir ;; *-*-sysv5OpenUNIX* | *-*-sysv5UnixWare7.[01].[10]* | \ *-*-unixware7*) add_dir=-L$dir ;; *-*-darwin* ) # if the lib is a (non-dlopened) module then we cannot # link against it, someone is ignoring the earlier warnings if /usr/bin/file -L $add 2> /dev/null | $GREP ": [^:]* bundle" >/dev/null; then if test "X$dlopenmodule" != "X$lib"; then $ECHO "*** Warning: lib $linklib is a module, not a shared library" if test -z "$old_library"; then echo echo "*** And there doesn't seem to be a static archive available" echo "*** The link will probably fail, sorry" else add=$dir/$old_library fi elif test -n "$old_library"; then add=$dir/$old_library fi fi esac elif test no = "$hardcode_minus_L"; then case $host in *-*-sunos*) add_shlibpath=$dir ;; esac add_dir=-L$dir add=-l$name elif test no = "$hardcode_shlibpath_var"; then add_shlibpath=$dir add=-l$name else lib_linked=no fi ;; relink) if test yes = "$hardcode_direct" && test no = "$hardcode_direct_absolute"; then add=$dir/$linklib elif test yes = "$hardcode_minus_L"; then add_dir=-L$absdir # Try looking first in the location we're being installed to. if test -n "$inst_prefix_dir"; then case $libdir in [\\/]*) func_append add_dir " -L$inst_prefix_dir$libdir" ;; esac fi add=-l$name elif test yes = "$hardcode_shlibpath_var"; then add_shlibpath=$dir add=-l$name else lib_linked=no fi ;; *) lib_linked=no ;; esac if test yes != "$lib_linked"; then func_fatal_configuration "unsupported hardcode properties" fi if test -n "$add_shlibpath"; then case :$compile_shlibpath: in *":$add_shlibpath:"*) ;; *) func_append compile_shlibpath "$add_shlibpath:" ;; esac fi if test prog = "$linkmode"; then test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs" test -n "$add" && compile_deplibs="$add $compile_deplibs" else test -n "$add_dir" && deplibs="$add_dir $deplibs" test -n "$add" && deplibs="$add $deplibs" if test yes != "$hardcode_direct" && test yes != "$hardcode_minus_L" && test yes = "$hardcode_shlibpath_var"; then case :$finalize_shlibpath: in *":$libdir:"*) ;; *) func_append finalize_shlibpath "$libdir:" ;; esac fi fi fi if test prog = "$linkmode" || test relink = "$opt_mode"; then add_shlibpath= add_dir= add= # Finalize command for both is simple: just hardcode it. if test yes = "$hardcode_direct" && test no = "$hardcode_direct_absolute"; then add=$libdir/$linklib elif test yes = "$hardcode_minus_L"; then add_dir=-L$libdir add=-l$name elif test yes = "$hardcode_shlibpath_var"; then case :$finalize_shlibpath: in *":$libdir:"*) ;; *) func_append finalize_shlibpath "$libdir:" ;; esac add=-l$name elif test yes = "$hardcode_automatic"; then if test -n "$inst_prefix_dir" && test -f "$inst_prefix_dir$libdir/$linklib"; then add=$inst_prefix_dir$libdir/$linklib else add=$libdir/$linklib fi else # We cannot seem to hardcode it, guess we'll fake it. add_dir=-L$libdir # Try looking first in the location we're being installed to. if test -n "$inst_prefix_dir"; then case $libdir in [\\/]*) func_append add_dir " -L$inst_prefix_dir$libdir" ;; esac fi add=-l$name fi if test prog = "$linkmode"; then test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs" test -n "$add" && finalize_deplibs="$add $finalize_deplibs" else test -n "$add_dir" && deplibs="$add_dir $deplibs" test -n "$add" && deplibs="$add $deplibs" fi fi elif test prog = "$linkmode"; then # Here we assume that one of hardcode_direct or hardcode_minus_L # is not unsupported. This is valid on all known static and # shared platforms. if test unsupported != "$hardcode_direct"; then test -n "$old_library" && linklib=$old_library compile_deplibs="$dir/$linklib $compile_deplibs" finalize_deplibs="$dir/$linklib $finalize_deplibs" else compile_deplibs="-l$name -L$dir $compile_deplibs" finalize_deplibs="-l$name -L$dir $finalize_deplibs" fi elif test yes = "$build_libtool_libs"; then # Not a shared library if test pass_all != "$deplibs_check_method"; then # We're trying link a shared library against a static one # but the system doesn't support it. # Just print a warning and add the library to dependency_libs so # that the program can be linked against the static library. echo $ECHO "*** Warning: This system cannot link to static lib archive $lib." echo "*** I have the capability to make that library automatically link in when" echo "*** you link to this library. But I can only do this if you have a" echo "*** shared version of the library, which you do not appear to have." if test yes = "$module"; then echo "*** But as you try to build a module library, libtool will still create " echo "*** a static module, that should work as long as the dlopening application" echo "*** is linked with the -dlopen flag to resolve symbols at runtime." if test -z "$global_symbol_pipe"; then echo echo "*** However, this would only work if libtool was able to extract symbol" echo "*** lists from a program, using 'nm' or equivalent, but libtool could" echo "*** not find such a program. So, this module is probably useless." echo "*** 'nm' from GNU binutils and a full rebuild may help." fi if test no = "$build_old_libs"; then build_libtool_libs=module build_old_libs=yes else build_libtool_libs=no fi fi else deplibs="$dir/$old_library $deplibs" link_static=yes fi fi # link shared/static library? if test lib = "$linkmode"; then if test -n "$dependency_libs" && { test yes != "$hardcode_into_libs" || test yes = "$build_old_libs" || test yes = "$link_static"; }; then # Extract -R from dependency_libs temp_deplibs= for libdir in $dependency_libs; do case $libdir in -R*) func_stripname '-R' '' "$libdir" temp_xrpath=$func_stripname_result case " $xrpath " in *" $temp_xrpath "*) ;; *) func_append xrpath " $temp_xrpath";; esac;; *) func_append temp_deplibs " $libdir";; esac done dependency_libs=$temp_deplibs fi func_append newlib_search_path " $absdir" # Link against this library test no = "$link_static" && newdependency_libs="$abs_ladir/$laname $newdependency_libs" # ... and its dependency_libs tmp_libs= for deplib in $dependency_libs; do newdependency_libs="$deplib $newdependency_libs" case $deplib in -L*) func_stripname '-L' '' "$deplib" func_resolve_sysroot "$func_stripname_result";; *) func_resolve_sysroot "$deplib" ;; esac if $opt_preserve_dup_deps; then case "$tmp_libs " in *" $func_resolve_sysroot_result "*) func_append specialdeplibs " $func_resolve_sysroot_result" ;; esac fi func_append tmp_libs " $func_resolve_sysroot_result" done if test no != "$link_all_deplibs"; then # Add the search paths of all dependency libraries for deplib in $dependency_libs; do path= case $deplib in -L*) path=$deplib ;; *.la) func_resolve_sysroot "$deplib" deplib=$func_resolve_sysroot_result func_dirname "$deplib" "" "." dir=$func_dirname_result # We need an absolute path. case $dir in [\\/]* | [A-Za-z]:[\\/]*) absdir=$dir ;; *) absdir=`cd "$dir" && pwd` if test -z "$absdir"; then func_warning "cannot determine absolute directory name of '$dir'" absdir=$dir fi ;; esac if $GREP "^installed=no" $deplib > /dev/null; then case $host in *-*-darwin*) depdepl= eval deplibrary_names=`$SED -n -e 's/^library_names=\(.*\)$/\1/p' $deplib` if test -n "$deplibrary_names"; then for tmp in $deplibrary_names; do depdepl=$tmp done if test -f "$absdir/$objdir/$depdepl"; then depdepl=$absdir/$objdir/$depdepl darwin_install_name=`$OTOOL -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'` if test -z "$darwin_install_name"; then darwin_install_name=`$OTOOL64 -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'` fi func_append compiler_flags " $wl-dylib_file $wl$darwin_install_name:$depdepl" func_append linker_flags " -dylib_file $darwin_install_name:$depdepl" path= fi fi ;; *) path=-L$absdir/$objdir ;; esac else eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` test -z "$libdir" && \ func_fatal_error "'$deplib' is not a valid libtool archive" test "$absdir" != "$libdir" && \ func_warning "'$deplib' seems to be moved" path=-L$absdir fi ;; esac case " $deplibs " in *" $path "*) ;; *) deplibs="$path $deplibs" ;; esac done fi # link_all_deplibs != no fi # linkmode = lib done # for deplib in $libs if test link = "$pass"; then if test prog = "$linkmode"; then compile_deplibs="$new_inherited_linker_flags $compile_deplibs" finalize_deplibs="$new_inherited_linker_flags $finalize_deplibs" else compiler_flags="$compiler_flags "`$ECHO " $new_inherited_linker_flags" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` fi fi dependency_libs=$newdependency_libs if test dlpreopen = "$pass"; then # Link the dlpreopened libraries before other libraries for deplib in $save_deplibs; do deplibs="$deplib $deplibs" done fi if test dlopen != "$pass"; then test conv = "$pass" || { # Make sure lib_search_path contains only unique directories. lib_search_path= for dir in $newlib_search_path; do case "$lib_search_path " in *" $dir "*) ;; *) func_append lib_search_path " $dir" ;; esac done newlib_search_path= } if test prog,link = "$linkmode,$pass"; then vars="compile_deplibs finalize_deplibs" else vars=deplibs fi for var in $vars dependency_libs; do # Add libraries to $var in reverse order eval tmp_libs=\"\$$var\" new_libs= for deplib in $tmp_libs; do # FIXME: Pedantically, this is the right thing to do, so # that some nasty dependency loop isn't accidentally # broken: #new_libs="$deplib $new_libs" # Pragmatically, this seems to cause very few problems in # practice: case $deplib in -L*) new_libs="$deplib $new_libs" ;; -R*) ;; *) # And here is the reason: when a library appears more # than once as an explicit dependence of a library, or # is implicitly linked in more than once by the # compiler, it is considered special, and multiple # occurrences thereof are not removed. Compare this # with having the same library being listed as a # dependency of multiple other libraries: in this case, # we know (pedantically, we assume) the library does not # need to be listed more than once, so we keep only the # last copy. This is not always right, but it is rare # enough that we require users that really mean to play # such unportable linking tricks to link the library # using -Wl,-lname, so that libtool does not consider it # for duplicate removal. case " $specialdeplibs " in *" $deplib "*) new_libs="$deplib $new_libs" ;; *) case " $new_libs " in *" $deplib "*) ;; *) new_libs="$deplib $new_libs" ;; esac ;; esac ;; esac done tmp_libs= for deplib in $new_libs; do case $deplib in -L*) case " $tmp_libs " in *" $deplib "*) ;; *) func_append tmp_libs " $deplib" ;; esac ;; *) func_append tmp_libs " $deplib" ;; esac done eval $var=\"$tmp_libs\" done # for var fi # Add Sun CC postdeps if required: test CXX = "$tagname" && { case $host_os in linux*) case `$CC -V 2>&1 | sed 5q` in *Sun\ C*) # Sun C++ 5.9 func_suncc_cstd_abi if test no != "$suncc_use_cstd_abi"; then func_append postdeps ' -library=Cstd -library=Crun' fi ;; esac ;; solaris*) func_cc_basename "$CC" case $func_cc_basename_result in CC* | sunCC*) func_suncc_cstd_abi if test no != "$suncc_use_cstd_abi"; then func_append postdeps ' -library=Cstd -library=Crun' fi ;; esac ;; esac } # Last step: remove runtime libs from dependency_libs # (they stay in deplibs) tmp_libs= for i in $dependency_libs; do case " $predeps $postdeps $compiler_lib_search_path " in *" $i "*) i= ;; esac if test -n "$i"; then func_append tmp_libs " $i" fi done dependency_libs=$tmp_libs done # for pass if test prog = "$linkmode"; then dlfiles=$newdlfiles fi if test prog = "$linkmode" || test lib = "$linkmode"; then dlprefiles=$newdlprefiles fi case $linkmode in oldlib) if test -n "$dlfiles$dlprefiles" || test no != "$dlself"; then func_warning "'-dlopen' is ignored for archives" fi case " $deplibs" in *\ -l* | *\ -L*) func_warning "'-l' and '-L' are ignored for archives" ;; esac test -n "$rpath" && \ func_warning "'-rpath' is ignored for archives" test -n "$xrpath" && \ func_warning "'-R' is ignored for archives" test -n "$vinfo" && \ func_warning "'-version-info/-version-number' is ignored for archives" test -n "$release" && \ func_warning "'-release' is ignored for archives" test -n "$export_symbols$export_symbols_regex" && \ func_warning "'-export-symbols' is ignored for archives" # Now set the variables for building old libraries. build_libtool_libs=no oldlibs=$output func_append objs "$old_deplibs" ;; lib) # Make sure we only generate libraries of the form 'libNAME.la'. case $outputname in lib*) func_stripname 'lib' '.la' "$outputname" name=$func_stripname_result eval shared_ext=\"$shrext_cmds\" eval libname=\"$libname_spec\" ;; *) test no = "$module" \ && func_fatal_help "libtool library '$output' must begin with 'lib'" if test no != "$need_lib_prefix"; then # Add the "lib" prefix for modules if required func_stripname '' '.la' "$outputname" name=$func_stripname_result eval shared_ext=\"$shrext_cmds\" eval libname=\"$libname_spec\" else func_stripname '' '.la' "$outputname" libname=$func_stripname_result fi ;; esac if test -n "$objs"; then if test pass_all != "$deplibs_check_method"; then func_fatal_error "cannot build libtool library '$output' from non-libtool objects on this host:$objs" else echo $ECHO "*** Warning: Linking the shared library $output against the non-libtool" $ECHO "*** objects $objs is not portable!" func_append libobjs " $objs" fi fi test no = "$dlself" \ || func_warning "'-dlopen self' is ignored for libtool libraries" set dummy $rpath shift test 1 -lt "$#" \ && func_warning "ignoring multiple '-rpath's for a libtool library" install_libdir=$1 oldlibs= if test -z "$rpath"; then if test yes = "$build_libtool_libs"; then # Building a libtool convenience library. # Some compilers have problems with a '.al' extension so # convenience libraries should have the same extension an # archive normally would. oldlibs="$output_objdir/$libname.$libext $oldlibs" build_libtool_libs=convenience build_old_libs=yes fi test -n "$vinfo" && \ func_warning "'-version-info/-version-number' is ignored for convenience libraries" test -n "$release" && \ func_warning "'-release' is ignored for convenience libraries" else # Parse the version information argument. save_ifs=$IFS; IFS=: set dummy $vinfo 0 0 0 shift IFS=$save_ifs test -n "$7" && \ func_fatal_help "too many parameters to '-version-info'" # convert absolute version numbers to libtool ages # this retains compatibility with .la files and attempts # to make the code below a bit more comprehensible case $vinfo_number in yes) number_major=$1 number_minor=$2 number_revision=$3 # # There are really only two kinds -- those that # use the current revision as the major version # and those that subtract age and use age as # a minor version. But, then there is irix # that has an extra 1 added just for fun # case $version_type in # correct linux to gnu/linux during the next big refactor darwin|freebsd-elf|linux|osf|windows|none) func_arith $number_major + $number_minor current=$func_arith_result age=$number_minor revision=$number_revision ;; freebsd-aout|qnx|sunos) current=$number_major revision=$number_minor age=0 ;; irix|nonstopux) func_arith $number_major + $number_minor current=$func_arith_result age=$number_minor revision=$number_minor lt_irix_increment=no ;; *) func_fatal_configuration "$modename: unknown library version type '$version_type'" ;; esac ;; no) current=$1 revision=$2 age=$3 ;; esac # Check that each of the things are valid numbers. case $current in 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; *) func_error "CURRENT '$current' must be a nonnegative integer" func_fatal_error "'$vinfo' is not valid version information" ;; esac case $revision in 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; *) func_error "REVISION '$revision' must be a nonnegative integer" func_fatal_error "'$vinfo' is not valid version information" ;; esac case $age in 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; *) func_error "AGE '$age' must be a nonnegative integer" func_fatal_error "'$vinfo' is not valid version information" ;; esac if test "$age" -gt "$current"; then func_error "AGE '$age' is greater than the current interface number '$current'" func_fatal_error "'$vinfo' is not valid version information" fi # Calculate the version variables. major= versuffix= verstring= case $version_type in none) ;; darwin) # Like Linux, but with the current version available in # verstring for coding it into the library header func_arith $current - $age major=.$func_arith_result versuffix=$major.$age.$revision # Darwin ld doesn't like 0 for these options... func_arith $current + 1 minor_current=$func_arith_result xlcverstring="$wl-compatibility_version $wl$minor_current $wl-current_version $wl$minor_current.$revision" verstring="-compatibility_version $minor_current -current_version $minor_current.$revision" # On Darwin other compilers case $CC in nagfor*) verstring="$wl-compatibility_version $wl$minor_current $wl-current_version $wl$minor_current.$revision" ;; *) verstring="-compatibility_version $minor_current -current_version $minor_current.$revision" ;; esac ;; freebsd-aout) major=.$current versuffix=.$current.$revision ;; freebsd-elf) func_arith $current - $age major=.$func_arith_result versuffix=$major.$age.$revision ;; irix | nonstopux) if test no = "$lt_irix_increment"; then func_arith $current - $age else func_arith $current - $age + 1 fi major=$func_arith_result case $version_type in nonstopux) verstring_prefix=nonstopux ;; *) verstring_prefix=sgi ;; esac verstring=$verstring_prefix$major.$revision # Add in all the interfaces that we are compatible with. loop=$revision while test 0 -ne "$loop"; do func_arith $revision - $loop iface=$func_arith_result func_arith $loop - 1 loop=$func_arith_result verstring=$verstring_prefix$major.$iface:$verstring done # Before this point, $major must not contain '.'. major=.$major versuffix=$major.$revision ;; linux) # correct to gnu/linux during the next big refactor func_arith $current - $age major=.$func_arith_result versuffix=$major.$age.$revision ;; osf) func_arith $current - $age major=.$func_arith_result versuffix=.$current.$age.$revision verstring=$current.$age.$revision # Add in all the interfaces that we are compatible with. loop=$age while test 0 -ne "$loop"; do func_arith $current - $loop iface=$func_arith_result func_arith $loop - 1 loop=$func_arith_result verstring=$verstring:$iface.0 done # Make executables depend on our current version. func_append verstring ":$current.0" ;; qnx) major=.$current versuffix=.$current ;; sco) major=.$current versuffix=.$current ;; sunos) major=.$current versuffix=.$current.$revision ;; windows) # Use '-' rather than '.', since we only want one # extension on DOS 8.3 file systems. func_arith $current - $age major=$func_arith_result versuffix=-$major ;; *) func_fatal_configuration "unknown library version type '$version_type'" ;; esac # Clear the version info if we defaulted, and they specified a release. if test -z "$vinfo" && test -n "$release"; then major= case $version_type in darwin) # we can't check for "0.0" in archive_cmds due to quoting # problems, so we reset it completely verstring= ;; *) verstring=0.0 ;; esac if test no = "$need_version"; then versuffix= else versuffix=.0.0 fi fi # Remove version info from name if versioning should be avoided if test yes,no = "$avoid_version,$need_version"; then major= versuffix= verstring= fi # Check to see if the archive will have undefined symbols. if test yes = "$allow_undefined"; then if test unsupported = "$allow_undefined_flag"; then if test yes = "$build_old_libs"; then func_warning "undefined symbols not allowed in $host shared libraries; building static only" build_libtool_libs=no else func_fatal_error "can't build $host shared library unless -no-undefined is specified" fi fi else # Don't allow undefined symbols. allow_undefined_flag=$no_undefined_flag fi fi func_generate_dlsyms "$libname" "$libname" : func_append libobjs " $symfileobj" test " " = "$libobjs" && libobjs= if test relink != "$opt_mode"; then # Remove our outputs, but don't remove object files since they # may have been created when compiling PIC objects. removelist= tempremovelist=`$ECHO "$output_objdir/*"` for p in $tempremovelist; do case $p in *.$objext | *.gcno) ;; $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/$libname$release.*) if test -n "$precious_files_regex"; then if $ECHO "$p" | $EGREP -e "$precious_files_regex" >/dev/null 2>&1 then continue fi fi func_append removelist " $p" ;; *) ;; esac done test -n "$removelist" && \ func_show_eval "${RM}r \$removelist" fi # Now set the variables for building old libraries. if test yes = "$build_old_libs" && test convenience != "$build_libtool_libs"; then func_append oldlibs " $output_objdir/$libname.$libext" # Transform .lo files to .o files. oldobjs="$objs "`$ECHO "$libobjs" | $SP2NL | $SED "/\.$libext$/d; $lo2o" | $NL2SP` fi # Eliminate all temporary directories. #for path in $notinst_path; do # lib_search_path=`$ECHO "$lib_search_path " | $SED "s% $path % %g"` # deplibs=`$ECHO "$deplibs " | $SED "s% -L$path % %g"` # dependency_libs=`$ECHO "$dependency_libs " | $SED "s% -L$path % %g"` #done if test -n "$xrpath"; then # If the user specified any rpath flags, then add them. temp_xrpath= for libdir in $xrpath; do func_replace_sysroot "$libdir" func_append temp_xrpath " -R$func_replace_sysroot_result" case "$finalize_rpath " in *" $libdir "*) ;; *) func_append finalize_rpath " $libdir" ;; esac done if test yes != "$hardcode_into_libs" || test yes = "$build_old_libs"; then dependency_libs="$temp_xrpath $dependency_libs" fi fi # Make sure dlfiles contains only unique files that won't be dlpreopened old_dlfiles=$dlfiles dlfiles= for lib in $old_dlfiles; do case " $dlprefiles $dlfiles " in *" $lib "*) ;; *) func_append dlfiles " $lib" ;; esac done # Make sure dlprefiles contains only unique files old_dlprefiles=$dlprefiles dlprefiles= for lib in $old_dlprefiles; do case "$dlprefiles " in *" $lib "*) ;; *) func_append dlprefiles " $lib" ;; esac done if test yes = "$build_libtool_libs"; then if test -n "$rpath"; then case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos* | *-cegcc* | *-*-haiku*) # these systems don't actually have a c library (as such)! ;; *-*-rhapsody* | *-*-darwin1.[012]) # Rhapsody C library is in the System framework func_append deplibs " System.ltframework" ;; *-*-netbsd*) # Don't link with libc until the a.out ld.so is fixed. ;; *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) # Do not include libc due to us having libc/libc_r. ;; *-*-sco3.2v5* | *-*-sco5v6*) # Causes problems with __ctype ;; *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) # Compiler inserts libc in the correct place for threads to work ;; *) # Add libc to deplibs on all other systems if necessary. if test yes = "$build_libtool_need_lc"; then func_append deplibs " -lc" fi ;; esac fi # Transform deplibs into only deplibs that can be linked in shared. name_save=$name libname_save=$libname release_save=$release versuffix_save=$versuffix major_save=$major # I'm not sure if I'm treating the release correctly. I think # release should show up in the -l (ie -lgmp5) so we don't want to # add it in twice. Is that correct? release= versuffix= major= newdeplibs= droppeddeps=no case $deplibs_check_method in pass_all) # Don't check for shared/static. Everything works. # This might be a little naive. We might want to check # whether the library exists or not. But this is on # osf3 & osf4 and I'm not really sure... Just # implementing what was already the behavior. newdeplibs=$deplibs ;; test_compile) # This code stresses the "libraries are programs" paradigm to its # limits. Maybe even breaks it. We compile a program, linking it # against the deplibs as a proxy for the library. Then we can check # whether they linked in statically or dynamically with ldd. $opt_dry_run || $RM conftest.c cat > conftest.c </dev/null` $nocaseglob else potential_libs=`ls $i/$libnameglob[.-]* 2>/dev/null` fi for potent_lib in $potential_libs; do # Follow soft links. if ls -lLd "$potent_lib" 2>/dev/null | $GREP " -> " >/dev/null; then continue fi # The statement above tries to avoid entering an # endless loop below, in case of cyclic links. # We might still enter an endless loop, since a link # loop can be closed while we follow links, # but so what? potlib=$potent_lib while test -h "$potlib" 2>/dev/null; do potliblink=`ls -ld $potlib | $SED 's/.* -> //'` case $potliblink in [\\/]* | [A-Za-z]:[\\/]*) potlib=$potliblink;; *) potlib=`$ECHO "$potlib" | $SED 's|[^/]*$||'`"$potliblink";; esac done if eval $file_magic_cmd \"\$potlib\" 2>/dev/null | $SED -e 10q | $EGREP "$file_magic_regex" > /dev/null; then func_append newdeplibs " $a_deplib" a_deplib= break 2 fi done done fi if test -n "$a_deplib"; then droppeddeps=yes echo $ECHO "*** Warning: linker path does not have real file for library $a_deplib." echo "*** I have the capability to make that library automatically link in when" echo "*** you link to this library. But I can only do this if you have a" echo "*** shared version of the library, which you do not appear to have" echo "*** because I did check the linker path looking for a file starting" if test -z "$potlib"; then $ECHO "*** with $libname but no candidates were found. (...for file magic test)" else $ECHO "*** with $libname and none of the candidates passed a file format test" $ECHO "*** using a file magic. Last file checked: $potlib" fi fi ;; *) # Add a -L argument. func_append newdeplibs " $a_deplib" ;; esac done # Gone through all deplibs. ;; match_pattern*) set dummy $deplibs_check_method; shift match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"` for a_deplib in $deplibs; do case $a_deplib in -l*) func_stripname -l '' "$a_deplib" name=$func_stripname_result if test yes = "$allow_libtool_libs_with_static_runtimes"; then case " $predeps $postdeps " in *" $a_deplib "*) func_append newdeplibs " $a_deplib" a_deplib= ;; esac fi if test -n "$a_deplib"; then libname=`eval "\\$ECHO \"$libname_spec\""` for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do potential_libs=`ls $i/$libname[.-]* 2>/dev/null` for potent_lib in $potential_libs; do potlib=$potent_lib # see symlink-check above in file_magic test if eval "\$ECHO \"$potent_lib\"" 2>/dev/null | $SED 10q | \ $EGREP "$match_pattern_regex" > /dev/null; then func_append newdeplibs " $a_deplib" a_deplib= break 2 fi done done fi if test -n "$a_deplib"; then droppeddeps=yes echo $ECHO "*** Warning: linker path does not have real file for library $a_deplib." echo "*** I have the capability to make that library automatically link in when" echo "*** you link to this library. But I can only do this if you have a" echo "*** shared version of the library, which you do not appear to have" echo "*** because I did check the linker path looking for a file starting" if test -z "$potlib"; then $ECHO "*** with $libname but no candidates were found. (...for regex pattern test)" else $ECHO "*** with $libname and none of the candidates passed a file format test" $ECHO "*** using a regex pattern. Last file checked: $potlib" fi fi ;; *) # Add a -L argument. func_append newdeplibs " $a_deplib" ;; esac done # Gone through all deplibs. ;; none | unknown | *) newdeplibs= tmp_deplibs=`$ECHO " $deplibs" | $SED 's/ -lc$//; s/ -[LR][^ ]*//g'` if test yes = "$allow_libtool_libs_with_static_runtimes"; then for i in $predeps $postdeps; do # can't use Xsed below, because $i might contain '/' tmp_deplibs=`$ECHO " $tmp_deplibs" | $SED "s|$i||"` done fi case $tmp_deplibs in *[!\ \ ]*) echo if test none = "$deplibs_check_method"; then echo "*** Warning: inter-library dependencies are not supported in this platform." else echo "*** Warning: inter-library dependencies are not known to be supported." fi echo "*** All declared inter-library dependencies are being dropped." droppeddeps=yes ;; esac ;; esac versuffix=$versuffix_save major=$major_save release=$release_save libname=$libname_save name=$name_save case $host in *-*-rhapsody* | *-*-darwin1.[012]) # On Rhapsody replace the C library with the System framework newdeplibs=`$ECHO " $newdeplibs" | $SED 's/ -lc / System.ltframework /'` ;; esac if test yes = "$droppeddeps"; then if test yes = "$module"; then echo echo "*** Warning: libtool could not satisfy all declared inter-library" $ECHO "*** dependencies of module $libname. Therefore, libtool will create" echo "*** a static module, that should work as long as the dlopening" echo "*** application is linked with the -dlopen flag." if test -z "$global_symbol_pipe"; then echo echo "*** However, this would only work if libtool was able to extract symbol" echo "*** lists from a program, using 'nm' or equivalent, but libtool could" echo "*** not find such a program. So, this module is probably useless." echo "*** 'nm' from GNU binutils and a full rebuild may help." fi if test no = "$build_old_libs"; then oldlibs=$output_objdir/$libname.$libext build_libtool_libs=module build_old_libs=yes else build_libtool_libs=no fi else echo "*** The inter-library dependencies that have been dropped here will be" echo "*** automatically added whenever a program is linked with this library" echo "*** or is declared to -dlopen it." if test no = "$allow_undefined"; then echo echo "*** Since this library must not contain undefined symbols," echo "*** because either the platform does not support them or" echo "*** it was explicitly requested with -no-undefined," echo "*** libtool will only create a static version of it." if test no = "$build_old_libs"; then oldlibs=$output_objdir/$libname.$libext build_libtool_libs=module build_old_libs=yes else build_libtool_libs=no fi fi fi fi # Done checking deplibs! deplibs=$newdeplibs fi # Time to change all our "foo.ltframework" stuff back to "-framework foo" case $host in *-*-darwin*) newdeplibs=`$ECHO " $newdeplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` new_inherited_linker_flags=`$ECHO " $new_inherited_linker_flags" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` deplibs=`$ECHO " $deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` ;; esac # move library search paths that coincide with paths to not yet # installed libraries to the beginning of the library search list new_libs= for path in $notinst_path; do case " $new_libs " in *" -L$path/$objdir "*) ;; *) case " $deplibs " in *" -L$path/$objdir "*) func_append new_libs " -L$path/$objdir" ;; esac ;; esac done for deplib in $deplibs; do case $deplib in -L*) case " $new_libs " in *" $deplib "*) ;; *) func_append new_libs " $deplib" ;; esac ;; *) func_append new_libs " $deplib" ;; esac done deplibs=$new_libs # All the library-specific variables (install_libdir is set above). library_names= old_library= dlname= # Test again, we may have decided not to build it any more if test yes = "$build_libtool_libs"; then # Remove $wl instances when linking with ld. # FIXME: should test the right _cmds variable. case $archive_cmds in *\$LD\ *) wl= ;; esac if test yes = "$hardcode_into_libs"; then # Hardcode the library paths hardcode_libdirs= dep_rpath= rpath=$finalize_rpath test relink = "$opt_mode" || rpath=$compile_rpath$rpath for libdir in $rpath; do if test -n "$hardcode_libdir_flag_spec"; then if test -n "$hardcode_libdir_separator"; then func_replace_sysroot "$libdir" libdir=$func_replace_sysroot_result if test -z "$hardcode_libdirs"; then hardcode_libdirs=$libdir else # Just accumulate the unique libdirs. case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) ;; *) func_append hardcode_libdirs "$hardcode_libdir_separator$libdir" ;; esac fi else eval flag=\"$hardcode_libdir_flag_spec\" func_append dep_rpath " $flag" fi elif test -n "$runpath_var"; then case "$perm_rpath " in *" $libdir "*) ;; *) func_append perm_rpath " $libdir" ;; esac fi done # Substitute the hardcoded libdirs into the rpath. if test -n "$hardcode_libdir_separator" && test -n "$hardcode_libdirs"; then libdir=$hardcode_libdirs eval "dep_rpath=\"$hardcode_libdir_flag_spec\"" fi if test -n "$runpath_var" && test -n "$perm_rpath"; then # We should set the runpath_var. rpath= for dir in $perm_rpath; do func_append rpath "$dir:" done eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var" fi test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs" fi shlibpath=$finalize_shlibpath test relink = "$opt_mode" || shlibpath=$compile_shlibpath$shlibpath if test -n "$shlibpath"; then eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var" fi # Get the real and link names of the library. eval shared_ext=\"$shrext_cmds\" eval library_names=\"$library_names_spec\" set dummy $library_names shift realname=$1 shift if test -n "$soname_spec"; then eval soname=\"$soname_spec\" else soname=$realname fi if test -z "$dlname"; then dlname=$soname fi lib=$output_objdir/$realname linknames= for link do func_append linknames " $link" done # Use standard objects if they are pic test -z "$pic_flag" && libobjs=`$ECHO "$libobjs" | $SP2NL | $SED "$lo2o" | $NL2SP` test "X$libobjs" = "X " && libobjs= delfiles= if test -n "$export_symbols" && test -n "$include_expsyms"; then $opt_dry_run || cp "$export_symbols" "$output_objdir/$libname.uexp" export_symbols=$output_objdir/$libname.uexp func_append delfiles " $export_symbols" fi orig_export_symbols= case $host_os in cygwin* | mingw* | cegcc*) if test -n "$export_symbols" && test -z "$export_symbols_regex"; then # exporting using user supplied symfile func_dll_def_p "$export_symbols" || { # and it's NOT already a .def file. Must figure out # which of the given symbols are data symbols and tag # them as such. So, trigger use of export_symbols_cmds. # export_symbols gets reassigned inside the "prepare # the list of exported symbols" if statement, so the # include_expsyms logic still works. orig_export_symbols=$export_symbols export_symbols= always_export_symbols=yes } fi ;; esac # Prepare the list of exported symbols if test -z "$export_symbols"; then if test yes = "$always_export_symbols" || test -n "$export_symbols_regex"; then func_verbose "generating symbol list for '$libname.la'" export_symbols=$output_objdir/$libname.exp $opt_dry_run || $RM $export_symbols cmds=$export_symbols_cmds save_ifs=$IFS; IFS='~' for cmd1 in $cmds; do IFS=$save_ifs # Take the normal branch if the nm_file_list_spec branch # doesn't work or if tool conversion is not needed. case $nm_file_list_spec~$to_tool_file_cmd in *~func_convert_file_noop | *~func_convert_file_msys_to_w32 | ~*) try_normal_branch=yes eval cmd=\"$cmd1\" func_len " $cmd" len=$func_len_result ;; *) try_normal_branch=no ;; esac if test yes = "$try_normal_branch" \ && { test "$len" -lt "$max_cmd_len" \ || test "$max_cmd_len" -le -1; } then func_show_eval "$cmd" 'exit $?' skipped_export=false elif test -n "$nm_file_list_spec"; then func_basename "$output" output_la=$func_basename_result save_libobjs=$libobjs save_output=$output output=$output_objdir/$output_la.nm func_to_tool_file "$output" libobjs=$nm_file_list_spec$func_to_tool_file_result func_append delfiles " $output" func_verbose "creating $NM input file list: $output" for obj in $save_libobjs; do func_to_tool_file "$obj" $ECHO "$func_to_tool_file_result" done > "$output" eval cmd=\"$cmd1\" func_show_eval "$cmd" 'exit $?' output=$save_output libobjs=$save_libobjs skipped_export=false else # The command line is too long to execute in one step. func_verbose "using reloadable object file for export list..." skipped_export=: # Break out early, otherwise skipped_export may be # set to false by a later but shorter cmd. break fi done IFS=$save_ifs if test -n "$export_symbols_regex" && test : != "$skipped_export"; then func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' func_show_eval '$MV "${export_symbols}T" "$export_symbols"' fi fi fi if test -n "$export_symbols" && test -n "$include_expsyms"; then tmp_export_symbols=$export_symbols test -n "$orig_export_symbols" && tmp_export_symbols=$orig_export_symbols $opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"' fi if test : != "$skipped_export" && test -n "$orig_export_symbols"; then # The given exports_symbols file has to be filtered, so filter it. func_verbose "filter symbol list for '$libname.la' to tag DATA exports" # FIXME: $output_objdir/$libname.filter potentially contains lots of # 's' commands, which not all seds can handle. GNU sed should be fine # though. Also, the filter scales superlinearly with the number of # global variables. join(1) would be nice here, but unfortunately # isn't a blessed tool. $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter func_append delfiles " $export_symbols $output_objdir/$libname.filter" export_symbols=$output_objdir/$libname.def $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols fi tmp_deplibs= for test_deplib in $deplibs; do case " $convenience " in *" $test_deplib "*) ;; *) func_append tmp_deplibs " $test_deplib" ;; esac done deplibs=$tmp_deplibs if test -n "$convenience"; then if test -n "$whole_archive_flag_spec" && test yes = "$compiler_needs_object" && test -z "$libobjs"; then # extract the archives, so we have objects to list. # TODO: could optimize this to just extract one archive. whole_archive_flag_spec= fi if test -n "$whole_archive_flag_spec"; then save_libobjs=$libobjs eval libobjs=\"\$libobjs $whole_archive_flag_spec\" test "X$libobjs" = "X " && libobjs= else gentop=$output_objdir/${outputname}x func_append generated " $gentop" func_extract_archives $gentop $convenience func_append libobjs " $func_extract_archives_result" test "X$libobjs" = "X " && libobjs= fi fi if test yes = "$thread_safe" && test -n "$thread_safe_flag_spec"; then eval flag=\"$thread_safe_flag_spec\" func_append linker_flags " $flag" fi # Make a backup of the uninstalled library when relinking if test relink = "$opt_mode"; then $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}U && $MV $realname ${realname}U)' || exit $? fi # Do each of the archive commands. if test yes = "$module" && test -n "$module_cmds"; then if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then eval test_cmds=\"$module_expsym_cmds\" cmds=$module_expsym_cmds else eval test_cmds=\"$module_cmds\" cmds=$module_cmds fi else if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then eval test_cmds=\"$archive_expsym_cmds\" cmds=$archive_expsym_cmds else eval test_cmds=\"$archive_cmds\" cmds=$archive_cmds fi fi if test : != "$skipped_export" && func_len " $test_cmds" && len=$func_len_result && test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then : else # The command line is too long to link in one step, link piecewise # or, if using GNU ld and skipped_export is not :, use a linker # script. # Save the value of $output and $libobjs because we want to # use them later. If we have whole_archive_flag_spec, we # want to use save_libobjs as it was before # whole_archive_flag_spec was expanded, because we can't # assume the linker understands whole_archive_flag_spec. # This may have to be revisited, in case too many # convenience libraries get linked in and end up exceeding # the spec. if test -z "$convenience" || test -z "$whole_archive_flag_spec"; then save_libobjs=$libobjs fi save_output=$output func_basename "$output" output_la=$func_basename_result # Clear the reloadable object creation command queue and # initialize k to one. test_cmds= concat_cmds= objlist= last_robj= k=1 if test -n "$save_libobjs" && test : != "$skipped_export" && test yes = "$with_gnu_ld"; then output=$output_objdir/$output_la.lnkscript func_verbose "creating GNU ld script: $output" echo 'INPUT (' > $output for obj in $save_libobjs do func_to_tool_file "$obj" $ECHO "$func_to_tool_file_result" >> $output done echo ')' >> $output func_append delfiles " $output" func_to_tool_file "$output" output=$func_to_tool_file_result elif test -n "$save_libobjs" && test : != "$skipped_export" && test -n "$file_list_spec"; then output=$output_objdir/$output_la.lnk func_verbose "creating linker input file list: $output" : > $output set x $save_libobjs shift firstobj= if test yes = "$compiler_needs_object"; then firstobj="$1 " shift fi for obj do func_to_tool_file "$obj" $ECHO "$func_to_tool_file_result" >> $output done func_append delfiles " $output" func_to_tool_file "$output" output=$firstobj\"$file_list_spec$func_to_tool_file_result\" else if test -n "$save_libobjs"; then func_verbose "creating reloadable object files..." output=$output_objdir/$output_la-$k.$objext eval test_cmds=\"$reload_cmds\" func_len " $test_cmds" len0=$func_len_result len=$len0 # Loop over the list of objects to be linked. for obj in $save_libobjs do func_len " $obj" func_arith $len + $func_len_result len=$func_arith_result if test -z "$objlist" || test "$len" -lt "$max_cmd_len"; then func_append objlist " $obj" else # The command $test_cmds is almost too long, add a # command to the queue. if test 1 -eq "$k"; then # The first file doesn't have a previous command to add. reload_objs=$objlist eval concat_cmds=\"$reload_cmds\" else # All subsequent reloadable object files will link in # the last one created. reload_objs="$objlist $last_robj" eval concat_cmds=\"\$concat_cmds~$reload_cmds~\$RM $last_robj\" fi last_robj=$output_objdir/$output_la-$k.$objext func_arith $k + 1 k=$func_arith_result output=$output_objdir/$output_la-$k.$objext objlist=" $obj" func_len " $last_robj" func_arith $len0 + $func_len_result len=$func_arith_result fi done # Handle the remaining objects by creating one last # reloadable object file. All subsequent reloadable object # files will link in the last one created. test -z "$concat_cmds" || concat_cmds=$concat_cmds~ reload_objs="$objlist $last_robj" eval concat_cmds=\"\$concat_cmds$reload_cmds\" if test -n "$last_robj"; then eval concat_cmds=\"\$concat_cmds~\$RM $last_robj\" fi func_append delfiles " $output" else output= fi ${skipped_export-false} && { func_verbose "generating symbol list for '$libname.la'" export_symbols=$output_objdir/$libname.exp $opt_dry_run || $RM $export_symbols libobjs=$output # Append the command to create the export file. test -z "$concat_cmds" || concat_cmds=$concat_cmds~ eval concat_cmds=\"\$concat_cmds$export_symbols_cmds\" if test -n "$last_robj"; then eval concat_cmds=\"\$concat_cmds~\$RM $last_robj\" fi } test -n "$save_libobjs" && func_verbose "creating a temporary reloadable object file: $output" # Loop through the commands generated above and execute them. save_ifs=$IFS; IFS='~' for cmd in $concat_cmds; do IFS=$save_ifs $opt_quiet || { func_quote_for_expand "$cmd" eval "func_echo $func_quote_for_expand_result" } $opt_dry_run || eval "$cmd" || { lt_exit=$? # Restore the uninstalled library and exit if test relink = "$opt_mode"; then ( cd "$output_objdir" && \ $RM "${realname}T" && \ $MV "${realname}U" "$realname" ) fi exit $lt_exit } done IFS=$save_ifs if test -n "$export_symbols_regex" && ${skipped_export-false}; then func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' func_show_eval '$MV "${export_symbols}T" "$export_symbols"' fi fi ${skipped_export-false} && { if test -n "$export_symbols" && test -n "$include_expsyms"; then tmp_export_symbols=$export_symbols test -n "$orig_export_symbols" && tmp_export_symbols=$orig_export_symbols $opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"' fi if test -n "$orig_export_symbols"; then # The given exports_symbols file has to be filtered, so filter it. func_verbose "filter symbol list for '$libname.la' to tag DATA exports" # FIXME: $output_objdir/$libname.filter potentially contains lots of # 's' commands, which not all seds can handle. GNU sed should be fine # though. Also, the filter scales superlinearly with the number of # global variables. join(1) would be nice here, but unfortunately # isn't a blessed tool. $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter func_append delfiles " $export_symbols $output_objdir/$libname.filter" export_symbols=$output_objdir/$libname.def $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols fi } libobjs=$output # Restore the value of output. output=$save_output if test -n "$convenience" && test -n "$whole_archive_flag_spec"; then eval libobjs=\"\$libobjs $whole_archive_flag_spec\" test "X$libobjs" = "X " && libobjs= fi # Expand the library linking commands again to reset the # value of $libobjs for piecewise linking. # Do each of the archive commands. if test yes = "$module" && test -n "$module_cmds"; then if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then cmds=$module_expsym_cmds else cmds=$module_cmds fi else if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then cmds=$archive_expsym_cmds else cmds=$archive_cmds fi fi fi if test -n "$delfiles"; then # Append the command to remove temporary files to $cmds. eval cmds=\"\$cmds~\$RM $delfiles\" fi # Add any objects from preloaded convenience libraries if test -n "$dlprefiles"; then gentop=$output_objdir/${outputname}x func_append generated " $gentop" func_extract_archives $gentop $dlprefiles func_append libobjs " $func_extract_archives_result" test "X$libobjs" = "X " && libobjs= fi save_ifs=$IFS; IFS='~' for cmd in $cmds; do IFS=$sp$nl eval cmd=\"$cmd\" IFS=$save_ifs $opt_quiet || { func_quote_for_expand "$cmd" eval "func_echo $func_quote_for_expand_result" } $opt_dry_run || eval "$cmd" || { lt_exit=$? # Restore the uninstalled library and exit if test relink = "$opt_mode"; then ( cd "$output_objdir" && \ $RM "${realname}T" && \ $MV "${realname}U" "$realname" ) fi exit $lt_exit } done IFS=$save_ifs # Restore the uninstalled library and exit if test relink = "$opt_mode"; then $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}T && $MV $realname ${realname}T && $MV ${realname}U $realname)' || exit $? if test -n "$convenience"; then if test -z "$whole_archive_flag_spec"; then func_show_eval '${RM}r "$gentop"' fi fi exit $EXIT_SUCCESS fi # Create links to the real library. for linkname in $linknames; do if test "$realname" != "$linkname"; then func_show_eval '(cd "$output_objdir" && $RM "$linkname" && $LN_S "$realname" "$linkname")' 'exit $?' fi done # If -module or -export-dynamic was specified, set the dlname. if test yes = "$module" || test yes = "$export_dynamic"; then # On all known operating systems, these are identical. dlname=$soname fi fi ;; obj) if test -n "$dlfiles$dlprefiles" || test no != "$dlself"; then func_warning "'-dlopen' is ignored for objects" fi case " $deplibs" in *\ -l* | *\ -L*) func_warning "'-l' and '-L' are ignored for objects" ;; esac test -n "$rpath" && \ func_warning "'-rpath' is ignored for objects" test -n "$xrpath" && \ func_warning "'-R' is ignored for objects" test -n "$vinfo" && \ func_warning "'-version-info' is ignored for objects" test -n "$release" && \ func_warning "'-release' is ignored for objects" case $output in *.lo) test -n "$objs$old_deplibs" && \ func_fatal_error "cannot build library object '$output' from non-libtool objects" libobj=$output func_lo2o "$libobj" obj=$func_lo2o_result ;; *) libobj= obj=$output ;; esac # Delete the old objects. $opt_dry_run || $RM $obj $libobj # Objects from convenience libraries. This assumes # single-version convenience libraries. Whenever we create # different ones for PIC/non-PIC, this we'll have to duplicate # the extraction. reload_conv_objs= gentop= # if reload_cmds runs $LD directly, get rid of -Wl from # whole_archive_flag_spec and hope we can get by with turning comma # into space. case $reload_cmds in *\$LD[\ \$]*) wl= ;; esac if test -n "$convenience"; then if test -n "$whole_archive_flag_spec"; then eval tmp_whole_archive_flags=\"$whole_archive_flag_spec\" test -n "$wl" || tmp_whole_archive_flags=`$ECHO "$tmp_whole_archive_flags" | $SED 's|,| |g'` reload_conv_objs=$reload_objs\ $tmp_whole_archive_flags else gentop=$output_objdir/${obj}x func_append generated " $gentop" func_extract_archives $gentop $convenience reload_conv_objs="$reload_objs $func_extract_archives_result" fi fi # If we're not building shared, we need to use non_pic_objs test yes = "$build_libtool_libs" || libobjs=$non_pic_objects # Create the old-style object. reload_objs=$objs$old_deplibs' '`$ECHO "$libobjs" | $SP2NL | $SED "/\.$libext$/d; /\.lib$/d; $lo2o" | $NL2SP`' '$reload_conv_objs output=$obj func_execute_cmds "$reload_cmds" 'exit $?' # Exit if we aren't doing a library object file. if test -z "$libobj"; then if test -n "$gentop"; then func_show_eval '${RM}r "$gentop"' fi exit $EXIT_SUCCESS fi test yes = "$build_libtool_libs" || { if test -n "$gentop"; then func_show_eval '${RM}r "$gentop"' fi # Create an invalid libtool object if no PIC, so that we don't # accidentally link it into a program. # $show "echo timestamp > $libobj" # $opt_dry_run || eval "echo timestamp > $libobj" || exit $? exit $EXIT_SUCCESS } if test -n "$pic_flag" || test default != "$pic_mode"; then # Only do commands if we really have different PIC objects. reload_objs="$libobjs $reload_conv_objs" output=$libobj func_execute_cmds "$reload_cmds" 'exit $?' fi if test -n "$gentop"; then func_show_eval '${RM}r "$gentop"' fi exit $EXIT_SUCCESS ;; prog) case $host in *cygwin*) func_stripname '' '.exe' "$output" output=$func_stripname_result.exe;; esac test -n "$vinfo" && \ func_warning "'-version-info' is ignored for programs" test -n "$release" && \ func_warning "'-release' is ignored for programs" $preload \ && test unknown,unknown,unknown = "$dlopen_support,$dlopen_self,$dlopen_self_static" \ && func_warning "'LT_INIT([dlopen])' not used. Assuming no dlopen support." case $host in *-*-rhapsody* | *-*-darwin1.[012]) # On Rhapsody replace the C library is the System framework compile_deplibs=`$ECHO " $compile_deplibs" | $SED 's/ -lc / System.ltframework /'` finalize_deplibs=`$ECHO " $finalize_deplibs" | $SED 's/ -lc / System.ltframework /'` ;; esac case $host in *-*-darwin*) # Don't allow lazy linking, it breaks C++ global constructors # But is supposedly fixed on 10.4 or later (yay!). if test CXX = "$tagname"; then case ${MACOSX_DEPLOYMENT_TARGET-10.0} in 10.[0123]) func_append compile_command " $wl-bind_at_load" func_append finalize_command " $wl-bind_at_load" ;; esac fi # Time to change all our "foo.ltframework" stuff back to "-framework foo" compile_deplibs=`$ECHO " $compile_deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` finalize_deplibs=`$ECHO " $finalize_deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` ;; esac # move library search paths that coincide with paths to not yet # installed libraries to the beginning of the library search list new_libs= for path in $notinst_path; do case " $new_libs " in *" -L$path/$objdir "*) ;; *) case " $compile_deplibs " in *" -L$path/$objdir "*) func_append new_libs " -L$path/$objdir" ;; esac ;; esac done for deplib in $compile_deplibs; do case $deplib in -L*) case " $new_libs " in *" $deplib "*) ;; *) func_append new_libs " $deplib" ;; esac ;; *) func_append new_libs " $deplib" ;; esac done compile_deplibs=$new_libs func_append compile_command " $compile_deplibs" func_append finalize_command " $finalize_deplibs" if test -n "$rpath$xrpath"; then # If the user specified any rpath flags, then add them. for libdir in $rpath $xrpath; do # This is the magic to use -rpath. case "$finalize_rpath " in *" $libdir "*) ;; *) func_append finalize_rpath " $libdir" ;; esac done fi # Now hardcode the library paths rpath= hardcode_libdirs= for libdir in $compile_rpath $finalize_rpath; do if test -n "$hardcode_libdir_flag_spec"; then if test -n "$hardcode_libdir_separator"; then if test -z "$hardcode_libdirs"; then hardcode_libdirs=$libdir else # Just accumulate the unique libdirs. case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) ;; *) func_append hardcode_libdirs "$hardcode_libdir_separator$libdir" ;; esac fi else eval flag=\"$hardcode_libdir_flag_spec\" func_append rpath " $flag" fi elif test -n "$runpath_var"; then case "$perm_rpath " in *" $libdir "*) ;; *) func_append perm_rpath " $libdir" ;; esac fi case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) testbindir=`$ECHO "$libdir" | $SED -e 's*/lib$*/bin*'` case :$dllsearchpath: in *":$libdir:"*) ;; ::) dllsearchpath=$libdir;; *) func_append dllsearchpath ":$libdir";; esac case :$dllsearchpath: in *":$testbindir:"*) ;; ::) dllsearchpath=$testbindir;; *) func_append dllsearchpath ":$testbindir";; esac ;; esac done # Substitute the hardcoded libdirs into the rpath. if test -n "$hardcode_libdir_separator" && test -n "$hardcode_libdirs"; then libdir=$hardcode_libdirs eval rpath=\" $hardcode_libdir_flag_spec\" fi compile_rpath=$rpath rpath= hardcode_libdirs= for libdir in $finalize_rpath; do if test -n "$hardcode_libdir_flag_spec"; then if test -n "$hardcode_libdir_separator"; then if test -z "$hardcode_libdirs"; then hardcode_libdirs=$libdir else # Just accumulate the unique libdirs. case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) ;; *) func_append hardcode_libdirs "$hardcode_libdir_separator$libdir" ;; esac fi else eval flag=\"$hardcode_libdir_flag_spec\" func_append rpath " $flag" fi elif test -n "$runpath_var"; then case "$finalize_perm_rpath " in *" $libdir "*) ;; *) func_append finalize_perm_rpath " $libdir" ;; esac fi done # Substitute the hardcoded libdirs into the rpath. if test -n "$hardcode_libdir_separator" && test -n "$hardcode_libdirs"; then libdir=$hardcode_libdirs eval rpath=\" $hardcode_libdir_flag_spec\" fi finalize_rpath=$rpath if test -n "$libobjs" && test yes = "$build_old_libs"; then # Transform all the library objects into standard objects. compile_command=`$ECHO "$compile_command" | $SP2NL | $SED "$lo2o" | $NL2SP` finalize_command=`$ECHO "$finalize_command" | $SP2NL | $SED "$lo2o" | $NL2SP` fi func_generate_dlsyms "$outputname" "@PROGRAM@" false # template prelinking step if test -n "$prelink_cmds"; then func_execute_cmds "$prelink_cmds" 'exit $?' fi wrappers_required=: case $host in *cegcc* | *mingw32ce*) # Disable wrappers for cegcc and mingw32ce hosts, we are cross compiling anyway. wrappers_required=false ;; *cygwin* | *mingw* ) test yes = "$build_libtool_libs" || wrappers_required=false ;; *) if test no = "$need_relink" || test yes != "$build_libtool_libs"; then wrappers_required=false fi ;; esac $wrappers_required || { # Replace the output file specification. compile_command=`$ECHO "$compile_command" | $SED 's%@OUTPUT@%'"$output"'%g'` link_command=$compile_command$compile_rpath # We have no uninstalled library dependencies, so finalize right now. exit_status=0 func_show_eval "$link_command" 'exit_status=$?' if test -n "$postlink_cmds"; then func_to_tool_file "$output" postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'` func_execute_cmds "$postlink_cmds" 'exit $?' fi # Delete the generated files. if test -f "$output_objdir/${outputname}S.$objext"; then func_show_eval '$RM "$output_objdir/${outputname}S.$objext"' fi exit $exit_status } if test -n "$compile_shlibpath$finalize_shlibpath"; then compile_command="$shlibpath_var=\"$compile_shlibpath$finalize_shlibpath\$$shlibpath_var\" $compile_command" fi if test -n "$finalize_shlibpath"; then finalize_command="$shlibpath_var=\"$finalize_shlibpath\$$shlibpath_var\" $finalize_command" fi compile_var= finalize_var= if test -n "$runpath_var"; then if test -n "$perm_rpath"; then # We should set the runpath_var. rpath= for dir in $perm_rpath; do func_append rpath "$dir:" done compile_var="$runpath_var=\"$rpath\$$runpath_var\" " fi if test -n "$finalize_perm_rpath"; then # We should set the runpath_var. rpath= for dir in $finalize_perm_rpath; do func_append rpath "$dir:" done finalize_var="$runpath_var=\"$rpath\$$runpath_var\" " fi fi if test yes = "$no_install"; then # We don't need to create a wrapper script. link_command=$compile_var$compile_command$compile_rpath # Replace the output file specification. link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output"'%g'` # Delete the old output file. $opt_dry_run || $RM $output # Link the executable and exit func_show_eval "$link_command" 'exit $?' if test -n "$postlink_cmds"; then func_to_tool_file "$output" postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'` func_execute_cmds "$postlink_cmds" 'exit $?' fi exit $EXIT_SUCCESS fi case $hardcode_action,$fast_install in relink,*) # Fast installation is not supported link_command=$compile_var$compile_command$compile_rpath relink_command=$finalize_var$finalize_command$finalize_rpath func_warning "this platform does not like uninstalled shared libraries" func_warning "'$output' will be relinked during installation" ;; *,yes) link_command=$finalize_var$compile_command$finalize_rpath relink_command=`$ECHO "$compile_var$compile_command$compile_rpath" | $SED 's%@OUTPUT@%\$progdir/\$file%g'` ;; *,no) link_command=$compile_var$compile_command$compile_rpath relink_command=$finalize_var$finalize_command$finalize_rpath ;; *,needless) link_command=$finalize_var$compile_command$finalize_rpath relink_command= ;; esac # Replace the output file specification. link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'` # Delete the old output files. $opt_dry_run || $RM $output $output_objdir/$outputname $output_objdir/lt-$outputname func_show_eval "$link_command" 'exit $?' if test -n "$postlink_cmds"; then func_to_tool_file "$output_objdir/$outputname" postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'` func_execute_cmds "$postlink_cmds" 'exit $?' fi # Now create the wrapper script. func_verbose "creating $output" # Quote the relink command for shipping. if test -n "$relink_command"; then # Preserve any variables that may affect compiler behavior for var in $variables_saved_for_relink; do if eval test -z \"\${$var+set}\"; then relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command" elif eval var_value=\$$var; test -z "$var_value"; then relink_command="$var=; export $var; $relink_command" else func_quote_for_eval "$var_value" relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command" fi done relink_command="(cd `pwd`; $relink_command)" relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"` fi # Only actually do things if not in dry run mode. $opt_dry_run || { # win32 will think the script is a binary if it has # a .exe suffix, so we strip it off here. case $output in *.exe) func_stripname '' '.exe' "$output" output=$func_stripname_result ;; esac # test for cygwin because mv fails w/o .exe extensions case $host in *cygwin*) exeext=.exe func_stripname '' '.exe' "$outputname" outputname=$func_stripname_result ;; *) exeext= ;; esac case $host in *cygwin* | *mingw* ) func_dirname_and_basename "$output" "" "." output_name=$func_basename_result output_path=$func_dirname_result cwrappersource=$output_path/$objdir/lt-$output_name.c cwrapper=$output_path/$output_name.exe $RM $cwrappersource $cwrapper trap "$RM $cwrappersource $cwrapper; exit $EXIT_FAILURE" 1 2 15 func_emit_cwrapperexe_src > $cwrappersource # The wrapper executable is built using the $host compiler, # because it contains $host paths and files. If cross- # compiling, it, like the target executable, must be # executed on the $host or under an emulation environment. $opt_dry_run || { $LTCC $LTCFLAGS -o $cwrapper $cwrappersource $STRIP $cwrapper } # Now, create the wrapper script for func_source use: func_ltwrapper_scriptname $cwrapper $RM $func_ltwrapper_scriptname_result trap "$RM $func_ltwrapper_scriptname_result; exit $EXIT_FAILURE" 1 2 15 $opt_dry_run || { # note: this script will not be executed, so do not chmod. if test "x$build" = "x$host"; then $cwrapper --lt-dump-script > $func_ltwrapper_scriptname_result else func_emit_wrapper no > $func_ltwrapper_scriptname_result fi } ;; * ) $RM $output trap "$RM $output; exit $EXIT_FAILURE" 1 2 15 func_emit_wrapper no > $output chmod +x $output ;; esac } exit $EXIT_SUCCESS ;; esac # See if we need to build an old-fashioned archive. for oldlib in $oldlibs; do case $build_libtool_libs in convenience) oldobjs="$libobjs_save $symfileobj" addlibs=$convenience build_libtool_libs=no ;; module) oldobjs=$libobjs_save addlibs=$old_convenience build_libtool_libs=no ;; *) oldobjs="$old_deplibs $non_pic_objects" $preload && test -f "$symfileobj" \ && func_append oldobjs " $symfileobj" addlibs=$old_convenience ;; esac if test -n "$addlibs"; then gentop=$output_objdir/${outputname}x func_append generated " $gentop" func_extract_archives $gentop $addlibs func_append oldobjs " $func_extract_archives_result" fi # Do each command in the archive commands. if test -n "$old_archive_from_new_cmds" && test yes = "$build_libtool_libs"; then cmds=$old_archive_from_new_cmds else # Add any objects from preloaded convenience libraries if test -n "$dlprefiles"; then gentop=$output_objdir/${outputname}x func_append generated " $gentop" func_extract_archives $gentop $dlprefiles func_append oldobjs " $func_extract_archives_result" fi # POSIX demands no paths to be encoded in archives. We have # to avoid creating archives with duplicate basenames if we # might have to extract them afterwards, e.g., when creating a # static archive out of a convenience library, or when linking # the entirety of a libtool archive into another (currently # not supported by libtool). if (for obj in $oldobjs do func_basename "$obj" $ECHO "$func_basename_result" done | sort | sort -uc >/dev/null 2>&1); then : else echo "copying selected object files to avoid basename conflicts..." gentop=$output_objdir/${outputname}x func_append generated " $gentop" func_mkdir_p "$gentop" save_oldobjs=$oldobjs oldobjs= counter=1 for obj in $save_oldobjs do func_basename "$obj" objbase=$func_basename_result case " $oldobjs " in " ") oldobjs=$obj ;; *[\ /]"$objbase "*) while :; do # Make sure we don't pick an alternate name that also # overlaps. newobj=lt$counter-$objbase func_arith $counter + 1 counter=$func_arith_result case " $oldobjs " in *[\ /]"$newobj "*) ;; *) if test ! -f "$gentop/$newobj"; then break; fi ;; esac done func_show_eval "ln $obj $gentop/$newobj || cp $obj $gentop/$newobj" func_append oldobjs " $gentop/$newobj" ;; *) func_append oldobjs " $obj" ;; esac done fi func_to_tool_file "$oldlib" func_convert_file_msys_to_w32 tool_oldlib=$func_to_tool_file_result eval cmds=\"$old_archive_cmds\" func_len " $cmds" len=$func_len_result if test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then cmds=$old_archive_cmds elif test -n "$archiver_list_spec"; then func_verbose "using command file archive linking..." for obj in $oldobjs do func_to_tool_file "$obj" $ECHO "$func_to_tool_file_result" done > $output_objdir/$libname.libcmd func_to_tool_file "$output_objdir/$libname.libcmd" oldobjs=" $archiver_list_spec$func_to_tool_file_result" cmds=$old_archive_cmds else # the command line is too long to link in one step, link in parts func_verbose "using piecewise archive linking..." save_RANLIB=$RANLIB RANLIB=: objlist= concat_cmds= save_oldobjs=$oldobjs oldobjs= # Is there a better way of finding the last object in the list? for obj in $save_oldobjs do last_oldobj=$obj done eval test_cmds=\"$old_archive_cmds\" func_len " $test_cmds" len0=$func_len_result len=$len0 for obj in $save_oldobjs do func_len " $obj" func_arith $len + $func_len_result len=$func_arith_result func_append objlist " $obj" if test "$len" -lt "$max_cmd_len"; then : else # the above command should be used before it gets too long oldobjs=$objlist if test "$obj" = "$last_oldobj"; then RANLIB=$save_RANLIB fi test -z "$concat_cmds" || concat_cmds=$concat_cmds~ eval concat_cmds=\"\$concat_cmds$old_archive_cmds\" objlist= len=$len0 fi done RANLIB=$save_RANLIB oldobjs=$objlist if test -z "$oldobjs"; then eval cmds=\"\$concat_cmds\" else eval cmds=\"\$concat_cmds~\$old_archive_cmds\" fi fi fi func_execute_cmds "$cmds" 'exit $?' done test -n "$generated" && \ func_show_eval "${RM}r$generated" # Now create the libtool archive. case $output in *.la) old_library= test yes = "$build_old_libs" && old_library=$libname.$libext func_verbose "creating $output" # Preserve any variables that may affect compiler behavior for var in $variables_saved_for_relink; do if eval test -z \"\${$var+set}\"; then relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command" elif eval var_value=\$$var; test -z "$var_value"; then relink_command="$var=; export $var; $relink_command" else func_quote_for_eval "$var_value" relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command" fi done # Quote the link command for shipping. relink_command="(cd `pwd`; $SHELL \"$progpath\" $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)" relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"` if test yes = "$hardcode_automatic"; then relink_command= fi # Only create the output if not a dry run. $opt_dry_run || { for installed in no yes; do if test yes = "$installed"; then if test -z "$install_libdir"; then break fi output=$output_objdir/${outputname}i # Replace all uninstalled libtool libraries with the installed ones newdependency_libs= for deplib in $dependency_libs; do case $deplib in *.la) func_basename "$deplib" name=$func_basename_result func_resolve_sysroot "$deplib" eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $func_resolve_sysroot_result` test -z "$libdir" && \ func_fatal_error "'$deplib' is not a valid libtool archive" func_append newdependency_libs " ${lt_sysroot:+=}$libdir/$name" ;; -L*) func_stripname -L '' "$deplib" func_replace_sysroot "$func_stripname_result" func_append newdependency_libs " -L$func_replace_sysroot_result" ;; -R*) func_stripname -R '' "$deplib" func_replace_sysroot "$func_stripname_result" func_append newdependency_libs " -R$func_replace_sysroot_result" ;; *) func_append newdependency_libs " $deplib" ;; esac done dependency_libs=$newdependency_libs newdlfiles= for lib in $dlfiles; do case $lib in *.la) func_basename "$lib" name=$func_basename_result eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $lib` test -z "$libdir" && \ func_fatal_error "'$lib' is not a valid libtool archive" func_append newdlfiles " ${lt_sysroot:+=}$libdir/$name" ;; *) func_append newdlfiles " $lib" ;; esac done dlfiles=$newdlfiles newdlprefiles= for lib in $dlprefiles; do case $lib in *.la) # Only pass preopened files to the pseudo-archive (for # eventual linking with the app. that links it) if we # didn't already link the preopened objects directly into # the library: func_basename "$lib" name=$func_basename_result eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $lib` test -z "$libdir" && \ func_fatal_error "'$lib' is not a valid libtool archive" func_append newdlprefiles " ${lt_sysroot:+=}$libdir/$name" ;; esac done dlprefiles=$newdlprefiles else newdlfiles= for lib in $dlfiles; do case $lib in [\\/]* | [A-Za-z]:[\\/]*) abs=$lib ;; *) abs=`pwd`"/$lib" ;; esac func_append newdlfiles " $abs" done dlfiles=$newdlfiles newdlprefiles= for lib in $dlprefiles; do case $lib in [\\/]* | [A-Za-z]:[\\/]*) abs=$lib ;; *) abs=`pwd`"/$lib" ;; esac func_append newdlprefiles " $abs" done dlprefiles=$newdlprefiles fi $RM $output # place dlname in correct position for cygwin # In fact, it would be nice if we could use this code for all target # systems that can't hard-code library paths into their executables # and that have no shared library path variable independent of PATH, # but it turns out we can't easily determine that from inspecting # libtool variables, so we have to hard-code the OSs to which it # applies here; at the moment, that means platforms that use the PE # object format with DLL files. See the long comment at the top of # tests/bindir.at for full details. tdlname=$dlname case $host,$output,$installed,$module,$dlname in *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll | *cegcc*,*lai,yes,no,*.dll) # If a -bindir argument was supplied, place the dll there. if test -n "$bindir"; then func_relative_path "$install_libdir" "$bindir" tdlname=$func_relative_path_result/$dlname else # Otherwise fall back on heuristic. tdlname=../bin/$dlname fi ;; esac $ECHO > $output "\ # $outputname - a libtool library file # Generated by $PROGRAM (GNU $PACKAGE) $VERSION # # Please DO NOT delete this file! # It is necessary for linking the library. # The name that we can dlopen(3). dlname='$tdlname' # Names of this library. library_names='$library_names' # The name of the static archive. old_library='$old_library' # Linker flags that cannot go in dependency_libs. inherited_linker_flags='$new_inherited_linker_flags' # Libraries that this one depends upon. dependency_libs='$dependency_libs' # Names of additional weak libraries provided by this library weak_library_names='$weak_libs' # Version information for $libname. current=$current age=$age revision=$revision # Is this an already installed library? installed=$installed # Should we warn about portability when linking against -modules? shouldnotlink=$module # Files to dlopen/dlpreopen dlopen='$dlfiles' dlpreopen='$dlprefiles' # Directory that this library needs to be installed in: libdir='$install_libdir'" if test no,yes = "$installed,$need_relink"; then $ECHO >> $output "\ relink_command=\"$relink_command\"" fi done } # Do a symbolic link so that the libtool archive can be found in # LD_LIBRARY_PATH before the program is installed. func_show_eval '( cd "$output_objdir" && $RM "$outputname" && $LN_S "../$outputname" "$outputname" )' 'exit $?' ;; esac exit $EXIT_SUCCESS } if test link = "$opt_mode" || test relink = "$opt_mode"; then func_mode_link ${1+"$@"} fi # func_mode_uninstall arg... func_mode_uninstall () { $debug_cmd RM=$nonopt files= rmforce=false exit_status=0 # This variable tells wrapper scripts just to set variables rather # than running their programs. libtool_install_magic=$magic for arg do case $arg in -f) func_append RM " $arg"; rmforce=: ;; -*) func_append RM " $arg" ;; *) func_append files " $arg" ;; esac done test -z "$RM" && \ func_fatal_help "you must specify an RM program" rmdirs= for file in $files; do func_dirname "$file" "" "." dir=$func_dirname_result if test . = "$dir"; then odir=$objdir else odir=$dir/$objdir fi func_basename "$file" name=$func_basename_result test uninstall = "$opt_mode" && odir=$dir # Remember odir for removal later, being careful to avoid duplicates if test clean = "$opt_mode"; then case " $rmdirs " in *" $odir "*) ;; *) func_append rmdirs " $odir" ;; esac fi # Don't error if the file doesn't exist and rm -f was used. if { test -L "$file"; } >/dev/null 2>&1 || { test -h "$file"; } >/dev/null 2>&1 || test -f "$file"; then : elif test -d "$file"; then exit_status=1 continue elif $rmforce; then continue fi rmfiles=$file case $name in *.la) # Possibly a libtool archive, so verify it. if func_lalib_p "$file"; then func_source $dir/$name # Delete the libtool libraries and symlinks. for n in $library_names; do func_append rmfiles " $odir/$n" done test -n "$old_library" && func_append rmfiles " $odir/$old_library" case $opt_mode in clean) case " $library_names " in *" $dlname "*) ;; *) test -n "$dlname" && func_append rmfiles " $odir/$dlname" ;; esac test -n "$libdir" && func_append rmfiles " $odir/$name $odir/${name}i" ;; uninstall) if test -n "$library_names"; then # Do each command in the postuninstall commands. func_execute_cmds "$postuninstall_cmds" '$rmforce || exit_status=1' fi if test -n "$old_library"; then # Do each command in the old_postuninstall commands. func_execute_cmds "$old_postuninstall_cmds" '$rmforce || exit_status=1' fi # FIXME: should reinstall the best remaining shared library. ;; esac fi ;; *.lo) # Possibly a libtool object, so verify it. if func_lalib_p "$file"; then # Read the .lo file func_source $dir/$name # Add PIC object to the list of files to remove. if test -n "$pic_object" && test none != "$pic_object"; then func_append rmfiles " $dir/$pic_object" fi # Add non-PIC object to the list of files to remove. if test -n "$non_pic_object" && test none != "$non_pic_object"; then func_append rmfiles " $dir/$non_pic_object" fi fi ;; *) if test clean = "$opt_mode"; then noexename=$name case $file in *.exe) func_stripname '' '.exe' "$file" file=$func_stripname_result func_stripname '' '.exe' "$name" noexename=$func_stripname_result # $file with .exe has already been added to rmfiles, # add $file without .exe func_append rmfiles " $file" ;; esac # Do a test to see if this is a libtool program. if func_ltwrapper_p "$file"; then if func_ltwrapper_executable_p "$file"; then func_ltwrapper_scriptname "$file" relink_command= func_source $func_ltwrapper_scriptname_result func_append rmfiles " $func_ltwrapper_scriptname_result" else relink_command= func_source $dir/$noexename fi # note $name still contains .exe if it was in $file originally # as does the version of $file that was added into $rmfiles func_append rmfiles " $odir/$name $odir/${name}S.$objext" if test yes = "$fast_install" && test -n "$relink_command"; then func_append rmfiles " $odir/lt-$name" fi if test "X$noexename" != "X$name"; then func_append rmfiles " $odir/lt-$noexename.c" fi fi fi ;; esac func_show_eval "$RM $rmfiles" 'exit_status=1' done # Try to remove the $objdir's in the directories where we deleted files for dir in $rmdirs; do if test -d "$dir"; then func_show_eval "rmdir $dir >/dev/null 2>&1" fi done exit $exit_status } if test uninstall = "$opt_mode" || test clean = "$opt_mode"; then func_mode_uninstall ${1+"$@"} fi test -z "$opt_mode" && { help=$generic_help func_fatal_help "you must specify a MODE" } test -z "$exec_cmd" && \ func_fatal_help "invalid operation mode '$opt_mode'" if test -n "$exec_cmd"; then eval exec "$exec_cmd" exit $EXIT_FAILURE fi exit $exit_status # The TAGs below are defined such that we never get into a situation # where we disable both kinds of libraries. Given conflicting # choices, we go for a static library, that is the most portable, # since we can't tell whether shared libraries were disabled because # the user asked for that or because the platform doesn't support # them. This is particularly important on AIX, because we don't # support having both static and shared libraries enabled at the same # time on that platform, so we default to a shared-only configuration. # If a disable-shared tag is given, we'll fallback to a static-only # configuration. But we'll never go from static-only to shared-only. # ### BEGIN LIBTOOL TAG CONFIG: disable-shared build_libtool_libs=no build_old_libs=yes # ### END LIBTOOL TAG CONFIG: disable-shared # ### BEGIN LIBTOOL TAG CONFIG: disable-static build_old_libs=`case $build_libtool_libs in yes) echo no;; *) echo yes;; esac` # ### END LIBTOOL TAG CONFIG: disable-static # Local Variables: # mode:shell-script # sh-indentation:2 # End: unicode-screensaver-0.5.1/config.guess0000755000175000017500000012637313306043307014735 00000000000000#! /bin/sh # Attempt to guess a canonical system name. # Copyright 1992-2018 Free Software Foundation, Inc. timestamp='2018-02-24' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, see . # # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that # program. This Exception is an additional permission under section 7 # of the GNU General Public License, version 3 ("GPLv3"). # # Originally written by Per Bothner; maintained since 2000 by Ben Elliston. # # You can get the latest version of this script from: # https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess # # Please send patches to . me=`echo "$0" | sed -e 's,.*/,,'` usage="\ Usage: $0 [OPTION] Output the configuration name of the system \`$me' is run on. Options: -h, --help print this help, then exit -t, --time-stamp print date of last modification, then exit -v, --version print version number, then exit Report bugs and patches to ." version="\ GNU config.guess ($timestamp) Originally written by Per Bothner. Copyright 1992-2018 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." help=" Try \`$me --help' for more information." # Parse command line while test $# -gt 0 ; do case $1 in --time-stamp | --time* | -t ) echo "$timestamp" ; exit ;; --version | -v ) echo "$version" ; exit ;; --help | --h* | -h ) echo "$usage"; exit ;; -- ) # Stop option processing shift; break ;; - ) # Use stdin as input. break ;; -* ) echo "$me: invalid option $1$help" >&2 exit 1 ;; * ) break ;; esac done if test $# != 0; then echo "$me: too many arguments$help" >&2 exit 1 fi trap 'exit 1' 1 2 15 # CC_FOR_BUILD -- compiler used by this script. Note that the use of a # compiler to aid in system detection is discouraged as it requires # temporary files to be created and, as you can see below, it is a # headache to deal with in a portable fashion. # Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still # use `HOST_CC' if defined, but it is deprecated. # Portable tmp directory creation inspired by the Autoconf team. set_cc_for_build=' trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; : ${TMPDIR=/tmp} ; { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; dummy=$tmp/dummy ; tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; case $CC_FOR_BUILD,$HOST_CC,$CC in ,,) echo "int x;" > "$dummy.c" ; for c in cc gcc c89 c99 ; do if ($c -c -o "$dummy.o" "$dummy.c") >/dev/null 2>&1 ; then CC_FOR_BUILD="$c"; break ; fi ; done ; if test x"$CC_FOR_BUILD" = x ; then CC_FOR_BUILD=no_compiler_found ; fi ;; ,,*) CC_FOR_BUILD=$CC ;; ,*,*) CC_FOR_BUILD=$HOST_CC ;; esac ; set_cc_for_build= ;' # This is needed to find uname on a Pyramid OSx when run in the BSD universe. # (ghazi@noc.rutgers.edu 1994-08-24) if (test -f /.attbin/uname) >/dev/null 2>&1 ; then PATH=$PATH:/.attbin ; export PATH fi UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown case "$UNAME_SYSTEM" in Linux|GNU|GNU/*) # If the system lacks a compiler, then just pick glibc. # We could probably try harder. LIBC=gnu eval "$set_cc_for_build" cat <<-EOF > "$dummy.c" #include #if defined(__UCLIBC__) LIBC=uclibc #elif defined(__dietlibc__) LIBC=dietlibc #else LIBC=gnu #endif EOF eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`" # If ldd exists, use it to detect musl libc. if command -v ldd >/dev/null && \ ldd --version 2>&1 | grep -q ^musl then LIBC=musl fi ;; esac # Note: order is significant - the case branches are not exclusive. case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in *:NetBSD:*:*) # NetBSD (nbsd) targets should (where applicable) match one or # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*, # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently # switched to ELF, *-*-netbsd* would select the old # object file format. This provides both forward # compatibility and a consistent mechanism for selecting the # object file format. # # Note: NetBSD doesn't particularly care about the vendor # portion of the name. We always set it to "unknown". sysctl="sysctl -n hw.machine_arch" UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \ "/sbin/$sysctl" 2>/dev/null || \ "/usr/sbin/$sysctl" 2>/dev/null || \ echo unknown)` case "$UNAME_MACHINE_ARCH" in armeb) machine=armeb-unknown ;; arm*) machine=arm-unknown ;; sh3el) machine=shl-unknown ;; sh3eb) machine=sh-unknown ;; sh5el) machine=sh5le-unknown ;; earmv*) arch=`echo "$UNAME_MACHINE_ARCH" | sed -e 's,^e\(armv[0-9]\).*$,\1,'` endian=`echo "$UNAME_MACHINE_ARCH" | sed -ne 's,^.*\(eb\)$,\1,p'` machine="${arch}${endian}"-unknown ;; *) machine="$UNAME_MACHINE_ARCH"-unknown ;; esac # The Operating System including object format, if it has switched # to ELF recently (or will in the future) and ABI. case "$UNAME_MACHINE_ARCH" in earm*) os=netbsdelf ;; arm*|i386|m68k|ns32k|sh3*|sparc|vax) eval "$set_cc_for_build" if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ | grep -q __ELF__ then # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). # Return netbsd for either. FIX? os=netbsd else os=netbsdelf fi ;; *) os=netbsd ;; esac # Determine ABI tags. case "$UNAME_MACHINE_ARCH" in earm*) expr='s/^earmv[0-9]/-eabi/;s/eb$//' abi=`echo "$UNAME_MACHINE_ARCH" | sed -e "$expr"` ;; esac # The OS release # Debian GNU/NetBSD machines have a different userland, and # thus, need a distinct triplet. However, they do not need # kernel version information, so it can be replaced with a # suitable tag, in the style of linux-gnu. case "$UNAME_VERSION" in Debian*) release='-gnu' ;; *) release=`echo "$UNAME_RELEASE" | sed -e 's/[-_].*//' | cut -d. -f1,2` ;; esac # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: # contains redundant information, the shorter form: # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. echo "$machine-${os}${release}${abi}" exit ;; *:Bitrig:*:*) UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'` echo "$UNAME_MACHINE_ARCH"-unknown-bitrig"$UNAME_RELEASE" exit ;; *:OpenBSD:*:*) UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` echo "$UNAME_MACHINE_ARCH"-unknown-openbsd"$UNAME_RELEASE" exit ;; *:LibertyBSD:*:*) UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'` echo "$UNAME_MACHINE_ARCH"-unknown-libertybsd"$UNAME_RELEASE" exit ;; *:MidnightBSD:*:*) echo "$UNAME_MACHINE"-unknown-midnightbsd"$UNAME_RELEASE" exit ;; *:ekkoBSD:*:*) echo "$UNAME_MACHINE"-unknown-ekkobsd"$UNAME_RELEASE" exit ;; *:SolidBSD:*:*) echo "$UNAME_MACHINE"-unknown-solidbsd"$UNAME_RELEASE" exit ;; macppc:MirBSD:*:*) echo powerpc-unknown-mirbsd"$UNAME_RELEASE" exit ;; *:MirBSD:*:*) echo "$UNAME_MACHINE"-unknown-mirbsd"$UNAME_RELEASE" exit ;; *:Sortix:*:*) echo "$UNAME_MACHINE"-unknown-sortix exit ;; *:Redox:*:*) echo "$UNAME_MACHINE"-unknown-redox exit ;; mips:OSF1:*.*) echo mips-dec-osf1 exit ;; alpha:OSF1:*:*) case $UNAME_RELEASE in *4.0) UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` ;; *5.*) UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` ;; esac # According to Compaq, /usr/sbin/psrinfo has been available on # OSF/1 and Tru64 systems produced since 1995. I hope that # covers most systems running today. This code pipes the CPU # types through head -n 1, so we only detect the type of CPU 0. ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` case "$ALPHA_CPU_TYPE" in "EV4 (21064)") UNAME_MACHINE=alpha ;; "EV4.5 (21064)") UNAME_MACHINE=alpha ;; "LCA4 (21066/21068)") UNAME_MACHINE=alpha ;; "EV5 (21164)") UNAME_MACHINE=alphaev5 ;; "EV5.6 (21164A)") UNAME_MACHINE=alphaev56 ;; "EV5.6 (21164PC)") UNAME_MACHINE=alphapca56 ;; "EV5.7 (21164PC)") UNAME_MACHINE=alphapca57 ;; "EV6 (21264)") UNAME_MACHINE=alphaev6 ;; "EV6.7 (21264A)") UNAME_MACHINE=alphaev67 ;; "EV6.8CB (21264C)") UNAME_MACHINE=alphaev68 ;; "EV6.8AL (21264B)") UNAME_MACHINE=alphaev68 ;; "EV6.8CX (21264D)") UNAME_MACHINE=alphaev68 ;; "EV6.9A (21264/EV69A)") UNAME_MACHINE=alphaev69 ;; "EV7 (21364)") UNAME_MACHINE=alphaev7 ;; "EV7.9 (21364A)") UNAME_MACHINE=alphaev79 ;; esac # A Pn.n version is a patched version. # A Vn.n version is a released version. # A Tn.n version is a released field test version. # A Xn.n version is an unreleased experimental baselevel. # 1.2 uses "1.2" for uname -r. echo "$UNAME_MACHINE"-dec-osf"`echo "$UNAME_RELEASE" | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`" # Reset EXIT trap before exiting to avoid spurious non-zero exit code. exitcode=$? trap '' 0 exit $exitcode ;; Amiga*:UNIX_System_V:4.0:*) echo m68k-unknown-sysv4 exit ;; *:[Aa]miga[Oo][Ss]:*:*) echo "$UNAME_MACHINE"-unknown-amigaos exit ;; *:[Mm]orph[Oo][Ss]:*:*) echo "$UNAME_MACHINE"-unknown-morphos exit ;; *:OS/390:*:*) echo i370-ibm-openedition exit ;; *:z/VM:*:*) echo s390-ibm-zvmoe exit ;; *:OS400:*:*) echo powerpc-ibm-os400 exit ;; arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) echo arm-acorn-riscix"$UNAME_RELEASE" exit ;; arm*:riscos:*:*|arm*:RISCOS:*:*) echo arm-unknown-riscos exit ;; SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) echo hppa1.1-hitachi-hiuxmpp exit ;; Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. if test "`(/bin/universe) 2>/dev/null`" = att ; then echo pyramid-pyramid-sysv3 else echo pyramid-pyramid-bsd fi exit ;; NILE*:*:*:dcosx) echo pyramid-pyramid-svr4 exit ;; DRS?6000:unix:4.0:6*) echo sparc-icl-nx6 exit ;; DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) case `/usr/bin/uname -p` in sparc) echo sparc-icl-nx7; exit ;; esac ;; s390x:SunOS:*:*) echo "$UNAME_MACHINE"-ibm-solaris2"`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`" exit ;; sun4H:SunOS:5.*:*) echo sparc-hal-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`" exit ;; sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) echo sparc-sun-solaris2"`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`" exit ;; i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) echo i386-pc-auroraux"$UNAME_RELEASE" exit ;; i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) eval "$set_cc_for_build" SUN_ARCH=i386 # If there is a compiler, see if it is configured for 64-bit objects. # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. # This test works for both compilers. if [ "$CC_FOR_BUILD" != no_compiler_found ]; then if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ grep IS_64BIT_ARCH >/dev/null then SUN_ARCH=x86_64 fi fi echo "$SUN_ARCH"-pc-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`" exit ;; sun4*:SunOS:6*:*) # According to config.sub, this is the proper way to canonicalize # SunOS6. Hard to guess exactly what SunOS6 will be like, but # it's likely to be more like Solaris than SunOS4. echo sparc-sun-solaris3"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`" exit ;; sun4*:SunOS:*:*) case "`/usr/bin/arch -k`" in Series*|S4*) UNAME_RELEASE=`uname -v` ;; esac # Japanese Language versions have a version number like `4.1.3-JL'. echo sparc-sun-sunos"`echo "$UNAME_RELEASE"|sed -e 's/-/_/'`" exit ;; sun3*:SunOS:*:*) echo m68k-sun-sunos"$UNAME_RELEASE" exit ;; sun*:*:4.2BSD:*) UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` test "x$UNAME_RELEASE" = x && UNAME_RELEASE=3 case "`/bin/arch`" in sun3) echo m68k-sun-sunos"$UNAME_RELEASE" ;; sun4) echo sparc-sun-sunos"$UNAME_RELEASE" ;; esac exit ;; aushp:SunOS:*:*) echo sparc-auspex-sunos"$UNAME_RELEASE" exit ;; # The situation for MiNT is a little confusing. The machine name # can be virtually everything (everything which is not # "atarist" or "atariste" at least should have a processor # > m68000). The system name ranges from "MiNT" over "FreeMiNT" # to the lowercase version "mint" (or "freemint"). Finally # the system name "TOS" denotes a system which is actually not # MiNT. But MiNT is downward compatible to TOS, so this should # be no problem. atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) echo m68k-atari-mint"$UNAME_RELEASE" exit ;; atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) echo m68k-atari-mint"$UNAME_RELEASE" exit ;; *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) echo m68k-atari-mint"$UNAME_RELEASE" exit ;; milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) echo m68k-milan-mint"$UNAME_RELEASE" exit ;; hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) echo m68k-hades-mint"$UNAME_RELEASE" exit ;; *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) echo m68k-unknown-mint"$UNAME_RELEASE" exit ;; m68k:machten:*:*) echo m68k-apple-machten"$UNAME_RELEASE" exit ;; powerpc:machten:*:*) echo powerpc-apple-machten"$UNAME_RELEASE" exit ;; RISC*:Mach:*:*) echo mips-dec-mach_bsd4.3 exit ;; RISC*:ULTRIX:*:*) echo mips-dec-ultrix"$UNAME_RELEASE" exit ;; VAX*:ULTRIX*:*:*) echo vax-dec-ultrix"$UNAME_RELEASE" exit ;; 2020:CLIX:*:* | 2430:CLIX:*:*) echo clipper-intergraph-clix"$UNAME_RELEASE" exit ;; mips:*:*:UMIPS | mips:*:*:RISCos) eval "$set_cc_for_build" sed 's/^ //' << EOF > "$dummy.c" #ifdef __cplusplus #include /* for printf() prototype */ int main (int argc, char *argv[]) { #else int main (argc, argv) int argc; char *argv[]; { #endif #if defined (host_mips) && defined (MIPSEB) #if defined (SYSTYPE_SYSV) printf ("mips-mips-riscos%ssysv\\n", argv[1]); exit (0); #endif #if defined (SYSTYPE_SVR4) printf ("mips-mips-riscos%ssvr4\\n", argv[1]); exit (0); #endif #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) printf ("mips-mips-riscos%sbsd\\n", argv[1]); exit (0); #endif #endif exit (-1); } EOF $CC_FOR_BUILD -o "$dummy" "$dummy.c" && dummyarg=`echo "$UNAME_RELEASE" | sed -n 's/\([0-9]*\).*/\1/p'` && SYSTEM_NAME=`"$dummy" "$dummyarg"` && { echo "$SYSTEM_NAME"; exit; } echo mips-mips-riscos"$UNAME_RELEASE" exit ;; Motorola:PowerMAX_OS:*:*) echo powerpc-motorola-powermax exit ;; Motorola:*:4.3:PL8-*) echo powerpc-harris-powermax exit ;; Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) echo powerpc-harris-powermax exit ;; Night_Hawk:Power_UNIX:*:*) echo powerpc-harris-powerunix exit ;; m88k:CX/UX:7*:*) echo m88k-harris-cxux7 exit ;; m88k:*:4*:R4*) echo m88k-motorola-sysv4 exit ;; m88k:*:3*:R3*) echo m88k-motorola-sysv3 exit ;; AViiON:dgux:*:*) # DG/UX returns AViiON for all architectures UNAME_PROCESSOR=`/usr/bin/uname -p` if [ "$UNAME_PROCESSOR" = mc88100 ] || [ "$UNAME_PROCESSOR" = mc88110 ] then if [ "$TARGET_BINARY_INTERFACE"x = m88kdguxelfx ] || \ [ "$TARGET_BINARY_INTERFACE"x = x ] then echo m88k-dg-dgux"$UNAME_RELEASE" else echo m88k-dg-dguxbcs"$UNAME_RELEASE" fi else echo i586-dg-dgux"$UNAME_RELEASE" fi exit ;; M88*:DolphinOS:*:*) # DolphinOS (SVR3) echo m88k-dolphin-sysv3 exit ;; M88*:*:R3*:*) # Delta 88k system running SVR3 echo m88k-motorola-sysv3 exit ;; XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) echo m88k-tektronix-sysv3 exit ;; Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) echo m68k-tektronix-bsd exit ;; *:IRIX*:*:*) echo mips-sgi-irix"`echo "$UNAME_RELEASE"|sed -e 's/-/_/g'`" exit ;; ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' i*86:AIX:*:*) echo i386-ibm-aix exit ;; ia64:AIX:*:*) if [ -x /usr/bin/oslevel ] ; then IBM_REV=`/usr/bin/oslevel` else IBM_REV="$UNAME_VERSION.$UNAME_RELEASE" fi echo "$UNAME_MACHINE"-ibm-aix"$IBM_REV" exit ;; *:AIX:2:3) if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then eval "$set_cc_for_build" sed 's/^ //' << EOF > "$dummy.c" #include main() { if (!__power_pc()) exit(1); puts("powerpc-ibm-aix3.2.5"); exit(0); } EOF if $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` then echo "$SYSTEM_NAME" else echo rs6000-ibm-aix3.2.5 fi elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then echo rs6000-ibm-aix3.2.4 else echo rs6000-ibm-aix3.2 fi exit ;; *:AIX:*:[4567]) IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` if /usr/sbin/lsattr -El "$IBM_CPU_ID" | grep ' POWER' >/dev/null 2>&1; then IBM_ARCH=rs6000 else IBM_ARCH=powerpc fi if [ -x /usr/bin/lslpp ] ; then IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc | awk -F: '{ print $3 }' | sed s/[0-9]*$/0/` else IBM_REV="$UNAME_VERSION.$UNAME_RELEASE" fi echo "$IBM_ARCH"-ibm-aix"$IBM_REV" exit ;; *:AIX:*:*) echo rs6000-ibm-aix exit ;; ibmrt:4.4BSD:*|romp-ibm:4.4BSD:*) echo romp-ibm-bsd4.4 exit ;; ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and echo romp-ibm-bsd"$UNAME_RELEASE" # 4.3 with uname added to exit ;; # report: romp-ibm BSD 4.3 *:BOSX:*:*) echo rs6000-bull-bosx exit ;; DPX/2?00:B.O.S.:*:*) echo m68k-bull-sysv3 exit ;; 9000/[34]??:4.3bsd:1.*:*) echo m68k-hp-bsd exit ;; hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) echo m68k-hp-bsd4.4 exit ;; 9000/[34678]??:HP-UX:*:*) HPUX_REV=`echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//'` case "$UNAME_MACHINE" in 9000/31?) HP_ARCH=m68000 ;; 9000/[34]??) HP_ARCH=m68k ;; 9000/[678][0-9][0-9]) if [ -x /usr/bin/getconf ]; then sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` case "$sc_cpu_version" in 523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0 528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1 532) # CPU_PA_RISC2_0 case "$sc_kernel_bits" in 32) HP_ARCH=hppa2.0n ;; 64) HP_ARCH=hppa2.0w ;; '') HP_ARCH=hppa2.0 ;; # HP-UX 10.20 esac ;; esac fi if [ "$HP_ARCH" = "" ]; then eval "$set_cc_for_build" sed 's/^ //' << EOF > "$dummy.c" #define _HPUX_SOURCE #include #include int main () { #if defined(_SC_KERNEL_BITS) long bits = sysconf(_SC_KERNEL_BITS); #endif long cpu = sysconf (_SC_CPU_VERSION); switch (cpu) { case CPU_PA_RISC1_0: puts ("hppa1.0"); break; case CPU_PA_RISC1_1: puts ("hppa1.1"); break; case CPU_PA_RISC2_0: #if defined(_SC_KERNEL_BITS) switch (bits) { case 64: puts ("hppa2.0w"); break; case 32: puts ("hppa2.0n"); break; default: puts ("hppa2.0"); break; } break; #else /* !defined(_SC_KERNEL_BITS) */ puts ("hppa2.0"); break; #endif default: puts ("hppa1.0"); break; } exit (0); } EOF (CCOPTS="" $CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null) && HP_ARCH=`"$dummy"` test -z "$HP_ARCH" && HP_ARCH=hppa fi ;; esac if [ "$HP_ARCH" = hppa2.0w ] then eval "$set_cc_for_build" # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler # generating 64-bit code. GNU and HP use different nomenclature: # # $ CC_FOR_BUILD=cc ./config.guess # => hppa2.0w-hp-hpux11.23 # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess # => hppa64-hp-hpux11.23 if echo __LP64__ | (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | grep -q __LP64__ then HP_ARCH=hppa2.0w else HP_ARCH=hppa64 fi fi echo "$HP_ARCH"-hp-hpux"$HPUX_REV" exit ;; ia64:HP-UX:*:*) HPUX_REV=`echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//'` echo ia64-hp-hpux"$HPUX_REV" exit ;; 3050*:HI-UX:*:*) eval "$set_cc_for_build" sed 's/^ //' << EOF > "$dummy.c" #include int main () { long cpu = sysconf (_SC_CPU_VERSION); /* The order matters, because CPU_IS_HP_MC68K erroneously returns true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct results, however. */ if (CPU_IS_PA_RISC (cpu)) { switch (cpu) { case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; default: puts ("hppa-hitachi-hiuxwe2"); break; } } else if (CPU_IS_HP_MC68K (cpu)) puts ("m68k-hitachi-hiuxwe2"); else puts ("unknown-hitachi-hiuxwe2"); exit (0); } EOF $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` && { echo "$SYSTEM_NAME"; exit; } echo unknown-hitachi-hiuxwe2 exit ;; 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:*) echo hppa1.1-hp-bsd exit ;; 9000/8??:4.3bsd:*:*) echo hppa1.0-hp-bsd exit ;; *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) echo hppa1.0-hp-mpeix exit ;; hp7??:OSF1:*:* | hp8?[79]:OSF1:*:*) echo hppa1.1-hp-osf exit ;; hp8??:OSF1:*:*) echo hppa1.0-hp-osf exit ;; i*86:OSF1:*:*) if [ -x /usr/sbin/sysversion ] ; then echo "$UNAME_MACHINE"-unknown-osf1mk else echo "$UNAME_MACHINE"-unknown-osf1 fi exit ;; parisc*:Lites*:*:*) echo hppa1.1-hp-lites exit ;; C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) echo c1-convex-bsd exit ;; C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) if getsysinfo -f scalar_acc then echo c32-convex-bsd else echo c2-convex-bsd fi exit ;; C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) echo c34-convex-bsd exit ;; C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) echo c38-convex-bsd exit ;; C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) echo c4-convex-bsd exit ;; CRAY*Y-MP:*:*:*) echo ymp-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/' exit ;; CRAY*[A-Z]90:*:*:*) echo "$UNAME_MACHINE"-cray-unicos"$UNAME_RELEASE" \ | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ -e 's/\.[^.]*$/.X/' exit ;; CRAY*TS:*:*:*) echo t90-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/' exit ;; CRAY*T3E:*:*:*) echo alphaev5-cray-unicosmk"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/' exit ;; CRAY*SV1:*:*:*) echo sv1-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/' exit ;; *:UNICOS/mp:*:*) echo craynv-cray-unicosmp"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/' exit ;; F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) FUJITSU_PROC=`uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz` FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'` FUJITSU_REL=`echo "$UNAME_RELEASE" | sed -e 's/ /_/'` echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" exit ;; 5000:UNIX_System_V:4.*:*) FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'` FUJITSU_REL=`echo "$UNAME_RELEASE" | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'` echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" exit ;; i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) echo "$UNAME_MACHINE"-pc-bsdi"$UNAME_RELEASE" exit ;; sparc*:BSD/OS:*:*) echo sparc-unknown-bsdi"$UNAME_RELEASE" exit ;; *:BSD/OS:*:*) echo "$UNAME_MACHINE"-unknown-bsdi"$UNAME_RELEASE" exit ;; *:FreeBSD:*:*) UNAME_PROCESSOR=`/usr/bin/uname -p` case "$UNAME_PROCESSOR" in amd64) UNAME_PROCESSOR=x86_64 ;; i386) UNAME_PROCESSOR=i586 ;; esac echo "$UNAME_PROCESSOR"-unknown-freebsd"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`" exit ;; i*:CYGWIN*:*) echo "$UNAME_MACHINE"-pc-cygwin exit ;; *:MINGW64*:*) echo "$UNAME_MACHINE"-pc-mingw64 exit ;; *:MINGW*:*) echo "$UNAME_MACHINE"-pc-mingw32 exit ;; *:MSYS*:*) echo "$UNAME_MACHINE"-pc-msys exit ;; i*:PW*:*) echo "$UNAME_MACHINE"-pc-pw32 exit ;; *:Interix*:*) case "$UNAME_MACHINE" in x86) echo i586-pc-interix"$UNAME_RELEASE" exit ;; authenticamd | genuineintel | EM64T) echo x86_64-unknown-interix"$UNAME_RELEASE" exit ;; IA64) echo ia64-unknown-interix"$UNAME_RELEASE" exit ;; esac ;; i*:UWIN*:*) echo "$UNAME_MACHINE"-pc-uwin exit ;; amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) echo x86_64-unknown-cygwin exit ;; prep*:SunOS:5.*:*) echo powerpcle-unknown-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`" exit ;; *:GNU:*:*) # the GNU system echo "`echo "$UNAME_MACHINE"|sed -e 's,[-/].*$,,'`-unknown-$LIBC`echo "$UNAME_RELEASE"|sed -e 's,/.*$,,'`" exit ;; *:GNU/*:*:*) # other systems with GNU libc and userland echo "$UNAME_MACHINE-unknown-`echo "$UNAME_SYSTEM" | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"``echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`-$LIBC" exit ;; i*86:Minix:*:*) echo "$UNAME_MACHINE"-pc-minix exit ;; aarch64:Linux:*:*) echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; aarch64_be:Linux:*:*) UNAME_MACHINE=aarch64_be echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; alpha:Linux:*:*) case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in EV5) UNAME_MACHINE=alphaev5 ;; EV56) UNAME_MACHINE=alphaev56 ;; PCA56) UNAME_MACHINE=alphapca56 ;; PCA57) UNAME_MACHINE=alphapca56 ;; EV6) UNAME_MACHINE=alphaev6 ;; EV67) UNAME_MACHINE=alphaev67 ;; EV68*) UNAME_MACHINE=alphaev68 ;; esac objdump --private-headers /bin/sh | grep -q ld.so.1 if test "$?" = 0 ; then LIBC=gnulibc1 ; fi echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; arc:Linux:*:* | arceb:Linux:*:*) echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; arm*:Linux:*:*) eval "$set_cc_for_build" if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ | grep -q __ARM_EABI__ then echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" else if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ | grep -q __ARM_PCS_VFP then echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabi else echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabihf fi fi exit ;; avr32*:Linux:*:*) echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; cris:Linux:*:*) echo "$UNAME_MACHINE"-axis-linux-"$LIBC" exit ;; crisv32:Linux:*:*) echo "$UNAME_MACHINE"-axis-linux-"$LIBC" exit ;; e2k:Linux:*:*) echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; frv:Linux:*:*) echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; hexagon:Linux:*:*) echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; i*86:Linux:*:*) echo "$UNAME_MACHINE"-pc-linux-"$LIBC" exit ;; ia64:Linux:*:*) echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; k1om:Linux:*:*) echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; m32r*:Linux:*:*) echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; m68*:Linux:*:*) echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; mips:Linux:*:* | mips64:Linux:*:*) eval "$set_cc_for_build" sed 's/^ //' << EOF > "$dummy.c" #undef CPU #undef ${UNAME_MACHINE} #undef ${UNAME_MACHINE}el #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) CPU=${UNAME_MACHINE}el #else #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) CPU=${UNAME_MACHINE} #else CPU= #endif #endif EOF eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^CPU'`" test "x$CPU" != x && { echo "$CPU-unknown-linux-$LIBC"; exit; } ;; mips64el:Linux:*:*) echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; openrisc*:Linux:*:*) echo or1k-unknown-linux-"$LIBC" exit ;; or32:Linux:*:* | or1k*:Linux:*:*) echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; padre:Linux:*:*) echo sparc-unknown-linux-"$LIBC" exit ;; parisc64:Linux:*:* | hppa64:Linux:*:*) echo hppa64-unknown-linux-"$LIBC" exit ;; parisc:Linux:*:* | hppa:Linux:*:*) # Look for CPU level case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in PA7*) echo hppa1.1-unknown-linux-"$LIBC" ;; PA8*) echo hppa2.0-unknown-linux-"$LIBC" ;; *) echo hppa-unknown-linux-"$LIBC" ;; esac exit ;; ppc64:Linux:*:*) echo powerpc64-unknown-linux-"$LIBC" exit ;; ppc:Linux:*:*) echo powerpc-unknown-linux-"$LIBC" exit ;; ppc64le:Linux:*:*) echo powerpc64le-unknown-linux-"$LIBC" exit ;; ppcle:Linux:*:*) echo powerpcle-unknown-linux-"$LIBC" exit ;; riscv32:Linux:*:* | riscv64:Linux:*:*) echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; s390:Linux:*:* | s390x:Linux:*:*) echo "$UNAME_MACHINE"-ibm-linux-"$LIBC" exit ;; sh64*:Linux:*:*) echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; sh*:Linux:*:*) echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; sparc:Linux:*:* | sparc64:Linux:*:*) echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; tile*:Linux:*:*) echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; vax:Linux:*:*) echo "$UNAME_MACHINE"-dec-linux-"$LIBC" exit ;; x86_64:Linux:*:*) if objdump -f /bin/sh | grep -q elf32-x86-64; then echo "$UNAME_MACHINE"-pc-linux-"$LIBC"x32 else echo "$UNAME_MACHINE"-pc-linux-"$LIBC" fi exit ;; xtensa*:Linux:*:*) echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; i*86:DYNIX/ptx:4*:*) # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. # earlier versions are messed up and put the nodename in both # sysname and nodename. echo i386-sequent-sysv4 exit ;; i*86:UNIX_SV:4.2MP:2.*) # Unixware is an offshoot of SVR4, but it has its own version # number series starting with 2... # I am not positive that other SVR4 systems won't match this, # I just have to hope. -- rms. # Use sysv4.2uw... so that sysv4* matches it. echo "$UNAME_MACHINE"-pc-sysv4.2uw"$UNAME_VERSION" exit ;; i*86:OS/2:*:*) # If we were able to find `uname', then EMX Unix compatibility # is probably installed. echo "$UNAME_MACHINE"-pc-os2-emx exit ;; i*86:XTS-300:*:STOP) echo "$UNAME_MACHINE"-unknown-stop exit ;; i*86:atheos:*:*) echo "$UNAME_MACHINE"-unknown-atheos exit ;; i*86:syllable:*:*) echo "$UNAME_MACHINE"-pc-syllable exit ;; i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) echo i386-unknown-lynxos"$UNAME_RELEASE" exit ;; i*86:*DOS:*:*) echo "$UNAME_MACHINE"-pc-msdosdjgpp exit ;; i*86:*:4.*:*) UNAME_REL=`echo "$UNAME_RELEASE" | sed 's/\/MP$//'` if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then echo "$UNAME_MACHINE"-univel-sysv"$UNAME_REL" else echo "$UNAME_MACHINE"-pc-sysv"$UNAME_REL" fi exit ;; i*86:*:5:[678]*) # UnixWare 7.x, OpenUNIX and OpenServer 6. case `/bin/uname -X | grep "^Machine"` in *486*) UNAME_MACHINE=i486 ;; *Pentium) UNAME_MACHINE=i586 ;; *Pent*|*Celeron) UNAME_MACHINE=i686 ;; esac echo "$UNAME_MACHINE-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}{$UNAME_VERSION}" exit ;; i*86:*:3.2:*) if test -f /usr/options/cb.name; then UNAME_REL=`sed -n 's/.*Version //p' /dev/null >/dev/null ; then UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ && UNAME_MACHINE=i586 (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ && UNAME_MACHINE=i686 (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ && UNAME_MACHINE=i686 echo "$UNAME_MACHINE"-pc-sco"$UNAME_REL" else echo "$UNAME_MACHINE"-pc-sysv32 fi exit ;; pc:*:*:*) # Left here for compatibility: # uname -m prints for DJGPP always 'pc', but it prints nothing about # the processor, so we play safe by assuming i586. # Note: whatever this is, it MUST be the same as what config.sub # prints for the "djgpp" host, or else GDB configure will decide that # this is a cross-build. echo i586-pc-msdosdjgpp exit ;; Intel:Mach:3*:*) echo i386-pc-mach3 exit ;; paragon:*:*:*) echo i860-intel-osf1 exit ;; i860:*:4.*:*) # i860-SVR4 if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then echo i860-stardent-sysv"$UNAME_RELEASE" # Stardent Vistra i860-SVR4 else # Add other i860-SVR4 vendors below as they are discovered. echo i860-unknown-sysv"$UNAME_RELEASE" # Unknown i860-SVR4 fi exit ;; mini*:CTIX:SYS*5:*) # "miniframe" echo m68010-convergent-sysv exit ;; mc68k:UNIX:SYSTEM5:3.51m) echo m68k-convergent-sysv exit ;; M680?0:D-NIX:5.3:*) echo m68k-diab-dnix exit ;; M68*:*:R3V[5678]*:*) test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0) OS_REL='' test -r /etc/.relid \ && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ && { echo i486-ncr-sysv4.3"$OS_REL"; exit; } /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;; 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ && { echo i486-ncr-sysv4; exit; } ;; NCR*:*:4.2:* | MPRAS*:*:4.2:*) OS_REL='.3' test -r /etc/.relid \ && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ && { echo i486-ncr-sysv4.3"$OS_REL"; exit; } /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;; m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) echo m68k-unknown-lynxos"$UNAME_RELEASE" exit ;; mc68030:UNIX_System_V:4.*:*) echo m68k-atari-sysv4 exit ;; TSUNAMI:LynxOS:2.*:*) echo sparc-unknown-lynxos"$UNAME_RELEASE" exit ;; rs6000:LynxOS:2.*:*) echo rs6000-unknown-lynxos"$UNAME_RELEASE" exit ;; PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) echo powerpc-unknown-lynxos"$UNAME_RELEASE" exit ;; SM[BE]S:UNIX_SV:*:*) echo mips-dde-sysv"$UNAME_RELEASE" exit ;; RM*:ReliantUNIX-*:*:*) echo mips-sni-sysv4 exit ;; RM*:SINIX-*:*:*) echo mips-sni-sysv4 exit ;; *:SINIX-*:*:*) if uname -p 2>/dev/null >/dev/null ; then UNAME_MACHINE=`(uname -p) 2>/dev/null` echo "$UNAME_MACHINE"-sni-sysv4 else echo ns32k-sni-sysv fi exit ;; PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort # says echo i586-unisys-sysv4 exit ;; *:UNIX_System_V:4*:FTX*) # From Gerald Hewes . # How about differentiating between stratus architectures? -djm echo hppa1.1-stratus-sysv4 exit ;; *:*:*:FTX*) # From seanf@swdc.stratus.com. echo i860-stratus-sysv4 exit ;; i*86:VOS:*:*) # From Paul.Green@stratus.com. echo "$UNAME_MACHINE"-stratus-vos exit ;; *:VOS:*:*) # From Paul.Green@stratus.com. echo hppa1.1-stratus-vos exit ;; mc68*:A/UX:*:*) echo m68k-apple-aux"$UNAME_RELEASE" exit ;; news*:NEWS-OS:6*:*) echo mips-sony-newsos6 exit ;; R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) if [ -d /usr/nec ]; then echo mips-nec-sysv"$UNAME_RELEASE" else echo mips-unknown-sysv"$UNAME_RELEASE" fi exit ;; BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. echo powerpc-be-beos exit ;; BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. echo powerpc-apple-beos exit ;; BePC:BeOS:*:*) # BeOS running on Intel PC compatible. echo i586-pc-beos exit ;; BePC:Haiku:*:*) # Haiku running on Intel PC compatible. echo i586-pc-haiku exit ;; x86_64:Haiku:*:*) echo x86_64-unknown-haiku exit ;; SX-4:SUPER-UX:*:*) echo sx4-nec-superux"$UNAME_RELEASE" exit ;; SX-5:SUPER-UX:*:*) echo sx5-nec-superux"$UNAME_RELEASE" exit ;; SX-6:SUPER-UX:*:*) echo sx6-nec-superux"$UNAME_RELEASE" exit ;; SX-7:SUPER-UX:*:*) echo sx7-nec-superux"$UNAME_RELEASE" exit ;; SX-8:SUPER-UX:*:*) echo sx8-nec-superux"$UNAME_RELEASE" exit ;; SX-8R:SUPER-UX:*:*) echo sx8r-nec-superux"$UNAME_RELEASE" exit ;; SX-ACE:SUPER-UX:*:*) echo sxace-nec-superux"$UNAME_RELEASE" exit ;; Power*:Rhapsody:*:*) echo powerpc-apple-rhapsody"$UNAME_RELEASE" exit ;; *:Rhapsody:*:*) echo "$UNAME_MACHINE"-apple-rhapsody"$UNAME_RELEASE" exit ;; *:Darwin:*:*) UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown eval "$set_cc_for_build" if test "$UNAME_PROCESSOR" = unknown ; then UNAME_PROCESSOR=powerpc fi if test "`echo "$UNAME_RELEASE" | sed -e 's/\..*//'`" -le 10 ; then if [ "$CC_FOR_BUILD" != no_compiler_found ]; then if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ grep IS_64BIT_ARCH >/dev/null then case $UNAME_PROCESSOR in i386) UNAME_PROCESSOR=x86_64 ;; powerpc) UNAME_PROCESSOR=powerpc64 ;; esac fi # On 10.4-10.6 one might compile for PowerPC via gcc -arch ppc if (echo '#ifdef __POWERPC__'; echo IS_PPC; echo '#endif') | \ (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ grep IS_PPC >/dev/null then UNAME_PROCESSOR=powerpc fi fi elif test "$UNAME_PROCESSOR" = i386 ; then # Avoid executing cc on OS X 10.9, as it ships with a stub # that puts up a graphical alert prompting to install # developer tools. Any system running Mac OS X 10.7 or # later (Darwin 11 and later) is required to have a 64-bit # processor. This is not true of the ARM version of Darwin # that Apple uses in portable devices. UNAME_PROCESSOR=x86_64 fi echo "$UNAME_PROCESSOR"-apple-darwin"$UNAME_RELEASE" exit ;; *:procnto*:*:* | *:QNX:[0123456789]*:*) UNAME_PROCESSOR=`uname -p` if test "$UNAME_PROCESSOR" = x86; then UNAME_PROCESSOR=i386 UNAME_MACHINE=pc fi echo "$UNAME_PROCESSOR"-"$UNAME_MACHINE"-nto-qnx"$UNAME_RELEASE" exit ;; *:QNX:*:4*) echo i386-pc-qnx exit ;; NEO-*:NONSTOP_KERNEL:*:*) echo neo-tandem-nsk"$UNAME_RELEASE" exit ;; NSE-*:NONSTOP_KERNEL:*:*) echo nse-tandem-nsk"$UNAME_RELEASE" exit ;; NSR-*:NONSTOP_KERNEL:*:*) echo nsr-tandem-nsk"$UNAME_RELEASE" exit ;; NSV-*:NONSTOP_KERNEL:*:*) echo nsv-tandem-nsk"$UNAME_RELEASE" exit ;; NSX-*:NONSTOP_KERNEL:*:*) echo nsx-tandem-nsk"$UNAME_RELEASE" exit ;; *:NonStop-UX:*:*) echo mips-compaq-nonstopux exit ;; BS2000:POSIX*:*:*) echo bs2000-siemens-sysv exit ;; DS/*:UNIX_System_V:*:*) echo "$UNAME_MACHINE"-"$UNAME_SYSTEM"-"$UNAME_RELEASE" exit ;; *:Plan9:*:*) # "uname -m" is not consistent, so use $cputype instead. 386 # is converted to i386 for consistency with other x86 # operating systems. if test "$cputype" = 386; then UNAME_MACHINE=i386 else UNAME_MACHINE="$cputype" fi echo "$UNAME_MACHINE"-unknown-plan9 exit ;; *:TOPS-10:*:*) echo pdp10-unknown-tops10 exit ;; *:TENEX:*:*) echo pdp10-unknown-tenex exit ;; KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) echo pdp10-dec-tops20 exit ;; XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) echo pdp10-xkl-tops20 exit ;; *:TOPS-20:*:*) echo pdp10-unknown-tops20 exit ;; *:ITS:*:*) echo pdp10-unknown-its exit ;; SEI:*:*:SEIUX) echo mips-sei-seiux"$UNAME_RELEASE" exit ;; *:DragonFly:*:*) echo "$UNAME_MACHINE"-unknown-dragonfly"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`" exit ;; *:*VMS:*:*) UNAME_MACHINE=`(uname -p) 2>/dev/null` case "$UNAME_MACHINE" in A*) echo alpha-dec-vms ; exit ;; I*) echo ia64-dec-vms ; exit ;; V*) echo vax-dec-vms ; exit ;; esac ;; *:XENIX:*:SysV) echo i386-pc-xenix exit ;; i*86:skyos:*:*) echo "$UNAME_MACHINE"-pc-skyos"`echo "$UNAME_RELEASE" | sed -e 's/ .*$//'`" exit ;; i*86:rdos:*:*) echo "$UNAME_MACHINE"-pc-rdos exit ;; i*86:AROS:*:*) echo "$UNAME_MACHINE"-pc-aros exit ;; x86_64:VMkernel:*:*) echo "$UNAME_MACHINE"-unknown-esx exit ;; amd64:Isilon\ OneFS:*:*) echo x86_64-unknown-onefs exit ;; esac echo "$0: unable to guess system type" >&2 case "$UNAME_MACHINE:$UNAME_SYSTEM" in mips:Linux | mips64:Linux) # If we got here on MIPS GNU/Linux, output extra information. cat >&2 <&2 </dev/null || echo unknown` uname -r = `(uname -r) 2>/dev/null || echo unknown` uname -s = `(uname -s) 2>/dev/null || echo unknown` uname -v = `(uname -v) 2>/dev/null || echo unknown` /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` /bin/uname -X = `(/bin/uname -X) 2>/dev/null` hostinfo = `(hostinfo) 2>/dev/null` /bin/universe = `(/bin/universe) 2>/dev/null` /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` /bin/arch = `(/bin/arch) 2>/dev/null` /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` UNAME_MACHINE = "$UNAME_MACHINE" UNAME_RELEASE = "$UNAME_RELEASE" UNAME_SYSTEM = "$UNAME_SYSTEM" UNAME_VERSION = "$UNAME_VERSION" EOF exit 1 # Local variables: # eval: (add-hook 'write-file-functions 'time-stamp) # time-stamp-start: "timestamp='" # time-stamp-format: "%:y-%02m-%02d" # time-stamp-end: "'" # End: unicode-screensaver-0.5.1/hacks/0000755000175000017500000000000013306044133013550 500000000000000unicode-screensaver-0.5.1/hacks/screenhackI.h0000644000175000017500000001070112523334521016062 00000000000000/* xscreensaver, Copyright (c) 1992-2008 Jamie Zawinski * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided that * the above copyright notice appear in all copies and that both that * copyright notice and this permission notice appear in supporting * documentation. No representations are made about the suitability of this * software for any purpose. It is provided "as is" without express or * implied warranty. */ /* Found in Don Hopkins' .plan file: * * The color situation is a total flying circus. The X approach to * device independence is to treat everything like a MicroVax framebuffer * on acid. A truely portable X application is required to act like the * persistent customer in the Monty Python ``Cheese Shop'' sketch. Even * the simplest applications must answer many difficult questions, like: * * WHAT IS YOUR DISPLAY? * display = XOpenDisplay("unix:0"); * WHAT IS YOUR ROOT? * root = RootWindow(display, DefaultScreen(display)); * AND WHAT IS YOUR WINDOW? * win = XCreateSimpleWindow(display, root, 0, 0, 256, 256, 1, * BlackPixel(display, DefaultScreen(display)), * WhitePixel(display, DefaultScreen(display))) * OH ALL RIGHT, YOU CAN GO ON. * * WHAT IS YOUR DISPLAY? * display = XOpenDisplay("unix:0"); * WHAT IS YOUR COLORMAP? * cmap = DefaultColormap(display, DefaultScreen(display)); * AND WHAT IS YOUR FAVORITE COLOR? * favorite_color = 0; / * Black. * / * / * Whoops! No, I mean: * / * favorite_color = BlackPixel(display, DefaultScreen(display)); * / * AAAYYYYEEEEE!! (client dumps core & falls into the chasm) * / * * WHAT IS YOUR DISPLAY? * display = XOpenDisplay("unix:0"); * WHAT IS YOUR VISUAL? * struct XVisualInfo vinfo; * if (XMatchVisualInfo(display, DefaultScreen(display), * 8, PseudoColor, &vinfo) != 0) * visual = vinfo.visual; * AND WHAT IS THE NET SPEED VELOCITY OF AN XConfigureWindow REQUEST? * / * Is that a SubStructureRedirectMask or a ResizeRedirectMask? * / * WHAT?! HOW AM I SUPPOSED TO KNOW THAT? * AAAAUUUGGGHHH!!!! (server dumps core & falls into the chasm) */ #ifndef __SCREENHACK_I_H__ #define __SCREENHACK_I_H__ #ifdef HAVE_CONFIG_H # include "config.h" #endif /* HAVE_CONFIG_H */ #include #include #include #ifdef __hpux /* Which of the ten billion standards does values.h belong to? What systems always have it? */ # include #endif #ifdef HAVE_COCOA # include "jwxyz.h" #else /* !HAVE_COCOA -- real X11 */ # include # include # include # include #endif /* !HAVE_COCOA */ /* M_PI ought to have been defined in math.h, but... */ #ifndef M_PI # define M_PI 3.1415926535 #endif #ifndef M_PI_2 # define M_PI_2 1.5707963267 #endif #ifndef Button6 # define Button6 6 # define Button7 7 #endif #include "yarandom.h" #include "usleep.h" #include "resources.h" #include "hsv.h" #include "colors.h" #include "grabscreen.h" #include "visual.h" #include "fps.h" /* Be Posixly correct */ #undef bzero #define bzero __ERROR_use_memset_not_bzero_in_xscreensaver__ #undef bcopy #define bcopy __ERROR_use_memcpy_not_bcopy_in_xscreensaver__ #undef ftime #define ftime __ERROR_use_gettimeofday_not_ftime_in_xscreensaver__ #undef sleep #define sleep __ERROR_do_not_sleep_in_xscreensaver__ extern Bool mono_p; struct xscreensaver_function_table { const char *progclass; const char * const *defaults; const XrmOptionDescRec *options; void (*setup_cb) (struct xscreensaver_function_table *, void *); void * setup_arg; void * (*init_cb) (Display *, Window); unsigned long (*draw_cb) (Display *, Window, void *); void (*reshape_cb) (Display *, Window, void *, unsigned int w, unsigned int h); Bool (*event_cb) (Display *, Window, void *, XEvent *); void (*free_cb) (Display *, Window, void *); void (*fps_cb) (Display *, Window, fps_state *, void *); Visual * (*pick_visual_hook) (Screen *); Bool (*validate_visual_hook) (Screen *, const char *, Visual *); }; extern const char *progname; #endif /* __SCREENHACK_I_H__ */ unicode-screensaver-0.5.1/hacks/screenhack.c0000644000175000017500000007006612523334521015756 00000000000000/* xscreensaver, Copyright (c) 1992-2010 Jamie Zawinski * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided that * the above copyright notice appear in all copies and that both that * copyright notice and this permission notice appear in supporting * documentation. No representations are made about the suitability of this * software for any purpose. It is provided "as is" without express or * implied warranty. * * And remember: X Windows is to graphics hacking as roman numerals are to * the square root of pi. */ /* This file contains simple code to open a window or draw on the root. The idea being that, when writing a graphics hack, you can just link with this .o to get all of the uninteresting junk out of the way. Create a few static global procedures and variables: static void *YOURNAME_init (Display *, Window); Return an opaque structure representing your drawing state. static unsigned long YOURNAME_draw (Display *, Window, void *closure); Draw one frame. The `closure' arg is your drawing state, that you created in `init'. Return the number of microseconds to wait until the next frame. This should return in some small fraction of a second. Do not call `usleep' or loop excessively. For long loops, use a finite state machine. static void YOURNAME_reshape (Display *, Window, void *closure, unsigned int width, unsigned int height); Called when the size of the window changes with the new size. static Bool YOURNAME_event (Display *, Window, void *closure, XEvent *event); Called when a keyboard or mouse event arrives. Return True if you handle it in some way, False otherwise. static void YOURNAME_free (Display *, Window, void *closure); Called when you are done: free everything you've allocated, including your private `state' structure. NOTE: this is called in windowed-mode when the user typed 'q' or clicks on the window's close box; but when xscreensaver terminates this screenhack, it does so by killing the process with SIGSTOP. So this callback is mostly useless. static char YOURNAME_defaults [] = { "...", "...", ... , 0 }; This variable is an array of strings, your default resources. Null-terminate the list. static XrmOptionDescRec YOURNAME_options[] = { { ... }, ... { 0,0,0,0 } } This variable describes your command-line options. Null-terminate the list. Finally , invoke the XSCREENSAVER_MODULE() macro to tie it all together. Additional caveats: - Make sure that all functions in your module are static (check this by running "nm -g" on the .o file). - Do not use global variables: all such info must be stored in the private `state' structure. - Do not use static function-local variables, either. Put it in `state'. Assume that there are N independent runs of this code going in the same address space at the same time: they must not affect each other. - Don't forget to write an XML file to describe the user interface of your screen saver module. See .../hacks/config/README for details. */ #define DEBUG_PAIR #include #include #include #include #include #include #include #ifdef __sgi # include /* for SgiUseSchemes() */ #endif /* __sgi */ #ifdef HAVE_XMU # ifndef VMS # include # else /* VMS */ # include # endif #else # include "xmu.h" #endif #include "screenhackI.h" #include "version.h" #include "vroot.h" #include "fps.h" #ifndef _XSCREENSAVER_VROOT_H_ # error Error! You have an old version of vroot.h! Check -I args. #endif /* _XSCREENSAVER_VROOT_H_ */ #ifndef isupper # define isupper(c) ((c) >= 'A' && (c) <= 'Z') #endif #ifndef _tolower # define _tolower(c) ((c) - 'A' + 'a') #endif /* This is defined by the SCREENHACK_MAIN() macro via screenhack.h. */ extern struct xscreensaver_function_table *xscreensaver_function_table; const char *progname; /* used by hacks in error messages */ const char *progclass; /* used by ../utils/resources.c */ Bool mono_p; /* used by hacks */ static XrmOptionDescRec default_options [] = { { "-root", ".root", XrmoptionNoArg, "True" }, { "-window", ".root", XrmoptionNoArg, "False" }, { "-mono", ".mono", XrmoptionNoArg, "True" }, { "-install", ".installColormap", XrmoptionNoArg, "True" }, { "-noinstall",".installColormap", XrmoptionNoArg, "False" }, { "-visual", ".visualID", XrmoptionSepArg, 0 }, { "-window-id", ".windowID", XrmoptionSepArg, 0 }, { "-fps", ".doFPS", XrmoptionNoArg, "True" }, { "-no-fps", ".doFPS", XrmoptionNoArg, "False" }, # ifdef DEBUG_PAIR { "-pair", ".pair", XrmoptionNoArg, "True" }, # endif /* DEBUG_PAIR */ { 0, 0, 0, 0 } }; static char *default_defaults[] = { ".root: false", "*geometry: 600x480", /* this should be .geometry, but nooooo... */ "*mono: false", "*installColormap: false", "*doFPS: false", "*visualID: default", "*windowID: ", "*desktopGrabber: xscreensaver-getimage %s", 0 }; static XrmOptionDescRec *merged_options; static int merged_options_size; static char **merged_defaults; static void merge_options (void) { struct xscreensaver_function_table *ft = xscreensaver_function_table; const XrmOptionDescRec *options = ft->options; const char * const *defaults = ft->defaults; const char *progclass = ft->progclass; int def_opts_size, opts_size; int def_defaults_size, defaults_size; for (def_opts_size = 0; default_options[def_opts_size].option; def_opts_size++) ; for (opts_size = 0; options[opts_size].option; opts_size++) ; merged_options_size = def_opts_size + opts_size; merged_options = (XrmOptionDescRec *) malloc ((merged_options_size + 1) * sizeof(*default_options)); memcpy (merged_options, default_options, (def_opts_size * sizeof(*default_options))); memcpy (merged_options + def_opts_size, options, ((opts_size + 1) * sizeof(*default_options))); for (def_defaults_size = 0; default_defaults[def_defaults_size]; def_defaults_size++) ; for (defaults_size = 0; defaults[defaults_size]; defaults_size++) ; merged_defaults = (char **) malloc ((def_defaults_size + defaults_size + 1) * sizeof (*defaults));; memcpy (merged_defaults, default_defaults, def_defaults_size * sizeof(*defaults)); memcpy (merged_defaults + def_defaults_size, defaults, (defaults_size + 1) * sizeof(*defaults)); /* This totally sucks. Xt should behave like this by default. If the string in `defaults' looks like ".foo", change that to "Progclass.foo". */ { char **s; for (s = merged_defaults; *s; s++) if (**s == '.') { const char *oldr = *s; char *newr = (char *) malloc(strlen(oldr) + strlen(progclass) + 3); strcpy (newr, progclass); strcat (newr, oldr); *s = newr; } else *s = strdup (*s); } } /* Make the X errors print out the name of this program, so we have some clue which one has a bug when they die under the screensaver. */ static int screenhack_ehandler (Display *dpy, XErrorEvent *error) { fprintf (stderr, "\nX error in %s:\n", progname); if (XmuPrintDefaultErrorMessage (dpy, error, stderr)) exit (-1); else fprintf (stderr, " (nonfatal.)\n"); return 0; } static Bool MapNotify_event_p (Display *dpy, XEvent *event, XPointer window) { return (event->xany.type == MapNotify && event->xvisibility.window == (Window) window); } static Atom XA_WM_PROTOCOLS, XA_WM_DELETE_WINDOW; /* Dead-trivial event handling: exits if "q" or "ESC" are typed. Exit if the WM_PROTOCOLS WM_DELETE_WINDOW ClientMessage is received. Returns False if the screen saver should now terminate. */ static Bool screenhack_handle_event_1 (Display *dpy, XEvent *event) { switch (event->xany.type) { case KeyPress: { KeySym keysym; char c = 0; XLookupString (&event->xkey, &c, 1, &keysym, 0); if (c == 'q' || c == 'Q' || c == 3 || /* ^C */ c == 27) /* ESC */ return False; /* exit */ else if (! (keysym >= XK_Shift_L && keysym <= XK_Hyper_R)) XBell (dpy, 0); /* beep for non-chord keys */ } break; case ButtonPress: XBell (dpy, 0); break; case ClientMessage: { if (event->xclient.message_type != XA_WM_PROTOCOLS) { char *s = XGetAtomName(dpy, event->xclient.message_type); if (!s) s = "(null)"; fprintf (stderr, "%s: unknown ClientMessage %s received!\n", progname, s); } else if (event->xclient.data.l[0] != XA_WM_DELETE_WINDOW) { char *s1 = XGetAtomName(dpy, event->xclient.message_type); char *s2 = XGetAtomName(dpy, event->xclient.data.l[0]); if (!s1) s1 = "(null)"; if (!s2) s2 = "(null)"; fprintf (stderr, "%s: unknown ClientMessage %s[%s] received!\n", progname, s1, s2); } else { return False; /* exit */ } } break; } return True; } static Visual * pick_visual (Screen *screen) { struct xscreensaver_function_table *ft = xscreensaver_function_table; if (ft->pick_visual_hook) { Visual *v = ft->pick_visual_hook (screen); if (v) return v; } return get_visual_resource (screen, "visualID", "VisualID", False); } /* Notice when the user has requested a different visual or colormap on a pre-existing window (e.g., "-root -visual truecolor" or "-window-id 0x2c00001 -install") and complain, since when drawing on an existing window, we have no choice about these things. */ static void visual_warning (Screen *screen, Window window, Visual *visual, Colormap cmap, Bool window_p) { struct xscreensaver_function_table *ft = xscreensaver_function_table; char *visual_string = get_string_resource (DisplayOfScreen (screen), "visualID", "VisualID"); Visual *desired_visual = pick_visual (screen); char win[100]; char why[100]; if (window == RootWindowOfScreen (screen)) strcpy (win, "root window"); else sprintf (win, "window 0x%lx", (unsigned long) window); if (window_p) sprintf (why, "-window-id 0x%lx", (unsigned long) window); else strcpy (why, "-root"); if (visual_string && *visual_string) { char *s; for (s = visual_string; *s; s++) if (isupper (*s)) *s = _tolower (*s); if (!strcmp (visual_string, "default") || !strcmp (visual_string, "default") || !strcmp (visual_string, "best")) /* don't warn about these, just silently DWIM. */ ; else if (visual != desired_visual) { fprintf (stderr, "%s: ignoring `-visual %s' because of `%s'.\n", progname, visual_string, why); fprintf (stderr, "%s: using %s's visual 0x%lx.\n", progname, win, XVisualIDFromVisual (visual)); } free (visual_string); } if (visual == DefaultVisualOfScreen (screen) && has_writable_cells (screen, visual) && get_boolean_resource (DisplayOfScreen (screen), "installColormap", "InstallColormap")) { fprintf (stderr, "%s: ignoring `-install' because of `%s'.\n", progname, why); fprintf (stderr, "%s: using %s's colormap 0x%lx.\n", progname, win, (unsigned long) cmap); } if (ft->validate_visual_hook) { if (! ft->validate_visual_hook (screen, win, visual)) exit (1); } } static void fix_fds (void) { /* Bad Things Happen if stdin, stdout, and stderr have been closed (as by the `sh incantation "attraction >&- 2>&-"). When you do that, the X connection gets allocated to one of these fds, and then some random library writes to stderr, and random bits get stuffed down the X pipe, causing "Xlib: sequence lost" errors. So, we cause the first three file descriptors to be open to /dev/null if they aren't open to something else already. This must be done before any other files are opened (or the closing of that other file will again free up one of the "magic" first three FDs.) We do this by opening /dev/null three times, and then closing those fds, *unless* any of them got allocated as #0, #1, or #2, in which case we leave them open. Gag. Really, this crap is technically required of *every* X program, if you want it to be robust in the face of "2>&-". */ int fd0 = open ("/dev/null", O_RDWR); int fd1 = open ("/dev/null", O_RDWR); int fd2 = open ("/dev/null", O_RDWR); if (fd0 > 2) close (fd0); if (fd1 > 2) close (fd1); if (fd2 > 2) close (fd2); } static Boolean screenhack_table_handle_events (Display *dpy, const struct xscreensaver_function_table *ft, Window window, void *closure #ifdef DEBUG_PAIR , Window window2, void *closure2 #endif ) { XtAppContext app = XtDisplayToApplicationContext (dpy); if (XtAppPending (app) & (XtIMTimer|XtIMAlternateInput)) XtAppProcessEvent (app, XtIMTimer|XtIMAlternateInput); while (XPending (dpy)) { XEvent event; XNextEvent (dpy, &event); if (event.xany.type == ConfigureNotify) { if (event.xany.window == window) ft->reshape_cb (dpy, window, closure, event.xconfigure.width, event.xconfigure.height); #ifdef DEBUG_PAIR if (event.xany.window == window2) ft->reshape_cb (dpy, window2, closure2, event.xconfigure.width, event.xconfigure.height); #endif } else if (event.xany.type == ClientMessage || (! (event.xany.window == window ? ft->event_cb (dpy, window, closure, &event) #ifdef DEBUG_PAIR : event.xany.window == window2 ? ft->event_cb (dpy, window2, closure2, &event) #endif : 0))) if (! screenhack_handle_event_1 (dpy, &event)) return False; if (XtAppPending (app) & (XtIMTimer|XtIMAlternateInput)) XtAppProcessEvent (app, XtIMTimer|XtIMAlternateInput); } return True; } static Boolean usleep_and_process_events (Display *dpy, const struct xscreensaver_function_table *ft, Window window, fps_state *fpst, void *closure, unsigned long delay #ifdef DEBUG_PAIR , Window window2, fps_state *fpst2, void *closure2, unsigned long delay2 #endif ) { do { unsigned long quantum = 100000; /* 1/10th second */ if (quantum > delay) quantum = delay; delay -= quantum; XSync (dpy, False); if (quantum > 0) { usleep (quantum); if (fpst) fps_slept (fpst, quantum); #ifdef DEBUG_PAIR if (fpst2) fps_slept (fpst2, quantum); #endif } if (! screenhack_table_handle_events (dpy, ft, window, closure #ifdef DEBUG_PAIR , window2, closure2 #endif )) return False; } while (delay > 0); return True; } static void screenhack_do_fps (Display *dpy, Window w, fps_state *fpst, void *closure) { fps_compute (fpst, 0); fps_draw (fpst); } static void run_screenhack_table (Display *dpy, Window window, # ifdef DEBUG_PAIR Window window2, # endif const struct xscreensaver_function_table *ft) { /* Kludge: even though the init_cb functions are declared to take 2 args, actually call them with 3, for the benefit of xlockmore_init() and xlockmore_setup(). */ void *(*init_cb) (Display *, Window, void *) = (void *(*) (Display *, Window, void *)) ft->init_cb; void (*fps_cb) (Display *, Window, fps_state *, void *) = ft->fps_cb; void *closure = init_cb (dpy, window, ft->setup_arg); fps_state *fpst = fps_init (dpy, window); #ifdef DEBUG_PAIR void *closure2 = 0; fps_state *fpst2 = 0; if (window2) closure2 = init_cb (dpy, window2, ft->setup_arg); if (window2) fpst2 = fps_init (dpy, window2); #endif if (! closure) /* if it returns nothing, it can't possibly be re-entrant. */ abort(); if (! fps_cb) fps_cb = screenhack_do_fps; while (1) { unsigned long delay = ft->draw_cb (dpy, window, closure); #ifdef DEBUG_PAIR unsigned long delay2 = 0; if (window2) delay2 = ft->draw_cb (dpy, window2, closure2); #endif if (fpst) fps_cb (dpy, window, fpst, closure); #ifdef DEBUG_PAIR if (fpst2) fps_cb (dpy, window, fpst2, closure); #endif if (! usleep_and_process_events (dpy, ft, window, fpst, closure, delay #ifdef DEBUG_PAIR , window2, fpst2, closure2, delay2 #endif )) break; } ft->free_cb (dpy, window, closure); if (fpst) fps_free (fpst); #ifdef DEBUG_PAIR if (window2) ft->free_cb (dpy, window2, closure2); if (window2) fps_free (fpst2); #endif } static Widget make_shell (Screen *screen, Widget toplevel, int width, int height) { Display *dpy = DisplayOfScreen (screen); Visual *visual = pick_visual (screen); Boolean def_visual_p = (toplevel && visual == DefaultVisualOfScreen (screen)); if (width <= 0) width = 600; if (height <= 0) height = 480; if (def_visual_p) { Window window; XtVaSetValues (toplevel, XtNmappedWhenManaged, False, XtNwidth, width, XtNheight, height, XtNinput, True, /* for WM_HINTS */ NULL); XtRealizeWidget (toplevel); window = XtWindow (toplevel); if (get_boolean_resource (dpy, "installColormap", "InstallColormap")) { Colormap cmap = XCreateColormap (dpy, window, DefaultVisualOfScreen (screen), AllocNone); XSetWindowColormap (dpy, window, cmap); } } else { unsigned int bg, bd; Widget new; Colormap cmap = XCreateColormap (dpy, VirtualRootWindowOfScreen(screen), visual, AllocNone); bg = get_pixel_resource (dpy, cmap, "background", "Background"); bd = get_pixel_resource (dpy, cmap, "borderColor", "Foreground"); new = XtVaAppCreateShell (progname, progclass, topLevelShellWidgetClass, dpy, XtNmappedWhenManaged, False, XtNvisual, visual, XtNdepth, visual_depth (screen, visual), XtNwidth, width, XtNheight, height, XtNcolormap, cmap, XtNbackground, (Pixel) bg, XtNborderColor, (Pixel) bd, XtNinput, True, /* for WM_HINTS */ NULL); if (!toplevel) /* kludge for the second window in -pair mode... */ XtVaSetValues (new, XtNx, 0, XtNy, 550, NULL); XtRealizeWidget (new); toplevel = new; } return toplevel; } static void init_window (Display *dpy, Widget toplevel, const char *title) { Window window; XWindowAttributes xgwa; XtPopup (toplevel, XtGrabNone); XtVaSetValues (toplevel, XtNtitle, title, NULL); /* Select KeyPress, and announce that we accept WM_DELETE_WINDOW. */ window = XtWindow (toplevel); XGetWindowAttributes (dpy, window, &xgwa); XSelectInput (dpy, window, (xgwa.your_event_mask | KeyPressMask | KeyReleaseMask | ButtonPressMask | ButtonReleaseMask)); XChangeProperty (dpy, window, XA_WM_PROTOCOLS, XA_ATOM, 32, PropModeReplace, (unsigned char *) &XA_WM_DELETE_WINDOW, 1); } int main (int argc, char **argv) { struct xscreensaver_function_table *ft = xscreensaver_function_table; XWindowAttributes xgwa; Widget toplevel; Display *dpy; Window window; # ifdef DEBUG_PAIR Window window2 = 0; Widget toplevel2 = 0; # endif XtAppContext app; Bool root_p; Window on_window = 0; XEvent event; Boolean dont_clear; char version[255]; fix_fds(); progname = argv[0]; /* reset later */ progclass = ft->progclass; if (ft->setup_cb) ft->setup_cb (ft, ft->setup_arg); merge_options (); #ifdef __sgi /* We have to do this on SGI to prevent the background color from being overridden by the current desktop color scheme (we'd like our backgrounds to be black, thanks.) This should be the same as setting the "*useSchemes: none" resource, but it's not -- if that resource is present in the `default_defaults' above, it doesn't work, though it does work when passed as an -xrm arg on the command line. So screw it, turn them off from C instead. */ SgiUseSchemes ("none"); #endif /* __sgi */ toplevel = XtAppInitialize (&app, progclass, merged_options, merged_options_size, &argc, argv, merged_defaults, 0, 0); dpy = XtDisplay (toplevel); XtGetApplicationNameAndClass (dpy, (char **) &progname, (char **) &progclass); /* half-assed way of avoiding buffer-overrun attacks. */ if (strlen (progname) >= 100) ((char *) progname)[100] = 0; XSetErrorHandler (screenhack_ehandler); XA_WM_PROTOCOLS = XInternAtom (dpy, "WM_PROTOCOLS", False); XA_WM_DELETE_WINDOW = XInternAtom (dpy, "WM_DELETE_WINDOW", False); { char *v = (char *) strdup(strchr(screensaver_id, ' ')); char *s1, *s2, *s3, *s4; s1 = (char *) strchr(v, ' '); s1++; s2 = (char *) strchr(s1, ' '); s3 = (char *) strchr(v, '('); s3++; s4 = (char *) strchr(s3, ')'); *s2 = 0; *s4 = 0; sprintf (version, "%s: from the XScreenSaver %s distribution (%s.)", progclass, s1, s3); free(v); } if (argc > 1) { const char *s; int i; int x = 18; int end = 78; Bool help_p = (!strcmp(argv[1], "-help") || !strcmp(argv[1], "--help")); fprintf (stderr, "%s\n", version); for (s = progclass; *s; s++) fprintf(stderr, " "); fprintf (stderr, " http://www.jwz.org/xscreensaver/\n\n"); if (!help_p) fprintf(stderr, "Unrecognised option: %s\n", argv[1]); fprintf (stderr, "Options include: "); for (i = 0; i < merged_options_size; i++) { char *sw = merged_options [i].option; Bool argp = (merged_options [i].argKind == XrmoptionSepArg); int size = strlen (sw) + (argp ? 6 : 0) + 2; if (x + size >= end) { fprintf (stderr, "\n\t\t "); x = 18; } x += size; fprintf (stderr, "%s", sw); if (argp) fprintf (stderr, " "); if (i != merged_options_size - 1) fprintf (stderr, ", "); } fprintf (stderr, ".\n"); #if 0 if (help_p) { fprintf (stderr, "\nResources:\n\n"); for (i = 0; i < merged_options_size; i++) { const char *opt = merged_options [i].option; const char *res = merged_options [i].specifier + 1; const char *val = merged_options [i].value; char *s = get_string_resource (dpy, (char *) res, (char *) res); if (s) { int L = strlen(s); while (L > 0 && (s[L-1] == ' ' || s[L-1] == '\t')) s[--L] = 0; } fprintf (stderr, " %-16s %-18s ", opt, res); if (merged_options [i].argKind == XrmoptionSepArg) { fprintf (stderr, "[%s]", (s ? s : "?")); } else { fprintf (stderr, "%s", (val ? val : "(null)")); if (val && s && !strcasecmp (val, s)) fprintf (stderr, " [default]"); } fprintf (stderr, "\n"); } fprintf (stderr, "\n"); } #endif exit (help_p ? 0 : 1); } { char **s; for (s = merged_defaults; *s; s++) free(*s); } free (merged_options); free (merged_defaults); merged_options = 0; merged_defaults = 0; dont_clear = get_boolean_resource (dpy, "dontClearRoot", "Boolean"); mono_p = get_boolean_resource (dpy, "mono", "Boolean"); if (CellsOfScreen (DefaultScreenOfDisplay (dpy)) <= 2) mono_p = True; root_p = get_boolean_resource (dpy, "root", "Boolean"); { char *s = get_string_resource (dpy, "windowID", "WindowID"); if (s && *s) on_window = get_integer_resource (dpy, "windowID", "WindowID"); if (s) free (s); } if (on_window) { window = (Window) on_window; XtDestroyWidget (toplevel); XGetWindowAttributes (dpy, window, &xgwa); visual_warning (xgwa.screen, window, xgwa.visual, xgwa.colormap, True); /* Select KeyPress and resize events on the external window. */ xgwa.your_event_mask |= KeyPressMask | StructureNotifyMask; XSelectInput (dpy, window, xgwa.your_event_mask); /* Select ButtonPress and ButtonRelease events on the external window, if no other app has already selected them (only one app can select ButtonPress at a time: BadAccess results.) */ if (! (xgwa.all_event_masks & (ButtonPressMask | ButtonReleaseMask))) XSelectInput (dpy, window, (xgwa.your_event_mask | ButtonPressMask | ButtonReleaseMask)); } else if (root_p) { window = VirtualRootWindowOfScreen (XtScreen (toplevel)); XtDestroyWidget (toplevel); XGetWindowAttributes (dpy, window, &xgwa); /* With RANDR, the root window can resize! */ XSelectInput (dpy, window, xgwa.your_event_mask | StructureNotifyMask); visual_warning (xgwa.screen, window, xgwa.visual, xgwa.colormap, False); } else { Widget new = make_shell (XtScreen (toplevel), toplevel, toplevel->core.width, toplevel->core.height); if (new != toplevel) { XtDestroyWidget (toplevel); toplevel = new; } init_window (dpy, toplevel, version); window = XtWindow (toplevel); XGetWindowAttributes (dpy, window, &xgwa); # ifdef DEBUG_PAIR if (get_boolean_resource (dpy, "pair", "Boolean")) { toplevel2 = make_shell (xgwa.screen, 0, toplevel->core.width, toplevel->core.height); init_window (dpy, toplevel2, version); window2 = XtWindow (toplevel2); } # endif /* DEBUG_PAIR */ } if (!dont_clear) { unsigned int bg = get_pixel_resource (dpy, xgwa.colormap, "background", "Background"); XSetWindowBackground (dpy, window, bg); XClearWindow (dpy, window); # ifdef DEBUG_PAIR if (window2) { XSetWindowBackground (dpy, window2, bg); XClearWindow (dpy, window2); } # endif } if (!root_p && !on_window) /* wait for it to be mapped */ XIfEvent (dpy, &event, MapNotify_event_p, (XPointer) window); XSync (dpy, False); /* This is the one and only place that the random-number generator is seeded in any screenhack. You do not need to seed the RNG again, it is done for you before your code is invoked. */ # undef ya_rand_init ya_rand_init (0); run_screenhack_table (dpy, window, # ifdef DEBUG_PAIR window2, # endif ft); XtDestroyWidget (toplevel); XtDestroyApplicationContext (app); return 0; } unicode-screensaver-0.5.1/hacks/fpsI.h0000644000175000017500000000202212523334521014541 00000000000000/* fps, Copyright (c) 2001-2008 Jamie Zawinski * Draw a frames-per-second display (Xlib and OpenGL). * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided that * the above copyright notice appear in all copies and that both that * copyright notice and this permission notice appear in supporting * documentation. No representations are made about the suitability of this * software for any purpose. It is provided "as is" without express or * implied warranty. */ #ifndef __XSCREENSAVER_FPSI_H__ # define __XSCREENSAVER_FPSI_H__ #include "fps.h" struct fps_state { Display *dpy; Window window; int x, y; XFontStruct *font; unsigned long font_dlist; /* for glx/fps-gl.c */ Bool clear_p; char string[1024]; GC draw_gc, erase_gc; int last_ifps; double last_fps; int frame_count; unsigned long slept; struct timeval prev_frame_end, this_frame_end; }; #endif /* __XSCREENSAVER_FPSI_H__ */ unicode-screensaver-0.5.1/hacks/fps.h0000644000175000017500000000201612523334521014433 00000000000000/* fps, Copyright (c) 2001-2008 Jamie Zawinski * Draw a frames-per-second display (Xlib and OpenGL). * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided that * the above copyright notice appear in all copies and that both that * copyright notice and this permission notice appear in supporting * documentation. No representations are made about the suitability of this * software for any purpose. It is provided "as is" without express or * implied warranty. */ #ifndef __XSCREENSAVER_FPS_H__ # define __XSCREENSAVER_FPS_H__ #ifdef HAVE_CONFIG_H # include "config.h" #endif /* HAVE_CONFIG_H */ typedef struct fps_state fps_state; extern fps_state *fps_init (Display *, Window); extern void fps_free (fps_state *); extern void fps_slept (fps_state *, unsigned long usecs); extern double fps_compute (fps_state *, unsigned long polys); extern void fps_draw (fps_state *); #endif /* __XSCREENSAVER_FPS_H__ */ unicode-screensaver-0.5.1/hacks/fps.c0000644000175000017500000001463212523334521014435 00000000000000/* fps, Copyright (c) 2001-2008 Jamie Zawinski * Draw a frames-per-second display (Xlib and OpenGL). * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided that * the above copyright notice appear in all copies and that both that * copyright notice and this permission notice appear in supporting * documentation. No representations are made about the suitability of this * software for any purpose. It is provided "as is" without express or * implied warranty. */ #ifdef HAVE_CONFIG_H # include "config.h" #endif /* HAVE_CONFIG_H */ #include "screenhackI.h" #include "fpsI.h" fps_state * fps_init (Display *dpy, Window window) { fps_state *st; const char *font; XFontStruct *f; int first, last; if (! get_boolean_resource (dpy, "doFPS", "DoFPS")) return 0; st = (fps_state *) calloc (1, sizeof(*st)); st->dpy = dpy; st->window = window; st->clear_p = get_boolean_resource (dpy, "fpsSolid", "FPSSolid"); font = get_string_resource (dpy, "fpsFont", "Font"); if (!font) font = "-*-courier-bold-r-normal-*-180-*"; f = XLoadQueryFont (dpy, font); if (!f) f = XLoadQueryFont (dpy, "fixed"); first = f->min_char_or_byte2; last = f->max_char_or_byte2; { XWindowAttributes xgwa; XGCValues gcv; XGetWindowAttributes (dpy, window, &xgwa); gcv.font = f->fid; gcv.foreground = get_pixel_resource (st->dpy, xgwa.colormap, "foreground", "Foreground"); st->draw_gc = XCreateGC (dpy, window, GCFont|GCForeground, &gcv); gcv.foreground = get_pixel_resource (st->dpy, xgwa.colormap, "background", "Background"); st->erase_gc = XCreateGC (dpy, window, GCFont|GCForeground, &gcv); } st->font = f; st->x = 10; st->y = 10; if (get_boolean_resource (dpy, "fpsTop", "FPSTop")) st->y = - (st->font->ascent + st->font->descent + 10); strcpy (st->string, "FPS: ... "); return st; } void fps_free (fps_state *st) { if (st->draw_gc) XFreeGC (st->dpy, st->draw_gc); if (st->erase_gc) XFreeGC (st->dpy, st->erase_gc); if (st->font) XFreeFont (st->dpy, st->font); free (st); } void fps_slept (fps_state *st, unsigned long usecs) { st->slept += usecs; } double fps_compute (fps_state *st, unsigned long polys) { if (! st) return 0; /* too early? */ /* Every N frames (where N is approximately one second's worth of frames) check the wall clock. We do this because checking the wall clock is a slow operation. */ if (st->frame_count++ >= st->last_ifps) { # ifdef GETTIMEOFDAY_TWO_ARGS struct timezone tzp; gettimeofday(&st->this_frame_end, &tzp); # else gettimeofday(&st->this_frame_end); # endif if (st->prev_frame_end.tv_sec == 0) st->prev_frame_end = st->this_frame_end; } /* If we've probed the wall-clock time, regenerate the string. */ if (st->this_frame_end.tv_sec != st->prev_frame_end.tv_sec) { double uprev_frame_end = (st->prev_frame_end.tv_sec + ((double) st->prev_frame_end.tv_usec * 0.000001)); double uthis_frame_end = (st->this_frame_end.tv_sec + ((double) st->this_frame_end.tv_usec * 0.000001)); double fps = st->frame_count / (uthis_frame_end - uprev_frame_end); double idle = (((double) st->slept * 0.000001) / (uthis_frame_end - uprev_frame_end)); double load = 100 * (1 - idle); if (load < 0) load = 0; /* well that's obviously nonsense... */ st->prev_frame_end = st->this_frame_end; st->frame_count = 0; st->slept = 0; st->last_ifps = fps; st->last_fps = fps; sprintf (st->string, (polys ? "FPS: %.1f \nLoad: %.1f%% " : "FPS: %.1f \nLoad: %.1f%% "), fps, load); if (polys > 0) { const char *s = ""; # if 0 if (polys >= (1024 * 1024)) polys >>= 20, s = "M"; else if (polys >= 2048) polys >>= 10, s = "K"; # endif strcat (st->string, "\nPolys: "); if (polys >= 1000000) sprintf (st->string + strlen(st->string), "%lu,%03lu,%03lu%s ", (polys / 1000000), ((polys / 1000) % 1000), (polys % 1000), s); else if (polys >= 1000) sprintf (st->string + strlen(st->string), "%lu,%03lu%s ", (polys / 1000), (polys % 1000), s); else sprintf (st->string + strlen(st->string), "%lu%s ", polys, s); } } return st->last_fps; } /* Width (and optionally height) of the string in pixels. */ static int string_width (XFontStruct *f, const char *c, int *height_ret) { int x = 0; int max_w = 0; int h = f->ascent + f->descent; while (*c) { int cc = *((unsigned char *) c); if (*c == '\n') { if (x > max_w) max_w = x; x = 0; h += f->ascent + f->descent; } else x += (f->per_char ? f->per_char[cc-f->min_char_or_byte2].width : f->min_bounds.rbearing); c++; } if (x > max_w) max_w = x; if (height_ret) *height_ret = h; return max_w; } /* This function is used only in Xlib mode. For GL mode, see glx/fps-glx.c. */ void fps_draw (fps_state *st) { XWindowAttributes xgwa; const char *string = st->string; const char *s; int x = st->x; int y = st->y; int lines = 1; int lh = st->font->ascent + st->font->descent; XGetWindowAttributes (st->dpy, st->window, &xgwa); for (s = string; *s; s++) if (*s == '\n') lines++; if (y < 0) y = -y + (lines-1) * lh; else y = xgwa.height - y; y -= lh * (lines-1) + st->font->descent; /* clear the background */ if (st->clear_p) { int w, h; w = string_width (st->font, string, &h); XFillRectangle (st->dpy, st->window, st->erase_gc, x - st->font->descent, y - lh, w + 2*st->font->descent, h + 2*st->font->descent); } /* draw the text */ while (lines) { s = strchr (string, '\n'); if (! s) s = string + strlen(string); XDrawString (st->dpy, st->window, st->draw_gc, x, y, string, s - string); string = s; string++; lines--; y += lh; } } unicode-screensaver-0.5.1/hacks/screenhack.h0000644000175000017500000000366712523334521015766 00000000000000/* xscreensaver, Copyright (c) 1992-2008 Jamie Zawinski * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided that * the above copyright notice appear in all copies and that both that * copyright notice and this permission notice appear in supporting * documentation. No representations are made about the suitability of this * software for any purpose. It is provided "as is" without express or * implied warranty. */ #ifndef __SCREENHACK_H__ #define __SCREENHACK_H__ #include "screenhackI.h" /* In an Xlib world, we define two global symbols here: a struct in `MODULENAME_xscreensaver_function_table', and a pointer to that in `xscreensaver_function_table'. In a Cocoa world, we only define the prefixed symbol; the un-prefixed symbol does not exist. */ #ifdef HAVE_COCOA # define XSCREENSAVER_LINK(NAME) #else # define XSCREENSAVER_LINK(NAME) \ struct xscreensaver_function_table *xscreensaver_function_table = &NAME; #endif #if defined(HAVE_COCOA) && !defined(__XLOCKMORE_INTERNAL_H__) /* this is one enormous kludge... */ # undef ya_rand_init static void xscreensaver_common_setup(struct xscreensaver_function_table *xsft, void *a) { ya_rand_init(0); } #else # define xscreensaver_common_setup 0 #endif #define XSCREENSAVER_MODULE_2(CLASS,NAME,PREFIX) \ struct xscreensaver_function_table \ NAME ## _xscreensaver_function_table = { \ CLASS, \ PREFIX ## _defaults, \ PREFIX ## _options, \ xscreensaver_common_setup, 0, \ PREFIX ## _init, \ PREFIX ## _draw, \ PREFIX ## _reshape, \ PREFIX ## _event, \ PREFIX ## _free, \ 0, 0, 0 }; \ XSCREENSAVER_LINK (NAME ## _xscreensaver_function_table) #define XSCREENSAVER_MODULE(CLASS,PREFIX) \ XSCREENSAVER_MODULE_2(CLASS,PREFIX,PREFIX) #endif /* __SCREENHACK_H__ */ unicode-screensaver-0.5.1/depcomp0000755000175000017500000005601713306043307013767 00000000000000#! /bin/sh # depcomp - compile a program generating dependencies as side-effects scriptversion=2016-01-11.22; # UTC # Copyright (C) 1999-2017 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2, or (at your option) # any later version. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # You should have received a copy of the GNU General Public License # along with this program. If not, see . # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. # Originally written by Alexandre Oliva . case $1 in '') echo "$0: No command. Try '$0 --help' for more information." 1>&2 exit 1; ;; -h | --h*) cat <<\EOF Usage: depcomp [--help] [--version] PROGRAM [ARGS] Run PROGRAMS ARGS to compile a file, generating dependencies as side-effects. Environment variables: depmode Dependency tracking mode. source Source file read by 'PROGRAMS ARGS'. object Object file output by 'PROGRAMS ARGS'. DEPDIR directory where to store dependencies. depfile Dependency file to output. tmpdepfile Temporary file to use when outputting dependencies. libtool Whether libtool is used (yes/no). Report bugs to . EOF exit $? ;; -v | --v*) echo "depcomp $scriptversion" exit $? ;; esac # Get the directory component of the given path, and save it in the # global variables '$dir'. Note that this directory component will # be either empty or ending with a '/' character. This is deliberate. set_dir_from () { case $1 in */*) dir=`echo "$1" | sed -e 's|/[^/]*$|/|'`;; *) dir=;; esac } # Get the suffix-stripped basename of the given path, and save it the # global variable '$base'. set_base_from () { base=`echo "$1" | sed -e 's|^.*/||' -e 's/\.[^.]*$//'` } # If no dependency file was actually created by the compiler invocation, # we still have to create a dummy depfile, to avoid errors with the # Makefile "include basename.Plo" scheme. make_dummy_depfile () { echo "#dummy" > "$depfile" } # Factor out some common post-processing of the generated depfile. # Requires the auxiliary global variable '$tmpdepfile' to be set. aix_post_process_depfile () { # If the compiler actually managed to produce a dependency file, # post-process it. if test -f "$tmpdepfile"; then # Each line is of the form 'foo.o: dependency.h'. # Do two passes, one to just change these to # $object: dependency.h # and one to simply output # dependency.h: # which is needed to avoid the deleted-header problem. { sed -e "s,^.*\.[$lower]*:,$object:," < "$tmpdepfile" sed -e "s,^.*\.[$lower]*:[$tab ]*,," -e 's,$,:,' < "$tmpdepfile" } > "$depfile" rm -f "$tmpdepfile" else make_dummy_depfile fi } # A tabulation character. tab=' ' # A newline character. nl=' ' # Character ranges might be problematic outside the C locale. # These definitions help. upper=ABCDEFGHIJKLMNOPQRSTUVWXYZ lower=abcdefghijklmnopqrstuvwxyz digits=0123456789 alpha=${upper}${lower} if test -z "$depmode" || test -z "$source" || test -z "$object"; then echo "depcomp: Variables source, object and depmode must be set" 1>&2 exit 1 fi # Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po. depfile=${depfile-`echo "$object" | sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`} tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`} rm -f "$tmpdepfile" # Avoid interferences from the environment. gccflag= dashmflag= # Some modes work just like other modes, but use different flags. We # parameterize here, but still list the modes in the big case below, # to make depend.m4 easier to write. Note that we *cannot* use a case # here, because this file can only contain one case statement. if test "$depmode" = hp; then # HP compiler uses -M and no extra arg. gccflag=-M depmode=gcc fi if test "$depmode" = dashXmstdout; then # This is just like dashmstdout with a different argument. dashmflag=-xM depmode=dashmstdout fi cygpath_u="cygpath -u -f -" if test "$depmode" = msvcmsys; then # This is just like msvisualcpp but w/o cygpath translation. # Just convert the backslash-escaped backslashes to single forward # slashes to satisfy depend.m4 cygpath_u='sed s,\\\\,/,g' depmode=msvisualcpp fi if test "$depmode" = msvc7msys; then # This is just like msvc7 but w/o cygpath translation. # Just convert the backslash-escaped backslashes to single forward # slashes to satisfy depend.m4 cygpath_u='sed s,\\\\,/,g' depmode=msvc7 fi if test "$depmode" = xlc; then # IBM C/C++ Compilers xlc/xlC can output gcc-like dependency information. gccflag=-qmakedep=gcc,-MF depmode=gcc fi case "$depmode" in gcc3) ## gcc 3 implements dependency tracking that does exactly what ## we want. Yay! Note: for some reason libtool 1.4 doesn't like ## it if -MD -MP comes after the -MF stuff. Hmm. ## Unfortunately, FreeBSD c89 acceptance of flags depends upon ## the command line argument order; so add the flags where they ## appear in depend2.am. Note that the slowdown incurred here ## affects only configure: in makefiles, %FASTDEP% shortcuts this. for arg do case $arg in -c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;; *) set fnord "$@" "$arg" ;; esac shift # fnord shift # $arg done "$@" stat=$? if test $stat -ne 0; then rm -f "$tmpdepfile" exit $stat fi mv "$tmpdepfile" "$depfile" ;; gcc) ## Note that this doesn't just cater to obsosete pre-3.x GCC compilers. ## but also to in-use compilers like IMB xlc/xlC and the HP C compiler. ## (see the conditional assignment to $gccflag above). ## There are various ways to get dependency output from gcc. Here's ## why we pick this rather obscure method: ## - Don't want to use -MD because we'd like the dependencies to end ## up in a subdir. Having to rename by hand is ugly. ## (We might end up doing this anyway to support other compilers.) ## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like ## -MM, not -M (despite what the docs say). Also, it might not be ## supported by the other compilers which use the 'gcc' depmode. ## - Using -M directly means running the compiler twice (even worse ## than renaming). if test -z "$gccflag"; then gccflag=-MD, fi "$@" -Wp,"$gccflag$tmpdepfile" stat=$? if test $stat -ne 0; then rm -f "$tmpdepfile" exit $stat fi rm -f "$depfile" echo "$object : \\" > "$depfile" # The second -e expression handles DOS-style file names with drive # letters. sed -e 's/^[^:]*: / /' \ -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile" ## This next piece of magic avoids the "deleted header file" problem. ## The problem is that when a header file which appears in a .P file ## is deleted, the dependency causes make to die (because there is ## typically no way to rebuild the header). We avoid this by adding ## dummy dependencies for each header file. Too bad gcc doesn't do ## this for us directly. ## Some versions of gcc put a space before the ':'. On the theory ## that the space means something, we add a space to the output as ## well. hp depmode also adds that space, but also prefixes the VPATH ## to the object. Take care to not repeat it in the output. ## Some versions of the HPUX 10.20 sed can't process this invocation ## correctly. Breaking it into two sed invocations is a workaround. tr ' ' "$nl" < "$tmpdepfile" \ | sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \ | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; hp) # This case exists only to let depend.m4 do its work. It works by # looking at the text of this script. This case will never be run, # since it is checked for above. exit 1 ;; sgi) if test "$libtool" = yes; then "$@" "-Wp,-MDupdate,$tmpdepfile" else "$@" -MDupdate "$tmpdepfile" fi stat=$? if test $stat -ne 0; then rm -f "$tmpdepfile" exit $stat fi rm -f "$depfile" if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files echo "$object : \\" > "$depfile" # Clip off the initial element (the dependent). Don't try to be # clever and replace this with sed code, as IRIX sed won't handle # lines with more than a fixed number of characters (4096 in # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines; # the IRIX cc adds comments like '#:fec' to the end of the # dependency line. tr ' ' "$nl" < "$tmpdepfile" \ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' \ | tr "$nl" ' ' >> "$depfile" echo >> "$depfile" # The second pass generates a dummy entry for each header file. tr ' ' "$nl" < "$tmpdepfile" \ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \ >> "$depfile" else make_dummy_depfile fi rm -f "$tmpdepfile" ;; xlc) # This case exists only to let depend.m4 do its work. It works by # looking at the text of this script. This case will never be run, # since it is checked for above. exit 1 ;; aix) # The C for AIX Compiler uses -M and outputs the dependencies # in a .u file. In older versions, this file always lives in the # current directory. Also, the AIX compiler puts '$object:' at the # start of each line; $object doesn't have directory information. # Version 6 uses the directory in both cases. set_dir_from "$object" set_base_from "$object" if test "$libtool" = yes; then tmpdepfile1=$dir$base.u tmpdepfile2=$base.u tmpdepfile3=$dir.libs/$base.u "$@" -Wc,-M else tmpdepfile1=$dir$base.u tmpdepfile2=$dir$base.u tmpdepfile3=$dir$base.u "$@" -M fi stat=$? if test $stat -ne 0; then rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" exit $stat fi for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" do test -f "$tmpdepfile" && break done aix_post_process_depfile ;; tcc) # tcc (Tiny C Compiler) understand '-MD -MF file' since version 0.9.26 # FIXME: That version still under development at the moment of writing. # Make that this statement remains true also for stable, released # versions. # It will wrap lines (doesn't matter whether long or short) with a # trailing '\', as in: # # foo.o : \ # foo.c \ # foo.h \ # # It will put a trailing '\' even on the last line, and will use leading # spaces rather than leading tabs (at least since its commit 0394caf7 # "Emit spaces for -MD"). "$@" -MD -MF "$tmpdepfile" stat=$? if test $stat -ne 0; then rm -f "$tmpdepfile" exit $stat fi rm -f "$depfile" # Each non-empty line is of the form 'foo.o : \' or ' dep.h \'. # We have to change lines of the first kind to '$object: \'. sed -e "s|.*:|$object :|" < "$tmpdepfile" > "$depfile" # And for each line of the second kind, we have to emit a 'dep.h:' # dummy dependency, to avoid the deleted-header problem. sed -n -e 's|^ *\(.*\) *\\$|\1:|p' < "$tmpdepfile" >> "$depfile" rm -f "$tmpdepfile" ;; ## The order of this option in the case statement is important, since the ## shell code in configure will try each of these formats in the order ## listed in this file. A plain '-MD' option would be understood by many ## compilers, so we must ensure this comes after the gcc and icc options. pgcc) # Portland's C compiler understands '-MD'. # Will always output deps to 'file.d' where file is the root name of the # source file under compilation, even if file resides in a subdirectory. # The object file name does not affect the name of the '.d' file. # pgcc 10.2 will output # foo.o: sub/foo.c sub/foo.h # and will wrap long lines using '\' : # foo.o: sub/foo.c ... \ # sub/foo.h ... \ # ... set_dir_from "$object" # Use the source, not the object, to determine the base name, since # that's sadly what pgcc will do too. set_base_from "$source" tmpdepfile=$base.d # For projects that build the same source file twice into different object # files, the pgcc approach of using the *source* file root name can cause # problems in parallel builds. Use a locking strategy to avoid stomping on # the same $tmpdepfile. lockdir=$base.d-lock trap " echo '$0: caught signal, cleaning up...' >&2 rmdir '$lockdir' exit 1 " 1 2 13 15 numtries=100 i=$numtries while test $i -gt 0; do # mkdir is a portable test-and-set. if mkdir "$lockdir" 2>/dev/null; then # This process acquired the lock. "$@" -MD stat=$? # Release the lock. rmdir "$lockdir" break else # If the lock is being held by a different process, wait # until the winning process is done or we timeout. while test -d "$lockdir" && test $i -gt 0; do sleep 1 i=`expr $i - 1` done fi i=`expr $i - 1` done trap - 1 2 13 15 if test $i -le 0; then echo "$0: failed to acquire lock after $numtries attempts" >&2 echo "$0: check lockdir '$lockdir'" >&2 exit 1 fi if test $stat -ne 0; then rm -f "$tmpdepfile" exit $stat fi rm -f "$depfile" # Each line is of the form `foo.o: dependent.h', # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'. # Do two passes, one to just change these to # `$object: dependent.h' and one to simply `dependent.h:'. sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile" # Some versions of the HPUX 10.20 sed can't process this invocation # correctly. Breaking it into two sed invocations is a workaround. sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" \ | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; hp2) # The "hp" stanza above does not work with aCC (C++) and HP's ia64 # compilers, which have integrated preprocessors. The correct option # to use with these is +Maked; it writes dependencies to a file named # 'foo.d', which lands next to the object file, wherever that # happens to be. # Much of this is similar to the tru64 case; see comments there. set_dir_from "$object" set_base_from "$object" if test "$libtool" = yes; then tmpdepfile1=$dir$base.d tmpdepfile2=$dir.libs/$base.d "$@" -Wc,+Maked else tmpdepfile1=$dir$base.d tmpdepfile2=$dir$base.d "$@" +Maked fi stat=$? if test $stat -ne 0; then rm -f "$tmpdepfile1" "$tmpdepfile2" exit $stat fi for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" do test -f "$tmpdepfile" && break done if test -f "$tmpdepfile"; then sed -e "s,^.*\.[$lower]*:,$object:," "$tmpdepfile" > "$depfile" # Add 'dependent.h:' lines. sed -ne '2,${ s/^ *// s/ \\*$// s/$/:/ p }' "$tmpdepfile" >> "$depfile" else make_dummy_depfile fi rm -f "$tmpdepfile" "$tmpdepfile2" ;; tru64) # The Tru64 compiler uses -MD to generate dependencies as a side # effect. 'cc -MD -o foo.o ...' puts the dependencies into 'foo.o.d'. # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put # dependencies in 'foo.d' instead, so we check for that too. # Subdirectories are respected. set_dir_from "$object" set_base_from "$object" if test "$libtool" = yes; then # Libtool generates 2 separate objects for the 2 libraries. These # two compilations output dependencies in $dir.libs/$base.o.d and # in $dir$base.o.d. We have to check for both files, because # one of the two compilations can be disabled. We should prefer # $dir$base.o.d over $dir.libs/$base.o.d because the latter is # automatically cleaned when .libs/ is deleted, while ignoring # the former would cause a distcleancheck panic. tmpdepfile1=$dir$base.o.d # libtool 1.5 tmpdepfile2=$dir.libs/$base.o.d # Likewise. tmpdepfile3=$dir.libs/$base.d # Compaq CCC V6.2-504 "$@" -Wc,-MD else tmpdepfile1=$dir$base.d tmpdepfile2=$dir$base.d tmpdepfile3=$dir$base.d "$@" -MD fi stat=$? if test $stat -ne 0; then rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" exit $stat fi for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" do test -f "$tmpdepfile" && break done # Same post-processing that is required for AIX mode. aix_post_process_depfile ;; msvc7) if test "$libtool" = yes; then showIncludes=-Wc,-showIncludes else showIncludes=-showIncludes fi "$@" $showIncludes > "$tmpdepfile" stat=$? grep -v '^Note: including file: ' "$tmpdepfile" if test $stat -ne 0; then rm -f "$tmpdepfile" exit $stat fi rm -f "$depfile" echo "$object : \\" > "$depfile" # The first sed program below extracts the file names and escapes # backslashes for cygpath. The second sed program outputs the file # name when reading, but also accumulates all include files in the # hold buffer in order to output them again at the end. This only # works with sed implementations that can handle large buffers. sed < "$tmpdepfile" -n ' /^Note: including file: *\(.*\)/ { s//\1/ s/\\/\\\\/g p }' | $cygpath_u | sort -u | sed -n ' s/ /\\ /g s/\(.*\)/'"$tab"'\1 \\/p s/.\(.*\) \\/\1:/ H $ { s/.*/'"$tab"'/ G p }' >> "$depfile" echo >> "$depfile" # make sure the fragment doesn't end with a backslash rm -f "$tmpdepfile" ;; msvc7msys) # This case exists only to let depend.m4 do its work. It works by # looking at the text of this script. This case will never be run, # since it is checked for above. exit 1 ;; #nosideeffect) # This comment above is used by automake to tell side-effect # dependency tracking mechanisms from slower ones. dashmstdout) # Important note: in order to support this mode, a compiler *must* # always write the preprocessed file to stdout, regardless of -o. "$@" || exit $? # Remove the call to Libtool. if test "$libtool" = yes; then while test "X$1" != 'X--mode=compile'; do shift done shift fi # Remove '-o $object'. IFS=" " for arg do case $arg in -o) shift ;; $object) shift ;; *) set fnord "$@" "$arg" shift # fnord shift # $arg ;; esac done test -z "$dashmflag" && dashmflag=-M # Require at least two characters before searching for ':' # in the target name. This is to cope with DOS-style filenames: # a dependency such as 'c:/foo/bar' could be seen as target 'c' otherwise. "$@" $dashmflag | sed "s|^[$tab ]*[^:$tab ][^:][^:]*:[$tab ]*|$object: |" > "$tmpdepfile" rm -f "$depfile" cat < "$tmpdepfile" > "$depfile" # Some versions of the HPUX 10.20 sed can't process this sed invocation # correctly. Breaking it into two sed invocations is a workaround. tr ' ' "$nl" < "$tmpdepfile" \ | sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \ | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; dashXmstdout) # This case only exists to satisfy depend.m4. It is never actually # run, as this mode is specially recognized in the preamble. exit 1 ;; makedepend) "$@" || exit $? # Remove any Libtool call if test "$libtool" = yes; then while test "X$1" != 'X--mode=compile'; do shift done shift fi # X makedepend shift cleared=no eat=no for arg do case $cleared in no) set ""; shift cleared=yes ;; esac if test $eat = yes; then eat=no continue fi case "$arg" in -D*|-I*) set fnord "$@" "$arg"; shift ;; # Strip any option that makedepend may not understand. Remove # the object too, otherwise makedepend will parse it as a source file. -arch) eat=yes ;; -*|$object) ;; *) set fnord "$@" "$arg"; shift ;; esac done obj_suffix=`echo "$object" | sed 's/^.*\././'` touch "$tmpdepfile" ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@" rm -f "$depfile" # makedepend may prepend the VPATH from the source file name to the object. # No need to regex-escape $object, excess matching of '.' is harmless. sed "s|^.*\($object *:\)|\1|" "$tmpdepfile" > "$depfile" # Some versions of the HPUX 10.20 sed can't process the last invocation # correctly. Breaking it into two sed invocations is a workaround. sed '1,2d' "$tmpdepfile" \ | tr ' ' "$nl" \ | sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \ | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" "$tmpdepfile".bak ;; cpp) # Important note: in order to support this mode, a compiler *must* # always write the preprocessed file to stdout. "$@" || exit $? # Remove the call to Libtool. if test "$libtool" = yes; then while test "X$1" != 'X--mode=compile'; do shift done shift fi # Remove '-o $object'. IFS=" " for arg do case $arg in -o) shift ;; $object) shift ;; *) set fnord "$@" "$arg" shift # fnord shift # $arg ;; esac done "$@" -E \ | sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \ -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \ | sed '$ s: \\$::' > "$tmpdepfile" rm -f "$depfile" echo "$object : \\" > "$depfile" cat < "$tmpdepfile" >> "$depfile" sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; msvisualcpp) # Important note: in order to support this mode, a compiler *must* # always write the preprocessed file to stdout. "$@" || exit $? # Remove the call to Libtool. if test "$libtool" = yes; then while test "X$1" != 'X--mode=compile'; do shift done shift fi IFS=" " for arg do case "$arg" in -o) shift ;; $object) shift ;; "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI") set fnord "$@" shift shift ;; *) set fnord "$@" "$arg" shift shift ;; esac done "$@" -E 2>/dev/null | sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile" rm -f "$depfile" echo "$object : \\" > "$depfile" sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::'"$tab"'\1 \\:p' >> "$depfile" echo "$tab" >> "$depfile" sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile" rm -f "$tmpdepfile" ;; msvcmsys) # This case exists only to let depend.m4 do its work. It works by # looking at the text of this script. This case will never be run, # since it is checked for above. exit 1 ;; none) exec "$@" ;; *) echo "Unknown depmode $depmode" 1>&2 exit 1 ;; esac exit 0 # Local Variables: # mode: shell-script # sh-indentation: 2 # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-time-zone: "UTC0" # time-stamp-end: "; # UTC" # End: unicode-screensaver-0.5.1/unicode.c0000644000175000017500000001153212610253455014201 00000000000000/* unicode (c) 2006,2009 * Joachim Breitner * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided that * the above copyright notice appear in all copies and that both that * copyright notice and this permission notice appear in supporting * documentation. No representations are made about the suitability of this * software for any purpose. It is provided "as is" without express or * implied warranty. * */ #include #include "unicode-names.h" #include "screenhack.h" #define NUM_FONTS 3 struct unicode_state { Bool blank; XftFont* fonts[NUM_FONTS]; XftFont* tfont; XftDraw* draw; XftColor font_color; XColor bg_color; unsigned delay; }; static void * unicode_init (Display *dpy, Window window) { struct unicode_state *state = malloc(sizeof(struct unicode_state)); Colormap cmap; XWindowAttributes xgwa; XColor color; XRenderColor font_color; char *extra; XGetWindowAttributes (dpy, window, &xgwa); state->blank = True; cmap = xgwa.colormap; state->fonts[0] = XftFontOpen(dpy, 0, XFT_FAMILY, XftTypeString, "Open Symbol", XFT_PIXEL_SIZE, XftTypeInteger, xgwa.height-100, NULL ); state->fonts[1] = XftFontOpen(dpy, 0, XFT_FAMILY, XftTypeString, "FreeSans", XFT_PIXEL_SIZE, XftTypeInteger, xgwa.height-100, NULL ); extra = get_string_resource(dpy, "font", "Font"); state->fonts[2] = extra ? XftFontOpen(dpy, 0, XFT_FAMILY, XftTypeString, extra, XFT_PIXEL_SIZE, XftTypeInteger, xgwa.height-100, NULL ) : NULL; state->tfont = XftFontOpen(dpy, 0, XFT_FAMILY, XftTypeString, "FreeSans", XFT_PIXEL_SIZE, XftTypeInteger, 40, NULL ); state->draw = XftDrawCreate(dpy, window, xgwa.visual, cmap); state->bg_color.pixel = get_pixel_resource(dpy, cmap, "background", "Background"); XQueryColor(dpy, cmap, &state->bg_color); color.pixel = get_pixel_resource(dpy, cmap, "foreground", "Foreground"); XQueryColor(dpy, cmap, &color); state->delay = get_seconds_resource(dpy, "delay", "Delay")*1000*1000; font_color.red = color.red; font_color.green = color.green; font_color.blue = color.blue; font_color.alpha = 0xFFFF; XftColorAllocValue(dpy, xgwa.visual, cmap, &font_color, &state->font_color); XSetWindowBackground(dpy, window, state->bg_color.pixel); XClearWindow (dpy, window); return state; } static unsigned long unicode_draw (Display *dpy, Window win, void *void_state) { XGlyphInfo extents; FcChar32 pick; char name[100]; int font; int i; struct unicode_state *state = (struct unicode_state *)void_state; unsigned long unicode_names_length = (sizeof(unicode_names)/sizeof(unicode_names[0])); const UnicodeName* nameEntry; if (state->blank) { XWindowAttributes xgwa; XGetWindowAttributes (dpy, win, &xgwa); /* Find a unicode character that is contained in one of the fonts We try 100 random points before sleeping, to avoid an endless cycle */ for (i = 0; i < 100; i++) { nameEntry = &unicode_names[random() % unicode_names_length]; pick = nameEntry->index; /* printf("Trying U+%04X\n", pick); */ for (font = 0; font < NUM_FONTS; font++) { if (state->fonts[font] && XftCharExists (dpy, state->fonts[font], pick)) break; } if (font < NUM_FONTS) break; } if (i == 100) return (1000*1000); /* printf("Picked font %d, U+%04X\n", font, pick); */ sprintf(name,"U+%04X: ", pick); strcat(name, unicode_name_get_name(nameEntry)); XftTextExtents32(dpy,state->fonts[font],&pick,1,&extents); XftDrawString32(state->draw,&state->font_color,state->fonts[font], xgwa.width/2 - extents.width/2 + extents.x, xgwa.height/2 - extents.height/2 + extents.y, &pick,1); XftDrawStringUtf8(state->draw,&state->font_color,state->tfont, 5, xgwa.height - 5, (unsigned char *)name,strlen(name)); XSync (dpy, False); state->blank = False; return (state->delay); } else { XClearWindow (dpy, win); XSync (dpy, False); state->blank = True; return (1000*1000); } } static void unicode_reshape (Display *dpy, Window window, void *state, unsigned int width, unsigned int height) { } static Bool unicode_event (Display *dpy, Window window, void *state, XEvent *event) { return False; } static void unicode_free (Display *dpy, Window window, void *state) { } char *progclass = "Unicode"; static char const *unicode_defaults [] = { ".background: white", ".foreground: black", "*delay: 7", 0 }; static XrmOptionDescRec unicode_options [] = { { "-delay", ".delay", XrmoptionSepArg, 0 }, { "-font", ".font", XrmoptionSepArg, 0 }, { "-foreground", ".foreground", XrmoptionSepArg, 0 }, { "-background", ".background", XrmoptionSepArg, 0 }, { 0, 0, 0, 0 } }; XSCREENSAVER_MODULE("Unicode",unicode) unicode-screensaver-0.5.1/configure.ac0000644000175000017500000002002713306043252014667 00000000000000# Process this file with autoconf to produce a configure script. #AC_PREREQ(2.60) AC_INIT(unicode-screensaver, 0.5.1, mail@joachim-breitner.de) AC_CONFIG_SRCDIR([unicode.c]) AC_CONFIG_HEADER([config.h]) # AC_CONFIG_MACRO_DIR([m4]) AM_INIT_AUTOMAKE ############################################################################### # # Handle the --with-hackdir option # ############################################################################### have_hackdir=yes with_hackdir_req=unspecified AC_ARG_WITH(hackdir,[ Installation options: --with-hackdir=DIR Where to install the hundreds of demo executables. Default: PREFIX/libexec/xscreensaver/], [with_hackdir="$withval"; with_hackdir_req="$withval"],[with_hackdir=yes]) if test x"$with_hackdir" = xyes; then HACKDIR='${libexecdir}/xscreensaver' elif test x"$with_hackdir" = xno; then HACKDIR='${bindir}' else HACKDIR=$with_hackdir fi # canonicalize slashes. HACKDIR=`echo "${HACKDIR}" | sed 's@/$@@;s@//*@/@g'` AC_SUBST(HACKDIR) ############################################################################### # # Handle the --with-desktopdir option # ############################################################################### have_desktopdir=yes with_desktopdir_req=unspecified AC_ARG_WITH(desktopdir, [ --with-desktopdir=DIR Where to install the hundreds of demo executables. Default: PREFIX/share/applications/screensavers/], [with_desktopdir="$withval"; with_desktopdir_req="$withval"],[with_desktopdir=yes]) if test x"$with_desktopdir" = xyes; then DESKTOPDIR='${prefix}/share/applications/screensavers' elif test x"$with_desktopdir" = xno; then echo "error: must be yes, or a pathname: --with-desktopdir=$with_desktopdir" exit 1 else DESKTOPDIR=$with_desktopdir fi # canonicalize slashes. DESKTOPDIR=`echo "${DESKTOPDIR}" | sed 's@/$@@;s@//*@/@g'` AC_SUBST(DESKTOPDIR) ############################################################################### # # Handle the --with-configdir option # Help for --with-x-app-defaults option added.. # ############################################################################### have_configdir=yes with_configdir_req=unspecified AC_ARG_WITH(configdir, [ --with-configdir=DIR Where to install the data files that describe each of the display modes to the GUI. Default: PREFIX/share/xscreensaver/config/ ], [with_configdir="$withval"; with_configdir_req="$withval"], [with_configdir=yes]) if test x"$with_configdir" = xyes; then HACK_CONF_DIR='${datadir}/xscreensaver/config' elif test x"$with_configdir" = xno; then echo "error: must be yes, or a pathname: --with-configdir=$with_configdir" exit 1 else # there must be a better way than this... if test -z "`echo $with_configdir | sed 's@^/.*@@'`" ; then # absolute path HACK_CONF_DIR=$with_configdir else # relative path HACK_CONF_DIR="\${exec_prefix}$with_configdir" fi fi AC_SUBST(HACK_CONF_DIR) # Checks for programs. ############################################################################### # # Function to figure out how to run the compiler. # ############################################################################### AC_DEFUN(AC_PROG_CC_ANSI, [AC_PROG_CC if test -z "$GCC"; then # not using GCC AC_MSG_CHECKING(how to request ANSI compilation) case "$host" in *-hpux* ) AC_MSG_RESULT(HPUX: adding -Ae) CC="$CC -Ae" ;; *-aix* ) AC_MSG_RESULT(AIX: adding -qlanglvl=ansi -qhalt=e) CC="$CC -qlanglvl=ansi -qhalt=e" ;; *-dec-* ) AC_MSG_RESULT(DEC: adding -std1 -ieee) CC="$CC -std1" ;; *) AC_MSG_RESULT(no idea) ;; esac else # using GCC case "$host" in *-solaris*) AC_MSG_RESULT(Solaris: adding -D__EXTENSIONS__) CC="$CC -D__EXTENSIONS__" ;; esac fi OBJCC="$CC" AC_MSG_CHECKING([whether the compiler works on ANSI C]) AC_TRY_RUN([ main(int ac, char **av) { return 0; } ], AC_MSG_RESULT(yes), AC_MSG_RESULT(no) AC_MSG_ERROR(Couldn't build even a trivial ANSI C program: check CC.), AC_MSG_RESULT(cross compiling... assuming yes)) if test -n "$GCC"; then AC_MSG_RESULT(Turning on gcc compiler warnings.) CC="$CC -pedantic -Wall -Wstrict-prototypes -Wnested-externs -Wmissing-prototypes" OBJCC="$OBJCC -Wall" # As of gcc 3.4, we have "-Wdeclaration-after-statement" # and so perhaps now we can do without -pedantic? else case "$host" in *-irix5* |*-irix6.[0-3]* ) AC_MSG_RESULT(Turning on SGI compiler warnings.) CC="$CC -fullwarn -use_readonly_const -rdata_shared -g3" ;; # *-dec-osf* ) # if test -z "$GCC"; then # AC_MSG_RESULT(Turning on DEC C compiler warnings.) # CC="$CC -migrate -w0 -verbose -warnprotos" # fi # ;; esac fi ]) ############################################################################### # # Check for availability of various gcc command-line options. # ############################################################################### AC_DEFUN(AC_CHECK_GCC_ARG, [if test -n "$GCC"; then AC_CACHE_CHECK([whether gcc accepts [$2]], ac_cv_gcc_accepts_[$1], [rm -rf conftest.$ac_ext touch conftest.$ac_ext if ( ( gcc -c [$2] conftest.$ac_ext -o/dev/null >/dev/null ) 2>&1 | \ grep unrecognized >/dev/null ); then ac_cv_gcc_accepts_[$1]=no else ac_cv_gcc_accepts_[$1]=yes CC="$CC [$2]" fi]) ac_gcc_accepts_[$1]="$ac_cv_gcc_accepts_[$1]" fi ]) AC_DEFUN(AC_NO_LONG_STRING_WARNINGS, [AC_CHECK_GCC_ARG(no_overlength, -Wno-overlength-strings)]) AC_DEFUN(AC_NO_MISPLACED_DECLARATIONS, [AC_CHECK_GCC_ARG(no_decl_after, -Wdeclaration-after-statement)]) AC_PROG_CC AC_PROG_CC_ANSI AC_NO_LONG_STRING_WARNINGS AC_NO_MISPLACED_DECLARATIONS AC_PROG_INSTALL AC_PROG_MAKE_SET # Checks for libraries. AM_PROG_LIBTOOL PKG_CHECK_MODULES(X11, x11) AC_SUBST(X11_CFLAGS) AC_SUBST(X11_LIBS) PKG_CHECK_MODULES(XMU, xmu) AC_SUBST(XMU_CFLAGS) AC_SUBST(XMU_LIBS) PKG_CHECK_MODULES(XT, xt) AC_SUBST(XT_CFLAGS) AC_SUBST(XT_LIBS) PKG_CHECK_MODULES(XFT, xft) AC_SUBST(XFT_CFLAGS) AC_SUBST(XFT_LIBS) PKG_CHECK_MODULES(FC, fontconfig) AC_SUBST(FC_CFLAGS) AC_SUBST(FC_LIBS) # Checks for header files. # Checks for typedefs, structures, and compiler characteristics. ############################################################################### # # Function to check whether gettimeofday() exists, and how to call it. # This may define HAVE_GETTIMEOFDAY and GETTIMEOFDAY_TWO_ARGS. # ############################################################################### AH_TEMPLATE([HAVE_GETTIMEOFDAY], [Define this if you have the gettimeofday function.]) AH_TEMPLATE([GETTIMEOFDAY_TWO_ARGS], [Define this if gettimeofday() takes two arguments.]) AC_DEFUN([AC_GETTIMEOFDAY_ARGS], [AC_MSG_CHECKING(how to call gettimeofday) AC_CACHE_VAL(ac_cv_gettimeofday_args, [AC_TRY_COMPILE([#include #include ], [struct timeval tv; struct timezone tzp; gettimeofday(&tv, &tzp);], [ac_gettimeofday_args=2], [AC_TRY_COMPILE([#include #include ], [struct timeval tv; gettimeofday(&tv);], [ac_gettimeofday_args=1], [ac_gettimeofday_args=0])]) ac_cv_gettimeofday_args=$ac_gettimeofday_args]) ac_gettimeofday_args=$ac_cv_gettimeofday_args if test "$ac_gettimeofday_args" = 1 ; then AC_DEFINE(HAVE_GETTIMEOFDAY) AC_MSG_RESULT(one argument) elif test "$ac_gettimeofday_args" = 2 ; then AC_DEFINE(HAVE_GETTIMEOFDAY) AC_DEFINE(GETTIMEOFDAY_TWO_ARGS) AC_MSG_RESULT(two arguments) else AC_MSG_RESULT(unknown) fi ]) AC_GETTIMEOFDAY_ARGS # Checks for library functions. AC_CONFIG_FILES([Makefile]) AC_OUTPUT unicode-screensaver-0.5.1/aclocal.m40000644000175000017500000135434113306043306014253 00000000000000# generated automatically by aclocal 1.15.1 -*- Autoconf -*- # Copyright (C) 1996-2017 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])]) m4_ifndef([AC_AUTOCONF_VERSION], [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.69],, [m4_warning([this file was generated for autoconf 2.69. You have another version of autoconf. It may work, but is not guaranteed to. If you have problems, you may need to regenerate the build system entirely. To do so, use the procedure documented by the package, typically 'autoreconf'.])]) # libtool.m4 - Configure libtool for the host system. -*-Autoconf-*- # # Copyright (C) 1996-2001, 2003-2015 Free Software Foundation, Inc. # Written by Gordon Matzigkeit, 1996 # # This file is free software; the Free Software Foundation gives # unlimited permission to copy and/or distribute it, with or without # modifications, as long as this notice is preserved. m4_define([_LT_COPYING], [dnl # Copyright (C) 2014 Free Software Foundation, Inc. # This is free software; see the source for copying conditions. There is NO # warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. # GNU Libtool is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of of the License, or # (at your option) any later version. # # As a special exception to the GNU General Public License, if you # distribute this file as part of a program or library that is built # using GNU Libtool, you may include this file under the same # distribution terms that you use for the rest of that program. # # GNU Libtool is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see . ]) # serial 58 LT_INIT # LT_PREREQ(VERSION) # ------------------ # Complain and exit if this libtool version is less that VERSION. m4_defun([LT_PREREQ], [m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1, [m4_default([$3], [m4_fatal([Libtool version $1 or higher is required], 63)])], [$2])]) # _LT_CHECK_BUILDDIR # ------------------ # Complain if the absolute build directory name contains unusual characters m4_defun([_LT_CHECK_BUILDDIR], [case `pwd` in *\ * | *\ *) AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;; esac ]) # LT_INIT([OPTIONS]) # ------------------ AC_DEFUN([LT_INIT], [AC_PREREQ([2.62])dnl We use AC_PATH_PROGS_FEATURE_CHECK AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl AC_BEFORE([$0], [LT_LANG])dnl AC_BEFORE([$0], [LT_OUTPUT])dnl AC_BEFORE([$0], [LTDL_INIT])dnl m4_require([_LT_CHECK_BUILDDIR])dnl dnl Autoconf doesn't catch unexpanded LT_ macros by default: m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4 dnl unless we require an AC_DEFUNed macro: AC_REQUIRE([LTOPTIONS_VERSION])dnl AC_REQUIRE([LTSUGAR_VERSION])dnl AC_REQUIRE([LTVERSION_VERSION])dnl AC_REQUIRE([LTOBSOLETE_VERSION])dnl m4_require([_LT_PROG_LTMAIN])dnl _LT_SHELL_INIT([SHELL=${CONFIG_SHELL-/bin/sh}]) dnl Parse OPTIONS _LT_SET_OPTIONS([$0], [$1]) # This can be used to rebuild libtool when needed LIBTOOL_DEPS=$ltmain # Always use our own libtool. LIBTOOL='$(SHELL) $(top_builddir)/libtool' AC_SUBST(LIBTOOL)dnl _LT_SETUP # Only expand once: m4_define([LT_INIT]) ])# LT_INIT # Old names: AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT]) AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_PROG_LIBTOOL], []) dnl AC_DEFUN([AM_PROG_LIBTOOL], []) # _LT_PREPARE_CC_BASENAME # ----------------------- m4_defun([_LT_PREPARE_CC_BASENAME], [ # Calculate cc_basename. Skip known compiler wrappers and cross-prefix. func_cc_basename () { for cc_temp in @S|@*""; do case $cc_temp in compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;; distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;; \-*) ;; *) break;; esac done func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` } ])# _LT_PREPARE_CC_BASENAME # _LT_CC_BASENAME(CC) # ------------------- # It would be clearer to call AC_REQUIREs from _LT_PREPARE_CC_BASENAME, # but that macro is also expanded into generated libtool script, which # arranges for $SED and $ECHO to be set by different means. m4_defun([_LT_CC_BASENAME], [m4_require([_LT_PREPARE_CC_BASENAME])dnl AC_REQUIRE([_LT_DECL_SED])dnl AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl func_cc_basename $1 cc_basename=$func_cc_basename_result ]) # _LT_FILEUTILS_DEFAULTS # ---------------------- # It is okay to use these file commands and assume they have been set # sensibly after 'm4_require([_LT_FILEUTILS_DEFAULTS])'. m4_defun([_LT_FILEUTILS_DEFAULTS], [: ${CP="cp -f"} : ${MV="mv -f"} : ${RM="rm -f"} ])# _LT_FILEUTILS_DEFAULTS # _LT_SETUP # --------- m4_defun([_LT_SETUP], [AC_REQUIRE([AC_CANONICAL_HOST])dnl AC_REQUIRE([AC_CANONICAL_BUILD])dnl AC_REQUIRE([_LT_PREPARE_SED_QUOTE_VARS])dnl AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl _LT_DECL([], [PATH_SEPARATOR], [1], [The PATH separator for the build system])dnl dnl _LT_DECL([], [host_alias], [0], [The host system])dnl _LT_DECL([], [host], [0])dnl _LT_DECL([], [host_os], [0])dnl dnl _LT_DECL([], [build_alias], [0], [The build system])dnl _LT_DECL([], [build], [0])dnl _LT_DECL([], [build_os], [0])dnl dnl AC_REQUIRE([AC_PROG_CC])dnl AC_REQUIRE([LT_PATH_LD])dnl AC_REQUIRE([LT_PATH_NM])dnl dnl AC_REQUIRE([AC_PROG_LN_S])dnl test -z "$LN_S" && LN_S="ln -s" _LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl dnl AC_REQUIRE([LT_CMD_MAX_LEN])dnl _LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl _LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl dnl m4_require([_LT_FILEUTILS_DEFAULTS])dnl m4_require([_LT_CHECK_SHELL_FEATURES])dnl m4_require([_LT_PATH_CONVERSION_FUNCTIONS])dnl m4_require([_LT_CMD_RELOAD])dnl m4_require([_LT_CHECK_MAGIC_METHOD])dnl m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl m4_require([_LT_CMD_OLD_ARCHIVE])dnl m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl m4_require([_LT_WITH_SYSROOT])dnl m4_require([_LT_CMD_TRUNCATE])dnl _LT_CONFIG_LIBTOOL_INIT([ # See if we are running on zsh, and set the options that allow our # commands through without removal of \ escapes INIT. if test -n "\${ZSH_VERSION+set}"; then setopt NO_GLOB_SUBST fi ]) if test -n "${ZSH_VERSION+set}"; then setopt NO_GLOB_SUBST fi _LT_CHECK_OBJDIR m4_require([_LT_TAG_COMPILER])dnl case $host_os in aix3*) # AIX sometimes has problems with the GCC collect2 program. For some # reason, if we set the COLLECT_NAMES environment variable, the problems # vanish in a puff of smoke. if test set != "${COLLECT_NAMES+set}"; then COLLECT_NAMES= export COLLECT_NAMES fi ;; esac # Global variables: ofile=libtool can_build_shared=yes # All known linkers require a '.a' archive for static linking (except MSVC, # which needs '.lib'). libext=a with_gnu_ld=$lt_cv_prog_gnu_ld old_CC=$CC old_CFLAGS=$CFLAGS # Set sane defaults for various variables test -z "$CC" && CC=cc test -z "$LTCC" && LTCC=$CC test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS test -z "$LD" && LD=ld test -z "$ac_objext" && ac_objext=o _LT_CC_BASENAME([$compiler]) # Only perform the check for file, if the check method requires it test -z "$MAGIC_CMD" && MAGIC_CMD=file case $deplibs_check_method in file_magic*) if test "$file_magic_cmd" = '$MAGIC_CMD'; then _LT_PATH_MAGIC fi ;; esac # Use C for the default configuration in the libtool script LT_SUPPORTED_TAG([CC]) _LT_LANG_C_CONFIG _LT_LANG_DEFAULT_CONFIG _LT_CONFIG_COMMANDS ])# _LT_SETUP # _LT_PREPARE_SED_QUOTE_VARS # -------------------------- # Define a few sed substitution that help us do robust quoting. m4_defun([_LT_PREPARE_SED_QUOTE_VARS], [# Backslashify metacharacters that are still active within # double-quoted strings. sed_quote_subst='s/\([["`$\\]]\)/\\\1/g' # Same as above, but do not quote variable references. double_quote_subst='s/\([["`\\]]\)/\\\1/g' # Sed substitution to delay expansion of an escaped shell variable in a # double_quote_subst'ed string. delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' # Sed substitution to delay expansion of an escaped single quote. delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g' # Sed substitution to avoid accidental globbing in evaled expressions no_glob_subst='s/\*/\\\*/g' ]) # _LT_PROG_LTMAIN # --------------- # Note that this code is called both from 'configure', and 'config.status' # now that we use AC_CONFIG_COMMANDS to generate libtool. Notably, # 'config.status' has no value for ac_aux_dir unless we are using Automake, # so we pass a copy along to make sure it has a sensible value anyway. m4_defun([_LT_PROG_LTMAIN], [m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl _LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir']) ltmain=$ac_aux_dir/ltmain.sh ])# _LT_PROG_LTMAIN # So that we can recreate a full libtool script including additional # tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS # in macros and then make a single call at the end using the 'libtool' # label. # _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS]) # ---------------------------------------- # Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later. m4_define([_LT_CONFIG_LIBTOOL_INIT], [m4_ifval([$1], [m4_append([_LT_OUTPUT_LIBTOOL_INIT], [$1 ])])]) # Initialize. m4_define([_LT_OUTPUT_LIBTOOL_INIT]) # _LT_CONFIG_LIBTOOL([COMMANDS]) # ------------------------------ # Register COMMANDS to be passed to AC_CONFIG_COMMANDS later. m4_define([_LT_CONFIG_LIBTOOL], [m4_ifval([$1], [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS], [$1 ])])]) # Initialize. m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS]) # _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS]) # ----------------------------------------------------- m4_defun([_LT_CONFIG_SAVE_COMMANDS], [_LT_CONFIG_LIBTOOL([$1]) _LT_CONFIG_LIBTOOL_INIT([$2]) ]) # _LT_FORMAT_COMMENT([COMMENT]) # ----------------------------- # Add leading comment marks to the start of each line, and a trailing # full-stop to the whole comment if one is not present already. m4_define([_LT_FORMAT_COMMENT], [m4_ifval([$1], [ m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])], [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.]) )]) # _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?]) # ------------------------------------------------------------------- # CONFIGNAME is the name given to the value in the libtool script. # VARNAME is the (base) name used in the configure script. # VALUE may be 0, 1 or 2 for a computed quote escaped value based on # VARNAME. Any other value will be used directly. m4_define([_LT_DECL], [lt_if_append_uniq([lt_decl_varnames], [$2], [, ], [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name], [m4_ifval([$1], [$1], [$2])]) lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3]) m4_ifval([$4], [lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])]) lt_dict_add_subkey([lt_decl_dict], [$2], [tagged?], [m4_ifval([$5], [yes], [no])])]) ]) # _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION]) # -------------------------------------------------------- m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])]) # lt_decl_tag_varnames([SEPARATOR], [VARNAME1...]) # ------------------------------------------------ m4_define([lt_decl_tag_varnames], [_lt_decl_filter([tagged?], [yes], $@)]) # _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..]) # --------------------------------------------------------- m4_define([_lt_decl_filter], [m4_case([$#], [0], [m4_fatal([$0: too few arguments: $#])], [1], [m4_fatal([$0: too few arguments: $#: $1])], [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)], [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)], [lt_dict_filter([lt_decl_dict], $@)])[]dnl ]) # lt_decl_quote_varnames([SEPARATOR], [VARNAME1...]) # -------------------------------------------------- m4_define([lt_decl_quote_varnames], [_lt_decl_filter([value], [1], $@)]) # lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...]) # --------------------------------------------------- m4_define([lt_decl_dquote_varnames], [_lt_decl_filter([value], [2], $@)]) # lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...]) # --------------------------------------------------- m4_define([lt_decl_varnames_tagged], [m4_assert([$# <= 2])dnl _$0(m4_quote(m4_default([$1], [[, ]])), m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]), m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))]) m4_define([_lt_decl_varnames_tagged], [m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])]) # lt_decl_all_varnames([SEPARATOR], [VARNAME1...]) # ------------------------------------------------ m4_define([lt_decl_all_varnames], [_$0(m4_quote(m4_default([$1], [[, ]])), m4_if([$2], [], m4_quote(lt_decl_varnames), m4_quote(m4_shift($@))))[]dnl ]) m4_define([_lt_decl_all_varnames], [lt_join($@, lt_decl_varnames_tagged([$1], lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl ]) # _LT_CONFIG_STATUS_DECLARE([VARNAME]) # ------------------------------------ # Quote a variable value, and forward it to 'config.status' so that its # declaration there will have the same value as in 'configure'. VARNAME # must have a single quote delimited value for this to work. m4_define([_LT_CONFIG_STATUS_DECLARE], [$1='`$ECHO "$][$1" | $SED "$delay_single_quote_subst"`']) # _LT_CONFIG_STATUS_DECLARATIONS # ------------------------------ # We delimit libtool config variables with single quotes, so when # we write them to config.status, we have to be sure to quote all # embedded single quotes properly. In configure, this macro expands # each variable declared with _LT_DECL (and _LT_TAGDECL) into: # # ='`$ECHO "$" | $SED "$delay_single_quote_subst"`' m4_defun([_LT_CONFIG_STATUS_DECLARATIONS], [m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames), [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])]) # _LT_LIBTOOL_TAGS # ---------------- # Output comment and list of tags supported by the script m4_defun([_LT_LIBTOOL_TAGS], [_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl available_tags='_LT_TAGS'dnl ]) # _LT_LIBTOOL_DECLARE(VARNAME, [TAG]) # ----------------------------------- # Extract the dictionary values for VARNAME (optionally with TAG) and # expand to a commented shell variable setting: # # # Some comment about what VAR is for. # visible_name=$lt_internal_name m4_define([_LT_LIBTOOL_DECLARE], [_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [description])))[]dnl m4_pushdef([_libtool_name], m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])), [0], [_libtool_name=[$]$1], [1], [_libtool_name=$lt_[]$1], [2], [_libtool_name=$lt_[]$1], [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl ]) # _LT_LIBTOOL_CONFIG_VARS # ----------------------- # Produce commented declarations of non-tagged libtool config variables # suitable for insertion in the LIBTOOL CONFIG section of the 'libtool' # script. Tagged libtool config variables (even for the LIBTOOL CONFIG # section) are produced by _LT_LIBTOOL_TAG_VARS. m4_defun([_LT_LIBTOOL_CONFIG_VARS], [m4_foreach([_lt_var], m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)), [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])]) # _LT_LIBTOOL_TAG_VARS(TAG) # ------------------------- m4_define([_LT_LIBTOOL_TAG_VARS], [m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames), [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])]) # _LT_TAGVAR(VARNAME, [TAGNAME]) # ------------------------------ m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])]) # _LT_CONFIG_COMMANDS # ------------------- # Send accumulated output to $CONFIG_STATUS. Thanks to the lists of # variables for single and double quote escaping we saved from calls # to _LT_DECL, we can put quote escaped variables declarations # into 'config.status', and then the shell code to quote escape them in # for loops in 'config.status'. Finally, any additional code accumulated # from calls to _LT_CONFIG_LIBTOOL_INIT is expanded. m4_defun([_LT_CONFIG_COMMANDS], [AC_PROVIDE_IFELSE([LT_OUTPUT], dnl If the libtool generation code has been placed in $CONFIG_LT, dnl instead of duplicating it all over again into config.status, dnl then we will have config.status run $CONFIG_LT later, so it dnl needs to know what name is stored there: [AC_CONFIG_COMMANDS([libtool], [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])], dnl If the libtool generation code is destined for config.status, dnl expand the accumulated commands and init code now: [AC_CONFIG_COMMANDS([libtool], [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])]) ])#_LT_CONFIG_COMMANDS # Initialize. m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT], [ # The HP-UX ksh and POSIX shell print the target directory to stdout # if CDPATH is set. (unset CDPATH) >/dev/null 2>&1 && unset CDPATH sed_quote_subst='$sed_quote_subst' double_quote_subst='$double_quote_subst' delay_variable_subst='$delay_variable_subst' _LT_CONFIG_STATUS_DECLARATIONS LTCC='$LTCC' LTCFLAGS='$LTCFLAGS' compiler='$compiler_DEFAULT' # A function that is used when there is no print builtin or printf. func_fallback_echo () { eval 'cat <<_LTECHO_EOF \$[]1 _LTECHO_EOF' } # Quote evaled strings. for var in lt_decl_all_varnames([[ \ ]], lt_decl_quote_varnames); do case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in *[[\\\\\\\`\\"\\\$]]*) eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes ;; *) eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" ;; esac done # Double-quote double-evaled strings. for var in lt_decl_all_varnames([[ \ ]], lt_decl_dquote_varnames); do case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in *[[\\\\\\\`\\"\\\$]]*) eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes ;; *) eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" ;; esac done _LT_OUTPUT_LIBTOOL_INIT ]) # _LT_GENERATED_FILE_INIT(FILE, [COMMENT]) # ------------------------------------ # Generate a child script FILE with all initialization necessary to # reuse the environment learned by the parent script, and make the # file executable. If COMMENT is supplied, it is inserted after the # '#!' sequence but before initialization text begins. After this # macro, additional text can be appended to FILE to form the body of # the child script. The macro ends with non-zero status if the # file could not be fully written (such as if the disk is full). m4_ifdef([AS_INIT_GENERATED], [m4_defun([_LT_GENERATED_FILE_INIT],[AS_INIT_GENERATED($@)])], [m4_defun([_LT_GENERATED_FILE_INIT], [m4_require([AS_PREPARE])]dnl [m4_pushdef([AS_MESSAGE_LOG_FD])]dnl [lt_write_fail=0 cat >$1 <<_ASEOF || lt_write_fail=1 #! $SHELL # Generated by $as_me. $2 SHELL=\${CONFIG_SHELL-$SHELL} export SHELL _ASEOF cat >>$1 <<\_ASEOF || lt_write_fail=1 AS_SHELL_SANITIZE _AS_PREPARE exec AS_MESSAGE_FD>&1 _ASEOF test 0 = "$lt_write_fail" && chmod +x $1[]dnl m4_popdef([AS_MESSAGE_LOG_FD])])])# _LT_GENERATED_FILE_INIT # LT_OUTPUT # --------- # This macro allows early generation of the libtool script (before # AC_OUTPUT is called), incase it is used in configure for compilation # tests. AC_DEFUN([LT_OUTPUT], [: ${CONFIG_LT=./config.lt} AC_MSG_NOTICE([creating $CONFIG_LT]) _LT_GENERATED_FILE_INIT(["$CONFIG_LT"], [# Run this file to recreate a libtool stub with the current configuration.]) cat >>"$CONFIG_LT" <<\_LTEOF lt_cl_silent=false exec AS_MESSAGE_LOG_FD>>config.log { echo AS_BOX([Running $as_me.]) } >&AS_MESSAGE_LOG_FD lt_cl_help="\ '$as_me' creates a local libtool stub from the current configuration, for use in further configure time tests before the real libtool is generated. Usage: $[0] [[OPTIONS]] -h, --help print this help, then exit -V, --version print version number, then exit -q, --quiet do not print progress messages -d, --debug don't remove temporary files Report bugs to ." lt_cl_version="\ m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION]) configured by $[0], generated by m4_PACKAGE_STRING. Copyright (C) 2011 Free Software Foundation, Inc. This config.lt script is free software; the Free Software Foundation gives unlimited permision to copy, distribute and modify it." while test 0 != $[#] do case $[1] in --version | --v* | -V ) echo "$lt_cl_version"; exit 0 ;; --help | --h* | -h ) echo "$lt_cl_help"; exit 0 ;; --debug | --d* | -d ) debug=: ;; --quiet | --q* | --silent | --s* | -q ) lt_cl_silent=: ;; -*) AC_MSG_ERROR([unrecognized option: $[1] Try '$[0] --help' for more information.]) ;; *) AC_MSG_ERROR([unrecognized argument: $[1] Try '$[0] --help' for more information.]) ;; esac shift done if $lt_cl_silent; then exec AS_MESSAGE_FD>/dev/null fi _LTEOF cat >>"$CONFIG_LT" <<_LTEOF _LT_OUTPUT_LIBTOOL_COMMANDS_INIT _LTEOF cat >>"$CONFIG_LT" <<\_LTEOF AC_MSG_NOTICE([creating $ofile]) _LT_OUTPUT_LIBTOOL_COMMANDS AS_EXIT(0) _LTEOF chmod +x "$CONFIG_LT" # configure is writing to config.log, but config.lt does its own redirection, # appending to config.log, which fails on DOS, as config.log is still kept # open by configure. Here we exec the FD to /dev/null, effectively closing # config.log, so it can be properly (re)opened and appended to by config.lt. lt_cl_success=: test yes = "$silent" && lt_config_lt_args="$lt_config_lt_args --quiet" exec AS_MESSAGE_LOG_FD>/dev/null $SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false exec AS_MESSAGE_LOG_FD>>config.log $lt_cl_success || AS_EXIT(1) ])# LT_OUTPUT # _LT_CONFIG(TAG) # --------------- # If TAG is the built-in tag, create an initial libtool script with a # default configuration from the untagged config vars. Otherwise add code # to config.status for appending the configuration named by TAG from the # matching tagged config vars. m4_defun([_LT_CONFIG], [m4_require([_LT_FILEUTILS_DEFAULTS])dnl _LT_CONFIG_SAVE_COMMANDS([ m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl m4_if(_LT_TAG, [C], [ # See if we are running on zsh, and set the options that allow our # commands through without removal of \ escapes. if test -n "${ZSH_VERSION+set}"; then setopt NO_GLOB_SUBST fi cfgfile=${ofile}T trap "$RM \"$cfgfile\"; exit 1" 1 2 15 $RM "$cfgfile" cat <<_LT_EOF >> "$cfgfile" #! $SHELL # Generated automatically by $as_me ($PACKAGE) $VERSION # NOTE: Changes made to this file will be lost: look at ltmain.sh. # Provide generalized library-building support services. # Written by Gordon Matzigkeit, 1996 _LT_COPYING _LT_LIBTOOL_TAGS # Configured defaults for sys_lib_dlsearch_path munging. : \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"} # ### BEGIN LIBTOOL CONFIG _LT_LIBTOOL_CONFIG_VARS _LT_LIBTOOL_TAG_VARS # ### END LIBTOOL CONFIG _LT_EOF cat <<'_LT_EOF' >> "$cfgfile" # ### BEGIN FUNCTIONS SHARED WITH CONFIGURE _LT_PREPARE_MUNGE_PATH_LIST _LT_PREPARE_CC_BASENAME # ### END FUNCTIONS SHARED WITH CONFIGURE _LT_EOF case $host_os in aix3*) cat <<\_LT_EOF >> "$cfgfile" # AIX sometimes has problems with the GCC collect2 program. For some # reason, if we set the COLLECT_NAMES environment variable, the problems # vanish in a puff of smoke. if test set != "${COLLECT_NAMES+set}"; then COLLECT_NAMES= export COLLECT_NAMES fi _LT_EOF ;; esac _LT_PROG_LTMAIN # We use sed instead of cat because bash on DJGPP gets confused if # if finds mixed CR/LF and LF-only lines. Since sed operates in # text mode, it properly converts lines to CR/LF. This bash problem # is reportedly fixed, but why not run on old versions too? sed '$q' "$ltmain" >> "$cfgfile" \ || (rm -f "$cfgfile"; exit 1) mv -f "$cfgfile" "$ofile" || (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") chmod +x "$ofile" ], [cat <<_LT_EOF >> "$ofile" dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded dnl in a comment (ie after a #). # ### BEGIN LIBTOOL TAG CONFIG: $1 _LT_LIBTOOL_TAG_VARS(_LT_TAG) # ### END LIBTOOL TAG CONFIG: $1 _LT_EOF ])dnl /m4_if ], [m4_if([$1], [], [ PACKAGE='$PACKAGE' VERSION='$VERSION' RM='$RM' ofile='$ofile'], []) ])dnl /_LT_CONFIG_SAVE_COMMANDS ])# _LT_CONFIG # LT_SUPPORTED_TAG(TAG) # --------------------- # Trace this macro to discover what tags are supported by the libtool # --tag option, using: # autoconf --trace 'LT_SUPPORTED_TAG:$1' AC_DEFUN([LT_SUPPORTED_TAG], []) # C support is built-in for now m4_define([_LT_LANG_C_enabled], []) m4_define([_LT_TAGS], []) # LT_LANG(LANG) # ------------- # Enable libtool support for the given language if not already enabled. AC_DEFUN([LT_LANG], [AC_BEFORE([$0], [LT_OUTPUT])dnl m4_case([$1], [C], [_LT_LANG(C)], [C++], [_LT_LANG(CXX)], [Go], [_LT_LANG(GO)], [Java], [_LT_LANG(GCJ)], [Fortran 77], [_LT_LANG(F77)], [Fortran], [_LT_LANG(FC)], [Windows Resource], [_LT_LANG(RC)], [m4_ifdef([_LT_LANG_]$1[_CONFIG], [_LT_LANG($1)], [m4_fatal([$0: unsupported language: "$1"])])])dnl ])# LT_LANG # _LT_LANG(LANGNAME) # ------------------ m4_defun([_LT_LANG], [m4_ifdef([_LT_LANG_]$1[_enabled], [], [LT_SUPPORTED_TAG([$1])dnl m4_append([_LT_TAGS], [$1 ])dnl m4_define([_LT_LANG_]$1[_enabled], [])dnl _LT_LANG_$1_CONFIG($1)])dnl ])# _LT_LANG m4_ifndef([AC_PROG_GO], [ # NOTE: This macro has been submitted for inclusion into # # GNU Autoconf as AC_PROG_GO. When it is available in # # a released version of Autoconf we should remove this # # macro and use it instead. # m4_defun([AC_PROG_GO], [AC_LANG_PUSH(Go)dnl AC_ARG_VAR([GOC], [Go compiler command])dnl AC_ARG_VAR([GOFLAGS], [Go compiler flags])dnl _AC_ARG_VAR_LDFLAGS()dnl AC_CHECK_TOOL(GOC, gccgo) if test -z "$GOC"; then if test -n "$ac_tool_prefix"; then AC_CHECK_PROG(GOC, [${ac_tool_prefix}gccgo], [${ac_tool_prefix}gccgo]) fi fi if test -z "$GOC"; then AC_CHECK_PROG(GOC, gccgo, gccgo, false) fi ])#m4_defun ])#m4_ifndef # _LT_LANG_DEFAULT_CONFIG # ----------------------- m4_defun([_LT_LANG_DEFAULT_CONFIG], [AC_PROVIDE_IFELSE([AC_PROG_CXX], [LT_LANG(CXX)], [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])]) AC_PROVIDE_IFELSE([AC_PROG_F77], [LT_LANG(F77)], [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])]) AC_PROVIDE_IFELSE([AC_PROG_FC], [LT_LANG(FC)], [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])]) dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal dnl pulling things in needlessly. AC_PROVIDE_IFELSE([AC_PROG_GCJ], [LT_LANG(GCJ)], [AC_PROVIDE_IFELSE([A][M_PROG_GCJ], [LT_LANG(GCJ)], [AC_PROVIDE_IFELSE([LT_PROG_GCJ], [LT_LANG(GCJ)], [m4_ifdef([AC_PROG_GCJ], [m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])]) m4_ifdef([A][M_PROG_GCJ], [m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])]) m4_ifdef([LT_PROG_GCJ], [m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])]) AC_PROVIDE_IFELSE([AC_PROG_GO], [LT_LANG(GO)], [m4_define([AC_PROG_GO], defn([AC_PROG_GO])[LT_LANG(GO)])]) AC_PROVIDE_IFELSE([LT_PROG_RC], [LT_LANG(RC)], [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])]) ])# _LT_LANG_DEFAULT_CONFIG # Obsolete macros: AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)]) AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)]) AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)]) AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)]) AU_DEFUN([AC_LIBTOOL_RC], [LT_LANG(Windows Resource)]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_LIBTOOL_CXX], []) dnl AC_DEFUN([AC_LIBTOOL_F77], []) dnl AC_DEFUN([AC_LIBTOOL_FC], []) dnl AC_DEFUN([AC_LIBTOOL_GCJ], []) dnl AC_DEFUN([AC_LIBTOOL_RC], []) # _LT_TAG_COMPILER # ---------------- m4_defun([_LT_TAG_COMPILER], [AC_REQUIRE([AC_PROG_CC])dnl _LT_DECL([LTCC], [CC], [1], [A C compiler])dnl _LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl _LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl _LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl # If no C compiler was specified, use CC. LTCC=${LTCC-"$CC"} # If no C compiler flags were specified, use CFLAGS. LTCFLAGS=${LTCFLAGS-"$CFLAGS"} # Allow CC to be a program name with arguments. compiler=$CC ])# _LT_TAG_COMPILER # _LT_COMPILER_BOILERPLATE # ------------------------ # Check for compiler boilerplate output or warnings with # the simple compiler test code. m4_defun([_LT_COMPILER_BOILERPLATE], [m4_require([_LT_DECL_SED])dnl ac_outfile=conftest.$ac_objext echo "$lt_simple_compile_test_code" >conftest.$ac_ext eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err _lt_compiler_boilerplate=`cat conftest.err` $RM conftest* ])# _LT_COMPILER_BOILERPLATE # _LT_LINKER_BOILERPLATE # ---------------------- # Check for linker boilerplate output or warnings with # the simple link test code. m4_defun([_LT_LINKER_BOILERPLATE], [m4_require([_LT_DECL_SED])dnl ac_outfile=conftest.$ac_objext echo "$lt_simple_link_test_code" >conftest.$ac_ext eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err _lt_linker_boilerplate=`cat conftest.err` $RM -r conftest* ])# _LT_LINKER_BOILERPLATE # _LT_REQUIRED_DARWIN_CHECKS # ------------------------- m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[ case $host_os in rhapsody* | darwin*) AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:]) AC_CHECK_TOOL([NMEDIT], [nmedit], [:]) AC_CHECK_TOOL([LIPO], [lipo], [:]) AC_CHECK_TOOL([OTOOL], [otool], [:]) AC_CHECK_TOOL([OTOOL64], [otool64], [:]) _LT_DECL([], [DSYMUTIL], [1], [Tool to manipulate archived DWARF debug symbol files on Mac OS X]) _LT_DECL([], [NMEDIT], [1], [Tool to change global to local symbols on Mac OS X]) _LT_DECL([], [LIPO], [1], [Tool to manipulate fat objects and archives on Mac OS X]) _LT_DECL([], [OTOOL], [1], [ldd/readelf like tool for Mach-O binaries on Mac OS X]) _LT_DECL([], [OTOOL64], [1], [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4]) AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod], [lt_cv_apple_cc_single_mod=no if test -z "$LT_MULTI_MODULE"; then # By default we will add the -single_module flag. You can override # by either setting the environment variable LT_MULTI_MODULE # non-empty at configure time, or by adding -multi_module to the # link flags. rm -rf libconftest.dylib* echo "int foo(void){return 1;}" > conftest.c echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ -dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ -dynamiclib -Wl,-single_module conftest.c 2>conftest.err _lt_result=$? # If there is a non-empty error log, and "single_module" # appears in it, assume the flag caused a linker warning if test -s conftest.err && $GREP single_module conftest.err; then cat conftest.err >&AS_MESSAGE_LOG_FD # Otherwise, if the output was created with a 0 exit code from # the compiler, it worked. elif test -f libconftest.dylib && test 0 = "$_lt_result"; then lt_cv_apple_cc_single_mod=yes else cat conftest.err >&AS_MESSAGE_LOG_FD fi rm -rf libconftest.dylib* rm -f conftest.* fi]) AC_CACHE_CHECK([for -exported_symbols_list linker flag], [lt_cv_ld_exported_symbols_list], [lt_cv_ld_exported_symbols_list=no save_LDFLAGS=$LDFLAGS echo "_main" > conftest.sym LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym" AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])], [lt_cv_ld_exported_symbols_list=yes], [lt_cv_ld_exported_symbols_list=no]) LDFLAGS=$save_LDFLAGS ]) AC_CACHE_CHECK([for -force_load linker flag],[lt_cv_ld_force_load], [lt_cv_ld_force_load=no cat > conftest.c << _LT_EOF int forced_loaded() { return 2;} _LT_EOF echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD echo "$AR cru libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD $AR cru libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD cat > conftest.c << _LT_EOF int main() { return 0;} _LT_EOF echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&AS_MESSAGE_LOG_FD $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err _lt_result=$? if test -s conftest.err && $GREP force_load conftest.err; then cat conftest.err >&AS_MESSAGE_LOG_FD elif test -f conftest && test 0 = "$_lt_result" && $GREP forced_load conftest >/dev/null 2>&1; then lt_cv_ld_force_load=yes else cat conftest.err >&AS_MESSAGE_LOG_FD fi rm -f conftest.err libconftest.a conftest conftest.c rm -rf conftest.dSYM ]) case $host_os in rhapsody* | darwin1.[[012]]) _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;; darwin1.*) _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; darwin*) # darwin 5.x on # if running on 10.5 or later, the deployment target defaults # to the OS version, if on x86, and 10.4, the deployment # target defaults to 10.4. Don't you love it? case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in 10.0,*86*-darwin8*|10.0,*-darwin[[91]]*) _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; 10.[[012]][[,.]]*) _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; 10.*) _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; esac ;; esac if test yes = "$lt_cv_apple_cc_single_mod"; then _lt_dar_single_mod='$single_module' fi if test yes = "$lt_cv_ld_exported_symbols_list"; then _lt_dar_export_syms=' $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym' else _lt_dar_export_syms='~$NMEDIT -s $output_objdir/$libname-symbols.expsym $lib' fi if test : != "$DSYMUTIL" && test no = "$lt_cv_ld_force_load"; then _lt_dsymutil='~$DSYMUTIL $lib || :' else _lt_dsymutil= fi ;; esac ]) # _LT_DARWIN_LINKER_FEATURES([TAG]) # --------------------------------- # Checks for linker and compiler features on darwin m4_defun([_LT_DARWIN_LINKER_FEATURES], [ m4_require([_LT_REQUIRED_DARWIN_CHECKS]) _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_automatic, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported if test yes = "$lt_cv_ld_force_load"; then _LT_TAGVAR(whole_archive_flag_spec, $1)='`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience $wl-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`' m4_case([$1], [F77], [_LT_TAGVAR(compiler_needs_object, $1)=yes], [FC], [_LT_TAGVAR(compiler_needs_object, $1)=yes]) else _LT_TAGVAR(whole_archive_flag_spec, $1)='' fi _LT_TAGVAR(link_all_deplibs, $1)=yes _LT_TAGVAR(allow_undefined_flag, $1)=$_lt_dar_allow_undefined case $cc_basename in ifort*|nagfor*) _lt_dar_can_shared=yes ;; *) _lt_dar_can_shared=$GCC ;; esac if test yes = "$_lt_dar_can_shared"; then output_verbose_link_cmd=func_echo_all _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil" _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil" _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil" _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil" m4_if([$1], [CXX], [ if test yes != "$lt_cv_apple_cc_single_mod"; then _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dsymutil" _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dar_export_syms$_lt_dsymutil" fi ],[]) else _LT_TAGVAR(ld_shlibs, $1)=no fi ]) # _LT_SYS_MODULE_PATH_AIX([TAGNAME]) # ---------------------------------- # Links a minimal program and checks the executable # for the system default hardcoded library path. In most cases, # this is /usr/lib:/lib, but when the MPI compilers are used # the location of the communication and MPI libs are included too. # If we don't find anything, use the default library path according # to the aix ld manual. # Store the results from the different compilers for each TAGNAME. # Allow to override them for all tags through lt_cv_aix_libpath. m4_defun([_LT_SYS_MODULE_PATH_AIX], [m4_require([_LT_DECL_SED])dnl if test set = "${lt_cv_aix_libpath+set}"; then aix_libpath=$lt_cv_aix_libpath else AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])], [AC_LINK_IFELSE([AC_LANG_PROGRAM],[ lt_aix_libpath_sed='[ /Import File Strings/,/^$/ { /^0/ { s/^0 *\([^ ]*\) *$/\1/ p } }]' _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` # Check for a 64-bit object if we didn't find anything. if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` fi],[]) if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=/usr/lib:/lib fi ]) aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1]) fi ])# _LT_SYS_MODULE_PATH_AIX # _LT_SHELL_INIT(ARG) # ------------------- m4_define([_LT_SHELL_INIT], [m4_divert_text([M4SH-INIT], [$1 ])])# _LT_SHELL_INIT # _LT_PROG_ECHO_BACKSLASH # ----------------------- # Find how we can fake an echo command that does not interpret backslash. # In particular, with Autoconf 2.60 or later we add some code to the start # of the generated configure script that will find a shell with a builtin # printf (that we can use as an echo command). m4_defun([_LT_PROG_ECHO_BACKSLASH], [ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO AC_MSG_CHECKING([how to print strings]) # Test print first, because it will be a builtin if present. if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \ test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then ECHO='print -r --' elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then ECHO='printf %s\n' else # Use this function as a fallback that always works. func_fallback_echo () { eval 'cat <<_LTECHO_EOF $[]1 _LTECHO_EOF' } ECHO='func_fallback_echo' fi # func_echo_all arg... # Invoke $ECHO with all args, space-separated. func_echo_all () { $ECHO "$*" } case $ECHO in printf*) AC_MSG_RESULT([printf]) ;; print*) AC_MSG_RESULT([print -r]) ;; *) AC_MSG_RESULT([cat]) ;; esac m4_ifdef([_AS_DETECT_SUGGESTED], [_AS_DETECT_SUGGESTED([ test -n "${ZSH_VERSION+set}${BASH_VERSION+set}" || ( ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO PATH=/empty FPATH=/empty; export PATH FPATH test "X`printf %s $ECHO`" = "X$ECHO" \ || test "X`print -r -- $ECHO`" = "X$ECHO" )])]) _LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts]) _LT_DECL([], [ECHO], [1], [An echo program that protects backslashes]) ])# _LT_PROG_ECHO_BACKSLASH # _LT_WITH_SYSROOT # ---------------- AC_DEFUN([_LT_WITH_SYSROOT], [AC_MSG_CHECKING([for sysroot]) AC_ARG_WITH([sysroot], [AS_HELP_STRING([--with-sysroot@<:@=DIR@:>@], [Search for dependent libraries within DIR (or the compiler's sysroot if not specified).])], [], [with_sysroot=no]) dnl lt_sysroot will always be passed unquoted. We quote it here dnl in case the user passed a directory name. lt_sysroot= case $with_sysroot in #( yes) if test yes = "$GCC"; then lt_sysroot=`$CC --print-sysroot 2>/dev/null` fi ;; #( /*) lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"` ;; #( no|'') ;; #( *) AC_MSG_RESULT([$with_sysroot]) AC_MSG_ERROR([The sysroot must be an absolute path.]) ;; esac AC_MSG_RESULT([${lt_sysroot:-no}]) _LT_DECL([], [lt_sysroot], [0], [The root where to search for ]dnl [dependent libraries, and where our libraries should be installed.])]) # _LT_ENABLE_LOCK # --------------- m4_defun([_LT_ENABLE_LOCK], [AC_ARG_ENABLE([libtool-lock], [AS_HELP_STRING([--disable-libtool-lock], [avoid locking (might break parallel builds)])]) test no = "$enable_libtool_lock" || enable_libtool_lock=yes # Some flags need to be propagated to the compiler or linker for good # libtool support. case $host in ia64-*-hpux*) # Find out what ABI is being produced by ac_compile, and set mode # options accordingly. echo 'int i;' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then case `/usr/bin/file conftest.$ac_objext` in *ELF-32*) HPUX_IA64_MODE=32 ;; *ELF-64*) HPUX_IA64_MODE=64 ;; esac fi rm -rf conftest* ;; *-*-irix6*) # Find out what ABI is being produced by ac_compile, and set linker # options accordingly. echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then if test yes = "$lt_cv_prog_gnu_ld"; then case `/usr/bin/file conftest.$ac_objext` in *32-bit*) LD="${LD-ld} -melf32bsmip" ;; *N32*) LD="${LD-ld} -melf32bmipn32" ;; *64-bit*) LD="${LD-ld} -melf64bmip" ;; esac else case `/usr/bin/file conftest.$ac_objext` in *32-bit*) LD="${LD-ld} -32" ;; *N32*) LD="${LD-ld} -n32" ;; *64-bit*) LD="${LD-ld} -64" ;; esac fi fi rm -rf conftest* ;; mips64*-*linux*) # Find out what ABI is being produced by ac_compile, and set linker # options accordingly. echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then emul=elf case `/usr/bin/file conftest.$ac_objext` in *32-bit*) emul="${emul}32" ;; *64-bit*) emul="${emul}64" ;; esac case `/usr/bin/file conftest.$ac_objext` in *MSB*) emul="${emul}btsmip" ;; *LSB*) emul="${emul}ltsmip" ;; esac case `/usr/bin/file conftest.$ac_objext` in *N32*) emul="${emul}n32" ;; esac LD="${LD-ld} -m $emul" fi rm -rf conftest* ;; x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \ s390*-*linux*|s390*-*tpf*|sparc*-*linux*) # Find out what ABI is being produced by ac_compile, and set linker # options accordingly. Note that the listed cases only cover the # situations where additional linker options are needed (such as when # doing 32-bit compilation for a host where ld defaults to 64-bit, or # vice versa); the common cases where no linker options are needed do # not appear in the list. echo 'int i;' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then case `/usr/bin/file conftest.o` in *32-bit*) case $host in x86_64-*kfreebsd*-gnu) LD="${LD-ld} -m elf_i386_fbsd" ;; x86_64-*linux*) case `/usr/bin/file conftest.o` in *x86-64*) LD="${LD-ld} -m elf32_x86_64" ;; *) LD="${LD-ld} -m elf_i386" ;; esac ;; powerpc64le-*linux*) LD="${LD-ld} -m elf32lppclinux" ;; powerpc64-*linux*) LD="${LD-ld} -m elf32ppclinux" ;; s390x-*linux*) LD="${LD-ld} -m elf_s390" ;; sparc64-*linux*) LD="${LD-ld} -m elf32_sparc" ;; esac ;; *64-bit*) case $host in x86_64-*kfreebsd*-gnu) LD="${LD-ld} -m elf_x86_64_fbsd" ;; x86_64-*linux*) LD="${LD-ld} -m elf_x86_64" ;; powerpcle-*linux*) LD="${LD-ld} -m elf64lppc" ;; powerpc-*linux*) LD="${LD-ld} -m elf64ppc" ;; s390*-*linux*|s390*-*tpf*) LD="${LD-ld} -m elf64_s390" ;; sparc*-*linux*) LD="${LD-ld} -m elf64_sparc" ;; esac ;; esac fi rm -rf conftest* ;; *-*-sco3.2v5*) # On SCO OpenServer 5, we need -belf to get full-featured binaries. SAVE_CFLAGS=$CFLAGS CFLAGS="$CFLAGS -belf" AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf, [AC_LANG_PUSH(C) AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no]) AC_LANG_POP]) if test yes != "$lt_cv_cc_needs_belf"; then # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf CFLAGS=$SAVE_CFLAGS fi ;; *-*solaris*) # Find out what ABI is being produced by ac_compile, and set linker # options accordingly. echo 'int i;' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then case `/usr/bin/file conftest.o` in *64-bit*) case $lt_cv_prog_gnu_ld in yes*) case $host in i?86-*-solaris*|x86_64-*-solaris*) LD="${LD-ld} -m elf_x86_64" ;; sparc*-*-solaris*) LD="${LD-ld} -m elf64_sparc" ;; esac # GNU ld 2.21 introduced _sol2 emulations. Use them if available. if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then LD=${LD-ld}_sol2 fi ;; *) if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then LD="${LD-ld} -64" fi ;; esac ;; esac fi rm -rf conftest* ;; esac need_locks=$enable_libtool_lock ])# _LT_ENABLE_LOCK # _LT_PROG_AR # ----------- m4_defun([_LT_PROG_AR], [AC_CHECK_TOOLS(AR, [ar], false) : ${AR=ar} : ${AR_FLAGS=cru} _LT_DECL([], [AR], [1], [The archiver]) _LT_DECL([], [AR_FLAGS], [1], [Flags to create an archive]) AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file], [lt_cv_ar_at_file=no AC_COMPILE_IFELSE([AC_LANG_PROGRAM], [echo conftest.$ac_objext > conftest.lst lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD' AC_TRY_EVAL([lt_ar_try]) if test 0 -eq "$ac_status"; then # Ensure the archiver fails upon bogus file names. rm -f conftest.$ac_objext libconftest.a AC_TRY_EVAL([lt_ar_try]) if test 0 -ne "$ac_status"; then lt_cv_ar_at_file=@ fi fi rm -f conftest.* libconftest.a ]) ]) if test no = "$lt_cv_ar_at_file"; then archiver_list_spec= else archiver_list_spec=$lt_cv_ar_at_file fi _LT_DECL([], [archiver_list_spec], [1], [How to feed a file listing to the archiver]) ])# _LT_PROG_AR # _LT_CMD_OLD_ARCHIVE # ------------------- m4_defun([_LT_CMD_OLD_ARCHIVE], [_LT_PROG_AR AC_CHECK_TOOL(STRIP, strip, :) test -z "$STRIP" && STRIP=: _LT_DECL([], [STRIP], [1], [A symbol stripping program]) AC_CHECK_TOOL(RANLIB, ranlib, :) test -z "$RANLIB" && RANLIB=: _LT_DECL([], [RANLIB], [1], [Commands used to install an old-style archive]) # Determine commands to create old-style static archives. old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs' old_postinstall_cmds='chmod 644 $oldlib' old_postuninstall_cmds= if test -n "$RANLIB"; then case $host_os in bitrig* | openbsd*) old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib" ;; *) old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib" ;; esac old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib" fi case $host_os in darwin*) lock_old_archive_extraction=yes ;; *) lock_old_archive_extraction=no ;; esac _LT_DECL([], [old_postinstall_cmds], [2]) _LT_DECL([], [old_postuninstall_cmds], [2]) _LT_TAGDECL([], [old_archive_cmds], [2], [Commands used to build an old-style archive]) _LT_DECL([], [lock_old_archive_extraction], [0], [Whether to use a lock for old archive extraction]) ])# _LT_CMD_OLD_ARCHIVE # _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, # [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE]) # ---------------------------------------------------------------- # Check whether the given compiler option works AC_DEFUN([_LT_COMPILER_OPTION], [m4_require([_LT_FILEUTILS_DEFAULTS])dnl m4_require([_LT_DECL_SED])dnl AC_CACHE_CHECK([$1], [$2], [$2=no m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4]) echo "$lt_simple_compile_test_code" > conftest.$ac_ext lt_compiler_flag="$3" ## exclude from sc_useless_quotes_in_assignment # Insert the option either (1) after the last *FLAGS variable, or # (2) before a word containing "conftest.", or (3) at the end. # Note that $ac_compile itself does not contain backslashes and begins # with a dollar sign (not a hyphen), so the echo should work correctly. # The option is referenced via a variable to avoid confusing sed. lt_compile=`echo "$ac_compile" | $SED \ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&AS_MESSAGE_LOG_FD echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then $2=yes fi fi $RM conftest* ]) if test yes = "[$]$2"; then m4_if([$5], , :, [$5]) else m4_if([$6], , :, [$6]) fi ])# _LT_COMPILER_OPTION # Old name: AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], []) # _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, # [ACTION-SUCCESS], [ACTION-FAILURE]) # ---------------------------------------------------- # Check whether the given linker option works AC_DEFUN([_LT_LINKER_OPTION], [m4_require([_LT_FILEUTILS_DEFAULTS])dnl m4_require([_LT_DECL_SED])dnl AC_CACHE_CHECK([$1], [$2], [$2=no save_LDFLAGS=$LDFLAGS LDFLAGS="$LDFLAGS $3" echo "$lt_simple_link_test_code" > conftest.$ac_ext if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then # The linker can only warn and ignore the option if not recognized # So say no if there are warnings if test -s conftest.err; then # Append any errors to the config.log. cat conftest.err 1>&AS_MESSAGE_LOG_FD $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 if diff conftest.exp conftest.er2 >/dev/null; then $2=yes fi else $2=yes fi fi $RM -r conftest* LDFLAGS=$save_LDFLAGS ]) if test yes = "[$]$2"; then m4_if([$4], , :, [$4]) else m4_if([$5], , :, [$5]) fi ])# _LT_LINKER_OPTION # Old name: AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], []) # LT_CMD_MAX_LEN #--------------- AC_DEFUN([LT_CMD_MAX_LEN], [AC_REQUIRE([AC_CANONICAL_HOST])dnl # find the maximum length of command line arguments AC_MSG_CHECKING([the maximum length of command line arguments]) AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl i=0 teststring=ABCD case $build_os in msdosdjgpp*) # On DJGPP, this test can blow up pretty badly due to problems in libc # (any single argument exceeding 2000 bytes causes a buffer overrun # during glob expansion). Even if it were fixed, the result of this # check would be larger than it should be. lt_cv_sys_max_cmd_len=12288; # 12K is about right ;; gnu*) # Under GNU Hurd, this test is not required because there is # no limit to the length of command line arguments. # Libtool will interpret -1 as no limit whatsoever lt_cv_sys_max_cmd_len=-1; ;; cygwin* | mingw* | cegcc*) # On Win9x/ME, this test blows up -- it succeeds, but takes # about 5 minutes as the teststring grows exponentially. # Worse, since 9x/ME are not pre-emptively multitasking, # you end up with a "frozen" computer, even though with patience # the test eventually succeeds (with a max line length of 256k). # Instead, let's just punt: use the minimum linelength reported by # all of the supported platforms: 8192 (on NT/2K/XP). lt_cv_sys_max_cmd_len=8192; ;; mint*) # On MiNT this can take a long time and run out of memory. lt_cv_sys_max_cmd_len=8192; ;; amigaos*) # On AmigaOS with pdksh, this test takes hours, literally. # So we just punt and use a minimum line length of 8192. lt_cv_sys_max_cmd_len=8192; ;; bitrig* | darwin* | dragonfly* | freebsd* | netbsd* | openbsd*) # This has been around since 386BSD, at least. Likely further. if test -x /sbin/sysctl; then lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax` elif test -x /usr/sbin/sysctl; then lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax` else lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs fi # And add a safety zone lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` ;; interix*) # We know the value 262144 and hardcode it with a safety zone (like BSD) lt_cv_sys_max_cmd_len=196608 ;; os2*) # The test takes a long time on OS/2. lt_cv_sys_max_cmd_len=8192 ;; osf*) # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not # nice to cause kernel panics so lets avoid the loop below. # First set a reasonable default. lt_cv_sys_max_cmd_len=16384 # if test -x /sbin/sysconfig; then case `/sbin/sysconfig -q proc exec_disable_arg_limit` in *1*) lt_cv_sys_max_cmd_len=-1 ;; esac fi ;; sco3.2v5*) lt_cv_sys_max_cmd_len=102400 ;; sysv5* | sco5v6* | sysv4.2uw2*) kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null` if test -n "$kargmax"; then lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'` else lt_cv_sys_max_cmd_len=32768 fi ;; *) lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null` if test -n "$lt_cv_sys_max_cmd_len" && \ test undefined != "$lt_cv_sys_max_cmd_len"; then lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` else # Make teststring a little bigger before we do anything with it. # a 1K string should be a reasonable start. for i in 1 2 3 4 5 6 7 8; do teststring=$teststring$teststring done SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}} # If test is not a shell built-in, we'll probably end up computing a # maximum length that is only half of the actual maximum length, but # we can't tell. while { test X`env echo "$teststring$teststring" 2>/dev/null` \ = "X$teststring$teststring"; } >/dev/null 2>&1 && test 17 != "$i" # 1/2 MB should be enough do i=`expr $i + 1` teststring=$teststring$teststring done # Only check the string length outside the loop. lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1` teststring= # Add a significant safety factor because C++ compilers can tack on # massive amounts of additional arguments before passing them to the # linker. It appears as though 1/2 is a usable value. lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2` fi ;; esac ]) if test -n "$lt_cv_sys_max_cmd_len"; then AC_MSG_RESULT($lt_cv_sys_max_cmd_len) else AC_MSG_RESULT(none) fi max_cmd_len=$lt_cv_sys_max_cmd_len _LT_DECL([], [max_cmd_len], [0], [What is the maximum length of a command?]) ])# LT_CMD_MAX_LEN # Old name: AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], []) # _LT_HEADER_DLFCN # ---------------- m4_defun([_LT_HEADER_DLFCN], [AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl ])# _LT_HEADER_DLFCN # _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE, # ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING) # ---------------------------------------------------------------- m4_defun([_LT_TRY_DLOPEN_SELF], [m4_require([_LT_HEADER_DLFCN])dnl if test yes = "$cross_compiling"; then : [$4] else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF [#line $LINENO "configure" #include "confdefs.h" #if HAVE_DLFCN_H #include #endif #include #ifdef RTLD_GLOBAL # define LT_DLGLOBAL RTLD_GLOBAL #else # ifdef DL_GLOBAL # define LT_DLGLOBAL DL_GLOBAL # else # define LT_DLGLOBAL 0 # endif #endif /* We may have to define LT_DLLAZY_OR_NOW in the command line if we find out it does not work in some platform. */ #ifndef LT_DLLAZY_OR_NOW # ifdef RTLD_LAZY # define LT_DLLAZY_OR_NOW RTLD_LAZY # else # ifdef DL_LAZY # define LT_DLLAZY_OR_NOW DL_LAZY # else # ifdef RTLD_NOW # define LT_DLLAZY_OR_NOW RTLD_NOW # else # ifdef DL_NOW # define LT_DLLAZY_OR_NOW DL_NOW # else # define LT_DLLAZY_OR_NOW 0 # endif # endif # endif # endif #endif /* When -fvisibility=hidden is used, assume the code has been annotated correspondingly for the symbols needed. */ #if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) int fnord () __attribute__((visibility("default"))); #endif int fnord () { return 42; } int main () { void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); int status = $lt_dlunknown; if (self) { if (dlsym (self,"fnord")) status = $lt_dlno_uscore; else { if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; else puts (dlerror ()); } /* dlclose (self); */ } else puts (dlerror ()); return status; }] _LT_EOF if AC_TRY_EVAL(ac_link) && test -s "conftest$ac_exeext" 2>/dev/null; then (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null lt_status=$? case x$lt_status in x$lt_dlno_uscore) $1 ;; x$lt_dlneed_uscore) $2 ;; x$lt_dlunknown|x*) $3 ;; esac else : # compilation failed $3 fi fi rm -fr conftest* ])# _LT_TRY_DLOPEN_SELF # LT_SYS_DLOPEN_SELF # ------------------ AC_DEFUN([LT_SYS_DLOPEN_SELF], [m4_require([_LT_HEADER_DLFCN])dnl if test yes != "$enable_dlopen"; then enable_dlopen=unknown enable_dlopen_self=unknown enable_dlopen_self_static=unknown else lt_cv_dlopen=no lt_cv_dlopen_libs= case $host_os in beos*) lt_cv_dlopen=load_add_on lt_cv_dlopen_libs= lt_cv_dlopen_self=yes ;; mingw* | pw32* | cegcc*) lt_cv_dlopen=LoadLibrary lt_cv_dlopen_libs= ;; cygwin*) lt_cv_dlopen=dlopen lt_cv_dlopen_libs= ;; darwin*) # if libdl is installed we need to link against it AC_CHECK_LIB([dl], [dlopen], [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl],[ lt_cv_dlopen=dyld lt_cv_dlopen_libs= lt_cv_dlopen_self=yes ]) ;; tpf*) # Don't try to run any link tests for TPF. We know it's impossible # because TPF is a cross-compiler, and we know how we open DSOs. lt_cv_dlopen=dlopen lt_cv_dlopen_libs= lt_cv_dlopen_self=no ;; *) AC_CHECK_FUNC([shl_load], [lt_cv_dlopen=shl_load], [AC_CHECK_LIB([dld], [shl_load], [lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld], [AC_CHECK_FUNC([dlopen], [lt_cv_dlopen=dlopen], [AC_CHECK_LIB([dl], [dlopen], [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl], [AC_CHECK_LIB([svld], [dlopen], [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld], [AC_CHECK_LIB([dld], [dld_link], [lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld]) ]) ]) ]) ]) ]) ;; esac if test no = "$lt_cv_dlopen"; then enable_dlopen=no else enable_dlopen=yes fi case $lt_cv_dlopen in dlopen) save_CPPFLAGS=$CPPFLAGS test yes = "$ac_cv_header_dlfcn_h" && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" save_LDFLAGS=$LDFLAGS wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" save_LIBS=$LIBS LIBS="$lt_cv_dlopen_libs $LIBS" AC_CACHE_CHECK([whether a program can dlopen itself], lt_cv_dlopen_self, [dnl _LT_TRY_DLOPEN_SELF( lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes, lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross) ]) if test yes = "$lt_cv_dlopen_self"; then wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\" AC_CACHE_CHECK([whether a statically linked program can dlopen itself], lt_cv_dlopen_self_static, [dnl _LT_TRY_DLOPEN_SELF( lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross) ]) fi CPPFLAGS=$save_CPPFLAGS LDFLAGS=$save_LDFLAGS LIBS=$save_LIBS ;; esac case $lt_cv_dlopen_self in yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; *) enable_dlopen_self=unknown ;; esac case $lt_cv_dlopen_self_static in yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; *) enable_dlopen_self_static=unknown ;; esac fi _LT_DECL([dlopen_support], [enable_dlopen], [0], [Whether dlopen is supported]) _LT_DECL([dlopen_self], [enable_dlopen_self], [0], [Whether dlopen of programs is supported]) _LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0], [Whether dlopen of statically linked programs is supported]) ])# LT_SYS_DLOPEN_SELF # Old name: AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], []) # _LT_COMPILER_C_O([TAGNAME]) # --------------------------- # Check to see if options -c and -o are simultaneously supported by compiler. # This macro does not hard code the compiler like AC_PROG_CC_C_O. m4_defun([_LT_COMPILER_C_O], [m4_require([_LT_DECL_SED])dnl m4_require([_LT_FILEUTILS_DEFAULTS])dnl m4_require([_LT_TAG_COMPILER])dnl AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext], [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)], [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no $RM -r conftest 2>/dev/null mkdir conftest cd conftest mkdir out echo "$lt_simple_compile_test_code" > conftest.$ac_ext lt_compiler_flag="-o out/conftest2.$ac_objext" # Insert the option either (1) after the last *FLAGS variable, or # (2) before a word containing "conftest.", or (3) at the end. # Note that $ac_compile itself does not contain backslashes and begins # with a dollar sign (not a hyphen), so the echo should work correctly. lt_compile=`echo "$ac_compile" | $SED \ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&AS_MESSAGE_LOG_FD echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes fi fi chmod u+w . 2>&AS_MESSAGE_LOG_FD $RM conftest* # SGI C++ compiler will create directory out/ii_files/ for # template instantiation test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files $RM out/* && rmdir out cd .. $RM -r conftest $RM conftest* ]) _LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1], [Does compiler simultaneously support -c and -o options?]) ])# _LT_COMPILER_C_O # _LT_COMPILER_FILE_LOCKS([TAGNAME]) # ---------------------------------- # Check to see if we can do hard links to lock some files if needed m4_defun([_LT_COMPILER_FILE_LOCKS], [m4_require([_LT_ENABLE_LOCK])dnl m4_require([_LT_FILEUTILS_DEFAULTS])dnl _LT_COMPILER_C_O([$1]) hard_links=nottested if test no = "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" && test no != "$need_locks"; then # do not overwrite the value of need_locks provided by the user AC_MSG_CHECKING([if we can lock with hard links]) hard_links=yes $RM conftest* ln conftest.a conftest.b 2>/dev/null && hard_links=no touch conftest.a ln conftest.a conftest.b 2>&5 || hard_links=no ln conftest.a conftest.b 2>/dev/null && hard_links=no AC_MSG_RESULT([$hard_links]) if test no = "$hard_links"; then AC_MSG_WARN(['$CC' does not support '-c -o', so 'make -j' may be unsafe]) need_locks=warn fi else need_locks=no fi _LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?]) ])# _LT_COMPILER_FILE_LOCKS # _LT_CHECK_OBJDIR # ---------------- m4_defun([_LT_CHECK_OBJDIR], [AC_CACHE_CHECK([for objdir], [lt_cv_objdir], [rm -f .libs 2>/dev/null mkdir .libs 2>/dev/null if test -d .libs; then lt_cv_objdir=.libs else # MS-DOS does not allow filenames that begin with a dot. lt_cv_objdir=_libs fi rmdir .libs 2>/dev/null]) objdir=$lt_cv_objdir _LT_DECL([], [objdir], [0], [The name of the directory that contains temporary libtool files])dnl m4_pattern_allow([LT_OBJDIR])dnl AC_DEFINE_UNQUOTED([LT_OBJDIR], "$lt_cv_objdir/", [Define to the sub-directory where libtool stores uninstalled libraries.]) ])# _LT_CHECK_OBJDIR # _LT_LINKER_HARDCODE_LIBPATH([TAGNAME]) # -------------------------------------- # Check hardcoding attributes. m4_defun([_LT_LINKER_HARDCODE_LIBPATH], [AC_MSG_CHECKING([how to hardcode library paths into programs]) _LT_TAGVAR(hardcode_action, $1)= if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" || test -n "$_LT_TAGVAR(runpath_var, $1)" || test yes = "$_LT_TAGVAR(hardcode_automatic, $1)"; then # We can hardcode non-existent directories. if test no != "$_LT_TAGVAR(hardcode_direct, $1)" && # If the only mechanism to avoid hardcoding is shlibpath_var, we # have to relink, otherwise we might link with an installed library # when we should be linking with a yet-to-be-installed one ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" && test no != "$_LT_TAGVAR(hardcode_minus_L, $1)"; then # Linking always hardcodes the temporary library directory. _LT_TAGVAR(hardcode_action, $1)=relink else # We can link without hardcoding, and we can hardcode nonexisting dirs. _LT_TAGVAR(hardcode_action, $1)=immediate fi else # We cannot hardcode anything, or else we can only hardcode existing # directories. _LT_TAGVAR(hardcode_action, $1)=unsupported fi AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)]) if test relink = "$_LT_TAGVAR(hardcode_action, $1)" || test yes = "$_LT_TAGVAR(inherit_rpath, $1)"; then # Fast installation is not supported enable_fast_install=no elif test yes = "$shlibpath_overrides_runpath" || test no = "$enable_shared"; then # Fast installation is not necessary enable_fast_install=needless fi _LT_TAGDECL([], [hardcode_action], [0], [How to hardcode a shared library path into an executable]) ])# _LT_LINKER_HARDCODE_LIBPATH # _LT_CMD_STRIPLIB # ---------------- m4_defun([_LT_CMD_STRIPLIB], [m4_require([_LT_DECL_EGREP]) striplib= old_striplib= AC_MSG_CHECKING([whether stripping libraries is possible]) if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" test -z "$striplib" && striplib="$STRIP --strip-unneeded" AC_MSG_RESULT([yes]) else # FIXME - insert some real tests, host_os isn't really good enough case $host_os in darwin*) if test -n "$STRIP"; then striplib="$STRIP -x" old_striplib="$STRIP -S" AC_MSG_RESULT([yes]) else AC_MSG_RESULT([no]) fi ;; *) AC_MSG_RESULT([no]) ;; esac fi _LT_DECL([], [old_striplib], [1], [Commands to strip libraries]) _LT_DECL([], [striplib], [1]) ])# _LT_CMD_STRIPLIB # _LT_PREPARE_MUNGE_PATH_LIST # --------------------------- # Make sure func_munge_path_list() is defined correctly. m4_defun([_LT_PREPARE_MUNGE_PATH_LIST], [[# func_munge_path_list VARIABLE PATH # ----------------------------------- # VARIABLE is name of variable containing _space_ separated list of # directories to be munged by the contents of PATH, which is string # having a format: # "DIR[:DIR]:" # string "DIR[ DIR]" will be prepended to VARIABLE # ":DIR[:DIR]" # string "DIR[ DIR]" will be appended to VARIABLE # "DIRP[:DIRP]::[DIRA:]DIRA" # string "DIRP[ DIRP]" will be prepended to VARIABLE and string # "DIRA[ DIRA]" will be appended to VARIABLE # "DIR[:DIR]" # VARIABLE will be replaced by "DIR[ DIR]" func_munge_path_list () { case x@S|@2 in x) ;; *:) eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'` \@S|@@S|@1\" ;; x:*) eval @S|@1=\"\@S|@@S|@1 `$ECHO @S|@2 | $SED 's/:/ /g'`\" ;; *::*) eval @S|@1=\"\@S|@@S|@1\ `$ECHO @S|@2 | $SED -e 's/.*:://' -e 's/:/ /g'`\" eval @S|@1=\"`$ECHO @S|@2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \@S|@@S|@1\" ;; *) eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'`\" ;; esac } ]])# _LT_PREPARE_PATH_LIST # _LT_SYS_DYNAMIC_LINKER([TAG]) # ----------------------------- # PORTME Fill in your ld.so characteristics m4_defun([_LT_SYS_DYNAMIC_LINKER], [AC_REQUIRE([AC_CANONICAL_HOST])dnl m4_require([_LT_DECL_EGREP])dnl m4_require([_LT_FILEUTILS_DEFAULTS])dnl m4_require([_LT_DECL_OBJDUMP])dnl m4_require([_LT_DECL_SED])dnl m4_require([_LT_CHECK_SHELL_FEATURES])dnl m4_require([_LT_PREPARE_MUNGE_PATH_LIST])dnl AC_MSG_CHECKING([dynamic linker characteristics]) m4_if([$1], [], [ if test yes = "$GCC"; then case $host_os in darwin*) lt_awk_arg='/^libraries:/,/LR/' ;; *) lt_awk_arg='/^libraries:/' ;; esac case $host_os in mingw* | cegcc*) lt_sed_strip_eq='s|=\([[A-Za-z]]:\)|\1|g' ;; *) lt_sed_strip_eq='s|=/|/|g' ;; esac lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq` case $lt_search_path_spec in *\;*) # if the path contains ";" then we assume it to be the separator # otherwise default to the standard path separator (i.e. ":") - it is # assumed that no part of a normal pathname contains ";" but that should # okay in the real world where ";" in dirpaths is itself problematic. lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'` ;; *) lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"` ;; esac # Ok, now we have the path, separated by spaces, we can step through it # and add multilib dir if necessary... lt_tmp_lt_search_path_spec= lt_multi_os_dir=/`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null` # ...but if some path component already ends with the multilib dir we assume # that all is fine and trust -print-search-dirs as is (GCC 4.2? or newer). case "$lt_multi_os_dir; $lt_search_path_spec " in "/; "* | "/.; "* | "/./; "* | *"$lt_multi_os_dir "* | *"$lt_multi_os_dir/ "*) lt_multi_os_dir= ;; esac for lt_sys_path in $lt_search_path_spec; do if test -d "$lt_sys_path$lt_multi_os_dir"; then lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path$lt_multi_os_dir" elif test -n "$lt_multi_os_dir"; then test -d "$lt_sys_path" && \ lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path" fi done lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk ' BEGIN {RS = " "; FS = "/|\n";} { lt_foo = ""; lt_count = 0; for (lt_i = NF; lt_i > 0; lt_i--) { if ($lt_i != "" && $lt_i != ".") { if ($lt_i == "..") { lt_count++; } else { if (lt_count == 0) { lt_foo = "/" $lt_i lt_foo; } else { lt_count--; } } } } if (lt_foo != "") { lt_freq[[lt_foo]]++; } if (lt_freq[[lt_foo]] == 1) { print lt_foo; } }'` # AWK program above erroneously prepends '/' to C:/dos/paths # for these hosts. case $host_os in mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\ $SED 's|/\([[A-Za-z]]:\)|\1|g'` ;; esac sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP` else sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" fi]) library_names_spec= libname_spec='lib$name' soname_spec= shrext_cmds=.so postinstall_cmds= postuninstall_cmds= finish_cmds= finish_eval= shlibpath_var= shlibpath_overrides_runpath=unknown version_type=none dynamic_linker="$host_os ld.so" sys_lib_dlsearch_path_spec="/lib /usr/lib" need_lib_prefix=unknown hardcode_into_libs=no # when you set need_version to no, make sure it does not cause -set_version # flags to be left without arguments need_version=unknown AC_ARG_VAR([LT_SYS_LIBRARY_PATH], [User-defined run-time library search path.]) case $host_os in aix3*) version_type=linux # correct to gnu/linux during the next big refactor library_names_spec='$libname$release$shared_ext$versuffix $libname.a' shlibpath_var=LIBPATH # AIX 3 has no versioning support, so we append a major version to the name. soname_spec='$libname$release$shared_ext$major' ;; aix[[4-9]]*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no hardcode_into_libs=yes if test ia64 = "$host_cpu"; then # AIX 5 supports IA64 library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext' shlibpath_var=LD_LIBRARY_PATH else # With GCC up to 2.95.x, collect2 would create an import file # for dependence libraries. The import file would start with # the line '#! .'. This would cause the generated library to # depend on '.', always an invalid library. This was fixed in # development snapshots of GCC prior to 3.0. case $host_os in aix4 | aix4.[[01]] | aix4.[[01]].*) if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' echo ' yes ' echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then : else can_build_shared=no fi ;; esac # Using Import Files as archive members, it is possible to support # filename-based versioning of shared library archives on AIX. While # this would work for both with and without runtime linking, it will # prevent static linking of such archives. So we do filename-based # shared library versioning with .so extension only, which is used # when both runtime linking and shared linking is enabled. # Unfortunately, runtime linking may impact performance, so we do # not want this to be the default eventually. Also, we use the # versioned .so libs for executables only if there is the -brtl # linker flag in LDFLAGS as well, or --with-aix-soname=svr4 only. # To allow for filename-based versioning support, we need to create # libNAME.so.V as an archive file, containing: # *) an Import File, referring to the versioned filename of the # archive as well as the shared archive member, telling the # bitwidth (32 or 64) of that shared object, and providing the # list of exported symbols of that shared object, eventually # decorated with the 'weak' keyword # *) the shared object with the F_LOADONLY flag set, to really avoid # it being seen by the linker. # At run time we better use the real file rather than another symlink, # but for link time we create the symlink libNAME.so -> libNAME.so.V case $with_aix_soname,$aix_use_runtimelinking in # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct # soname into executable. Probably we can add versioning support to # collect2, so additional links can be useful in future. aix,yes) # traditional libtool dynamic_linker='AIX unversionable lib.so' # If using run time linking (on AIX 4.2 or later) use lib.so # instead of lib.a to let people know that these are not # typical AIX shared libraries. library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' ;; aix,no) # traditional AIX only dynamic_linker='AIX lib.a[(]lib.so.V[)]' # We preserve .a as extension for shared libraries through AIX4.2 # and later when we are not doing run time linking. library_names_spec='$libname$release.a $libname.a' soname_spec='$libname$release$shared_ext$major' ;; svr4,*) # full svr4 only dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)]" library_names_spec='$libname$release$shared_ext$major $libname$shared_ext' # We do not specify a path in Import Files, so LIBPATH fires. shlibpath_overrides_runpath=yes ;; *,yes) # both, prefer svr4 dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)], lib.a[(]lib.so.V[)]" library_names_spec='$libname$release$shared_ext$major $libname$shared_ext' # unpreferred sharedlib libNAME.a needs extra handling postinstall_cmds='test -n "$linkname" || linkname="$realname"~func_stripname "" ".so" "$linkname"~$install_shared_prog "$dir/$func_stripname_result.$libext" "$destdir/$func_stripname_result.$libext"~test -z "$tstripme" || test -z "$striplib" || $striplib "$destdir/$func_stripname_result.$libext"' postuninstall_cmds='for n in $library_names $old_library; do :; done~func_stripname "" ".so" "$n"~test "$func_stripname_result" = "$n" || func_append rmfiles " $odir/$func_stripname_result.$libext"' # We do not specify a path in Import Files, so LIBPATH fires. shlibpath_overrides_runpath=yes ;; *,no) # both, prefer aix dynamic_linker="AIX lib.a[(]lib.so.V[)], lib.so.V[(]$shared_archive_member_spec.o[)]" library_names_spec='$libname$release.a $libname.a' soname_spec='$libname$release$shared_ext$major' # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling postinstall_cmds='test -z "$dlname" || $install_shared_prog $dir/$dlname $destdir/$dlname~test -z "$tstripme" || test -z "$striplib" || $striplib $destdir/$dlname~test -n "$linkname" || linkname=$realname~func_stripname "" ".a" "$linkname"~(cd "$destdir" && $LN_S -f $dlname $func_stripname_result.so)' postuninstall_cmds='test -z "$dlname" || func_append rmfiles " $odir/$dlname"~for n in $old_library $library_names; do :; done~func_stripname "" ".a" "$n"~func_append rmfiles " $odir/$func_stripname_result.so"' ;; esac shlibpath_var=LIBPATH fi ;; amigaos*) case $host_cpu in powerpc) # Since July 2007 AmigaOS4 officially supports .so libraries. # When compiling the executable, add -use-dynld -Lsobjs: to the compileline. library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' ;; m68k) library_names_spec='$libname.ixlibrary $libname.a' # Create ${libname}_ixlibrary.a entries in /sys/libs. finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' ;; esac ;; beos*) library_names_spec='$libname$shared_ext' dynamic_linker="$host_os ld.so" shlibpath_var=LIBRARY_PATH ;; bsdi[[45]]*) version_type=linux # correct to gnu/linux during the next big refactor need_version=no library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' soname_spec='$libname$release$shared_ext$major' finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' shlibpath_var=LD_LIBRARY_PATH sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" # the default ld.so.conf also contains /usr/contrib/lib and # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow # libtool to hard-code these into programs ;; cygwin* | mingw* | pw32* | cegcc*) version_type=windows shrext_cmds=.dll need_version=no need_lib_prefix=no case $GCC,$cc_basename in yes,*) # gcc library_names_spec='$libname.dll.a' # DLL is installed to $(libdir)/../bin by postinstall_cmds postinstall_cmds='base_file=`basename \$file`~ dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~ dldir=$destdir/`dirname \$dlpath`~ test -d \$dldir || mkdir -p \$dldir~ $install_prog $dir/$dlname \$dldir/$dlname~ chmod a+x \$dldir/$dlname~ if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; fi' postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ dlpath=$dir/\$dldll~ $RM \$dlpath' shlibpath_overrides_runpath=yes case $host_os in cygwin*) # Cygwin DLLs use 'cyg' prefix rather than 'lib' soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' m4_if([$1], [],[ sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"]) ;; mingw* | cegcc*) # MinGW DLLs use traditional 'lib' prefix soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' ;; pw32*) # pw32 DLLs use 'pw' prefix rather than 'lib' library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' ;; esac dynamic_linker='Win32 ld.exe' ;; *,cl*) # Native MSVC libname_spec='$name' soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' library_names_spec='$libname.dll.lib' case $build_os in mingw*) sys_lib_search_path_spec= lt_save_ifs=$IFS IFS=';' for lt_path in $LIB do IFS=$lt_save_ifs # Let DOS variable expansion print the short 8.3 style file name. lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"` sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path" done IFS=$lt_save_ifs # Convert to MSYS style. sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'` ;; cygwin*) # Convert to unix form, then to dos form, then back to unix form # but this time dos style (no spaces!) so that the unix form looks # like /cygdrive/c/PROGRA~1:/cygdr... sys_lib_search_path_spec=`cygpath --path --unix "$LIB"` sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null` sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` ;; *) sys_lib_search_path_spec=$LIB if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then # It is most probably a Windows format PATH. sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` else sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` fi # FIXME: find the short name or the path components, as spaces are # common. (e.g. "Program Files" -> "PROGRA~1") ;; esac # DLL is installed to $(libdir)/../bin by postinstall_cmds postinstall_cmds='base_file=`basename \$file`~ dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~ dldir=$destdir/`dirname \$dlpath`~ test -d \$dldir || mkdir -p \$dldir~ $install_prog $dir/$dlname \$dldir/$dlname' postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ dlpath=$dir/\$dldll~ $RM \$dlpath' shlibpath_overrides_runpath=yes dynamic_linker='Win32 link.exe' ;; *) # Assume MSVC wrapper library_names_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext $libname.lib' dynamic_linker='Win32 ld.exe' ;; esac # FIXME: first we should search . and the directory the executable is in shlibpath_var=PATH ;; darwin* | rhapsody*) dynamic_linker="$host_os dyld" version_type=darwin need_lib_prefix=no need_version=no library_names_spec='$libname$release$major$shared_ext $libname$shared_ext' soname_spec='$libname$release$major$shared_ext' shlibpath_overrides_runpath=yes shlibpath_var=DYLD_LIBRARY_PATH shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`' m4_if([$1], [],[ sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"]) sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib' ;; dgux*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' soname_spec='$libname$release$shared_ext$major' shlibpath_var=LD_LIBRARY_PATH ;; freebsd* | dragonfly*) # DragonFly does not have aout. When/if they implement a new # versioning mechanism, adjust this. if test -x /usr/bin/objformat; then objformat=`/usr/bin/objformat` else case $host_os in freebsd[[23]].*) objformat=aout ;; *) objformat=elf ;; esac fi version_type=freebsd-$objformat case $version_type in freebsd-elf*) library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' soname_spec='$libname$release$shared_ext$major' need_version=no need_lib_prefix=no ;; freebsd-*) library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' need_version=yes ;; esac shlibpath_var=LD_LIBRARY_PATH case $host_os in freebsd2.*) shlibpath_overrides_runpath=yes ;; freebsd3.[[01]]* | freebsdelf3.[[01]]*) shlibpath_overrides_runpath=yes hardcode_into_libs=yes ;; freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \ freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1) shlibpath_overrides_runpath=no hardcode_into_libs=yes ;; *) # from 4.6 on, and DragonFly shlibpath_overrides_runpath=yes hardcode_into_libs=yes ;; esac ;; haiku*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no dynamic_linker="$host_os runtime_loader" library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' soname_spec='$libname$release$shared_ext$major' shlibpath_var=LIBRARY_PATH shlibpath_overrides_runpath=no sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib' hardcode_into_libs=yes ;; hpux9* | hpux10* | hpux11*) # Give a soname corresponding to the major version so that dld.sl refuses to # link against other versions. version_type=sunos need_lib_prefix=no need_version=no case $host_cpu in ia64*) shrext_cmds='.so' hardcode_into_libs=yes dynamic_linker="$host_os dld.so" shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' soname_spec='$libname$release$shared_ext$major' if test 32 = "$HPUX_IA64_MODE"; then sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" sys_lib_dlsearch_path_spec=/usr/lib/hpux32 else sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" sys_lib_dlsearch_path_spec=/usr/lib/hpux64 fi ;; hppa*64*) shrext_cmds='.sl' hardcode_into_libs=yes dynamic_linker="$host_os dld.sl" shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' soname_spec='$libname$release$shared_ext$major' sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec ;; *) shrext_cmds='.sl' dynamic_linker="$host_os dld.sl" shlibpath_var=SHLIB_PATH shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' soname_spec='$libname$release$shared_ext$major' ;; esac # HP-UX runs *really* slowly unless shared libraries are mode 555, ... postinstall_cmds='chmod 555 $lib' # or fails outright, so override atomically: install_override_mode=555 ;; interix[[3-9]]*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' soname_spec='$libname$release$shared_ext$major' dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes ;; irix5* | irix6* | nonstopux*) case $host_os in nonstopux*) version_type=nonstopux ;; *) if test yes = "$lt_cv_prog_gnu_ld"; then version_type=linux # correct to gnu/linux during the next big refactor else version_type=irix fi ;; esac need_lib_prefix=no need_version=no soname_spec='$libname$release$shared_ext$major' library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext' case $host_os in irix5* | nonstopux*) libsuff= shlibsuff= ;; *) case $LD in # libtool.m4 will add one of these switches to LD *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") libsuff= shlibsuff= libmagic=32-bit;; *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") libsuff=32 shlibsuff=N32 libmagic=N32;; *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") libsuff=64 shlibsuff=64 libmagic=64-bit;; *) libsuff= shlibsuff= libmagic=never-match;; esac ;; esac shlibpath_var=LD_LIBRARY${shlibsuff}_PATH shlibpath_overrides_runpath=no sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff" sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff" hardcode_into_libs=yes ;; # No shared lib support for Linux oldld, aout, or coff. linux*oldld* | linux*aout* | linux*coff*) dynamic_linker=no ;; linux*android*) version_type=none # Android doesn't support versioned libraries. need_lib_prefix=no need_version=no library_names_spec='$libname$release$shared_ext' soname_spec='$libname$release$shared_ext' finish_cmds= shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes # This implies no fast_install, which is unacceptable. # Some rework will be needed to allow for fast_install # before this can be enabled. hardcode_into_libs=yes dynamic_linker='Android linker' # Don't embed -rpath directories since the linker doesn't support them. _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' ;; # This must be glibc/ELF. linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' soname_spec='$libname$release$shared_ext$major' finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no # Some binutils ld are patched to set DT_RUNPATH AC_CACHE_VAL([lt_cv_shlibpath_overrides_runpath], [lt_cv_shlibpath_overrides_runpath=no save_LDFLAGS=$LDFLAGS save_libdir=$libdir eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \ LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\"" AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])], [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null], [lt_cv_shlibpath_overrides_runpath=yes])]) LDFLAGS=$save_LDFLAGS libdir=$save_libdir ]) shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath # This implies no fast_install, which is unacceptable. # Some rework will be needed to allow for fast_install # before this can be enabled. hardcode_into_libs=yes # Ideally, we could use ldconfig to report *all* directores which are # searched for libraries, however this is still not possible. Aside from not # being certain /sbin/ldconfig is available, command # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64, # even though it is searched at run-time. Try to do the best guess by # appending ld.so.conf contents (and includes) to the search path. if test -f /etc/ld.so.conf; then lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '` sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" fi # We used to test for /lib/ld.so.1 and disable shared libraries on # powerpc, because MkLinux only supported shared libraries with the # GNU dynamic linker. Since this was broken with cross compilers, # most powerpc-linux boxes support dynamic linking these days and # people can always --disable-shared, the test was removed, and we # assume the GNU/Linux dynamic linker is in use. dynamic_linker='GNU/Linux ld.so' ;; netbsdelf*-gnu) version_type=linux need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes dynamic_linker='NetBSD ld.elf_so' ;; netbsd*) version_type=sunos need_lib_prefix=no need_version=no if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' dynamic_linker='NetBSD (a.out) ld.so' else library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' soname_spec='$libname$release$shared_ext$major' dynamic_linker='NetBSD ld.elf_so' fi shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes hardcode_into_libs=yes ;; newsos6) version_type=linux # correct to gnu/linux during the next big refactor library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes ;; *nto* | *qnx*) version_type=qnx need_lib_prefix=no need_version=no library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' soname_spec='$libname$release$shared_ext$major' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes dynamic_linker='ldqnx.so' ;; openbsd* | bitrig*) version_type=sunos sys_lib_dlsearch_path_spec=/usr/lib need_lib_prefix=no if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then need_version=no else need_version=yes fi library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes ;; os2*) libname_spec='$name' version_type=windows shrext_cmds=.dll need_version=no need_lib_prefix=no # OS/2 can only load a DLL with a base name of 8 characters or less. soname_spec='`test -n "$os2dllname" && libname="$os2dllname"; v=$($ECHO $release$versuffix | tr -d .-); n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _); $ECHO $n$v`$shared_ext' library_names_spec='${libname}_dll.$libext' dynamic_linker='OS/2 ld.exe' shlibpath_var=BEGINLIBPATH sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec postinstall_cmds='base_file=`basename \$file`~ dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~ dldir=$destdir/`dirname \$dlpath`~ test -d \$dldir || mkdir -p \$dldir~ $install_prog $dir/$dlname \$dldir/$dlname~ chmod a+x \$dldir/$dlname~ if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; fi' postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~ dlpath=$dir/\$dldll~ $RM \$dlpath' ;; osf3* | osf4* | osf5*) version_type=osf need_lib_prefix=no need_version=no soname_spec='$libname$release$shared_ext$major' library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' shlibpath_var=LD_LIBRARY_PATH sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec ;; rdos*) dynamic_linker=no ;; solaris*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' soname_spec='$libname$release$shared_ext$major' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes hardcode_into_libs=yes # ldd complains unless libraries are executable postinstall_cmds='chmod +x $lib' ;; sunos4*) version_type=sunos library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes if test yes = "$with_gnu_ld"; then need_lib_prefix=no fi need_version=yes ;; sysv4 | sysv4.3*) version_type=linux # correct to gnu/linux during the next big refactor library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' soname_spec='$libname$release$shared_ext$major' shlibpath_var=LD_LIBRARY_PATH case $host_vendor in sni) shlibpath_overrides_runpath=no need_lib_prefix=no runpath_var=LD_RUN_PATH ;; siemens) need_lib_prefix=no ;; motorola) need_lib_prefix=no need_version=no shlibpath_overrides_runpath=no sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' ;; esac ;; sysv4*MP*) if test -d /usr/nec; then version_type=linux # correct to gnu/linux during the next big refactor library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext' soname_spec='$libname$shared_ext.$major' shlibpath_var=LD_LIBRARY_PATH fi ;; sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) version_type=sco need_lib_prefix=no need_version=no library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext' soname_spec='$libname$release$shared_ext$major' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes hardcode_into_libs=yes if test yes = "$with_gnu_ld"; then sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib' else sys_lib_search_path_spec='/usr/ccs/lib /usr/lib' case $host_os in sco3.2v5*) sys_lib_search_path_spec="$sys_lib_search_path_spec /lib" ;; esac fi sys_lib_dlsearch_path_spec='/usr/lib' ;; tpf*) # TPF is a cross-target only. Preferred cross-host = GNU/Linux. version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes ;; uts4*) version_type=linux # correct to gnu/linux during the next big refactor library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' soname_spec='$libname$release$shared_ext$major' shlibpath_var=LD_LIBRARY_PATH ;; *) dynamic_linker=no ;; esac AC_MSG_RESULT([$dynamic_linker]) test no = "$dynamic_linker" && can_build_shared=no variables_saved_for_relink="PATH $shlibpath_var $runpath_var" if test yes = "$GCC"; then variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" fi if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec fi if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec fi # remember unaugmented sys_lib_dlsearch_path content for libtool script decls... configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec # ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH" # to be used as default LT_SYS_LIBRARY_PATH value in generated libtool configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH _LT_DECL([], [variables_saved_for_relink], [1], [Variables whose values should be saved in libtool wrapper scripts and restored at link time]) _LT_DECL([], [need_lib_prefix], [0], [Do we need the "lib" prefix for modules?]) _LT_DECL([], [need_version], [0], [Do we need a version for libraries?]) _LT_DECL([], [version_type], [0], [Library versioning type]) _LT_DECL([], [runpath_var], [0], [Shared library runtime path variable]) _LT_DECL([], [shlibpath_var], [0],[Shared library path variable]) _LT_DECL([], [shlibpath_overrides_runpath], [0], [Is shlibpath searched before the hard-coded library search path?]) _LT_DECL([], [libname_spec], [1], [Format of library name prefix]) _LT_DECL([], [library_names_spec], [1], [[List of archive names. First name is the real one, the rest are links. The last name is the one that the linker finds with -lNAME]]) _LT_DECL([], [soname_spec], [1], [[The coded name of the library, if different from the real name]]) _LT_DECL([], [install_override_mode], [1], [Permission mode override for installation of shared libraries]) _LT_DECL([], [postinstall_cmds], [2], [Command to use after installation of a shared archive]) _LT_DECL([], [postuninstall_cmds], [2], [Command to use after uninstallation of a shared archive]) _LT_DECL([], [finish_cmds], [2], [Commands used to finish a libtool library installation in a directory]) _LT_DECL([], [finish_eval], [1], [[As "finish_cmds", except a single script fragment to be evaled but not shown]]) _LT_DECL([], [hardcode_into_libs], [0], [Whether we should hardcode library paths into libraries]) _LT_DECL([], [sys_lib_search_path_spec], [2], [Compile-time system search path for libraries]) _LT_DECL([sys_lib_dlsearch_path_spec], [configure_time_dlsearch_path], [2], [Detected run-time system search path for libraries]) _LT_DECL([], [configure_time_lt_sys_library_path], [2], [Explicit LT_SYS_LIBRARY_PATH set during ./configure time]) ])# _LT_SYS_DYNAMIC_LINKER # _LT_PATH_TOOL_PREFIX(TOOL) # -------------------------- # find a file program that can recognize shared library AC_DEFUN([_LT_PATH_TOOL_PREFIX], [m4_require([_LT_DECL_EGREP])dnl AC_MSG_CHECKING([for $1]) AC_CACHE_VAL(lt_cv_path_MAGIC_CMD, [case $MAGIC_CMD in [[\\/*] | ?:[\\/]*]) lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path. ;; *) lt_save_MAGIC_CMD=$MAGIC_CMD lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR dnl $ac_dummy forces splitting on constant user-supplied paths. dnl POSIX.2 word splitting is done only on the output of word expansions, dnl not every word. This closes a longstanding sh security hole. ac_dummy="m4_if([$2], , $PATH, [$2])" for ac_dir in $ac_dummy; do IFS=$lt_save_ifs test -z "$ac_dir" && ac_dir=. if test -f "$ac_dir/$1"; then lt_cv_path_MAGIC_CMD=$ac_dir/"$1" if test -n "$file_magic_test_file"; then case $deplibs_check_method in "file_magic "*) file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"` MAGIC_CMD=$lt_cv_path_MAGIC_CMD if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | $EGREP "$file_magic_regex" > /dev/null; then : else cat <<_LT_EOF 1>&2 *** Warning: the command libtool uses to detect shared libraries, *** $file_magic_cmd, produces output that libtool cannot recognize. *** The result is that libtool may fail to recognize shared libraries *** as such. This will affect the creation of libtool libraries that *** depend on shared libraries, but programs linked with such libtool *** libraries will work regardless of this problem. Nevertheless, you *** may want to report the problem to your system manager and/or to *** bug-libtool@gnu.org _LT_EOF fi ;; esac fi break fi done IFS=$lt_save_ifs MAGIC_CMD=$lt_save_MAGIC_CMD ;; esac]) MAGIC_CMD=$lt_cv_path_MAGIC_CMD if test -n "$MAGIC_CMD"; then AC_MSG_RESULT($MAGIC_CMD) else AC_MSG_RESULT(no) fi _LT_DECL([], [MAGIC_CMD], [0], [Used to examine libraries when file_magic_cmd begins with "file"])dnl ])# _LT_PATH_TOOL_PREFIX # Old name: AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], []) # _LT_PATH_MAGIC # -------------- # find a file program that can recognize a shared library m4_defun([_LT_PATH_MAGIC], [_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH) if test -z "$lt_cv_path_MAGIC_CMD"; then if test -n "$ac_tool_prefix"; then _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH) else MAGIC_CMD=: fi fi ])# _LT_PATH_MAGIC # LT_PATH_LD # ---------- # find the pathname to the GNU or non-GNU linker AC_DEFUN([LT_PATH_LD], [AC_REQUIRE([AC_PROG_CC])dnl AC_REQUIRE([AC_CANONICAL_HOST])dnl AC_REQUIRE([AC_CANONICAL_BUILD])dnl m4_require([_LT_DECL_SED])dnl m4_require([_LT_DECL_EGREP])dnl m4_require([_LT_PROG_ECHO_BACKSLASH])dnl AC_ARG_WITH([gnu-ld], [AS_HELP_STRING([--with-gnu-ld], [assume the C compiler uses GNU ld @<:@default=no@:>@])], [test no = "$withval" || with_gnu_ld=yes], [with_gnu_ld=no])dnl ac_prog=ld if test yes = "$GCC"; then # Check if gcc -print-prog-name=ld gives a path. AC_MSG_CHECKING([for ld used by $CC]) case $host in *-*-mingw*) # gcc leaves a trailing carriage return, which upsets mingw ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; *) ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; esac case $ac_prog in # Accept absolute paths. [[\\/]]* | ?:[[\\/]]*) re_direlt='/[[^/]][[^/]]*/\.\./' # Canonicalize the pathname of ld ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'` while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"` done test -z "$LD" && LD=$ac_prog ;; "") # If it fails, then pretend we aren't using GCC. ac_prog=ld ;; *) # If it is relative, then search for the first ld in PATH. with_gnu_ld=unknown ;; esac elif test yes = "$with_gnu_ld"; then AC_MSG_CHECKING([for GNU ld]) else AC_MSG_CHECKING([for non-GNU ld]) fi AC_CACHE_VAL(lt_cv_path_LD, [if test -z "$LD"; then lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR for ac_dir in $PATH; do IFS=$lt_save_ifs test -z "$ac_dir" && ac_dir=. if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then lt_cv_path_LD=$ac_dir/$ac_prog # Check to see if the program is GNU ld. I'd rather use --version, # but apparently some variants of GNU ld only accept -v. # Break only if it was the GNU/non-GNU ld that we prefer. case `"$lt_cv_path_LD" -v 2>&1 &1 conftest.i cat conftest.i conftest.i >conftest2.i : ${lt_DD:=$DD} AC_PATH_PROGS_FEATURE_CHECK([lt_DD], [dd], [if "$ac_path_lt_DD" bs=32 count=1 conftest.out 2>/dev/null; then cmp -s conftest.i conftest.out \ && ac_cv_path_lt_DD="$ac_path_lt_DD" ac_path_lt_DD_found=: fi]) rm -f conftest.i conftest2.i conftest.out]) ])# _LT_PATH_DD # _LT_CMD_TRUNCATE # ---------------- # find command to truncate a binary pipe m4_defun([_LT_CMD_TRUNCATE], [m4_require([_LT_PATH_DD]) AC_CACHE_CHECK([how to truncate binary pipes], [lt_cv_truncate_bin], [printf 0123456789abcdef0123456789abcdef >conftest.i cat conftest.i conftest.i >conftest2.i lt_cv_truncate_bin= if "$ac_cv_path_lt_DD" bs=32 count=1 conftest.out 2>/dev/null; then cmp -s conftest.i conftest.out \ && lt_cv_truncate_bin="$ac_cv_path_lt_DD bs=4096 count=1" fi rm -f conftest.i conftest2.i conftest.out test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q"]) _LT_DECL([lt_truncate_bin], [lt_cv_truncate_bin], [1], [Command to truncate a binary pipe]) ])# _LT_CMD_TRUNCATE # _LT_CHECK_MAGIC_METHOD # ---------------------- # how to check for library dependencies # -- PORTME fill in with the dynamic library characteristics m4_defun([_LT_CHECK_MAGIC_METHOD], [m4_require([_LT_DECL_EGREP]) m4_require([_LT_DECL_OBJDUMP]) AC_CACHE_CHECK([how to recognize dependent libraries], lt_cv_deplibs_check_method, [lt_cv_file_magic_cmd='$MAGIC_CMD' lt_cv_file_magic_test_file= lt_cv_deplibs_check_method='unknown' # Need to set the preceding variable on all platforms that support # interlibrary dependencies. # 'none' -- dependencies not supported. # 'unknown' -- same as none, but documents that we really don't know. # 'pass_all' -- all dependencies passed with no checks. # 'test_compile' -- check by making test program. # 'file_magic [[regex]]' -- check by looking for files in library path # that responds to the $file_magic_cmd with a given extended regex. # If you have 'file' or equivalent on your system and you're not sure # whether 'pass_all' will *always* work, you probably want this one. case $host_os in aix[[4-9]]*) lt_cv_deplibs_check_method=pass_all ;; beos*) lt_cv_deplibs_check_method=pass_all ;; bsdi[[45]]*) lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)' lt_cv_file_magic_cmd='/usr/bin/file -L' lt_cv_file_magic_test_file=/shlib/libc.so ;; cygwin*) # func_win32_libid is a shell function defined in ltmain.sh lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' lt_cv_file_magic_cmd='func_win32_libid' ;; mingw* | pw32*) # Base MSYS/MinGW do not provide the 'file' command needed by # func_win32_libid shell function, so use a weaker test based on 'objdump', # unless we find 'file', for example because we are cross-compiling. if ( file / ) >/dev/null 2>&1; then lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' lt_cv_file_magic_cmd='func_win32_libid' else # Keep this pattern in sync with the one in func_win32_libid. lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' lt_cv_file_magic_cmd='$OBJDUMP -f' fi ;; cegcc*) # use the weaker test based on 'objdump'. See mingw*. lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?' lt_cv_file_magic_cmd='$OBJDUMP -f' ;; darwin* | rhapsody*) lt_cv_deplibs_check_method=pass_all ;; freebsd* | dragonfly*) if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then case $host_cpu in i*86 ) # Not sure whether the presence of OpenBSD here was a mistake. # Let's accept both of them until this is cleared up. lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library' lt_cv_file_magic_cmd=/usr/bin/file lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` ;; esac else lt_cv_deplibs_check_method=pass_all fi ;; haiku*) lt_cv_deplibs_check_method=pass_all ;; hpux10.20* | hpux11*) lt_cv_file_magic_cmd=/usr/bin/file case $host_cpu in ia64*) lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64' lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so ;; hppa*64*) [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF[ -][0-9][0-9])(-bit)?( [LM]SB)? shared object( file)?[, -]* PA-RISC [0-9]\.[0-9]'] lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl ;; *) lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]]\.[[0-9]]) shared library' lt_cv_file_magic_test_file=/usr/lib/libc.sl ;; esac ;; interix[[3-9]]*) # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$' ;; irix5* | irix6* | nonstopux*) case $LD in *-32|*"-32 ") libmagic=32-bit;; *-n32|*"-n32 ") libmagic=N32;; *-64|*"-64 ") libmagic=64-bit;; *) libmagic=never-match;; esac lt_cv_deplibs_check_method=pass_all ;; # This must be glibc/ELF. linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) lt_cv_deplibs_check_method=pass_all ;; netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' else lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$' fi ;; newos6*) lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)' lt_cv_file_magic_cmd=/usr/bin/file lt_cv_file_magic_test_file=/usr/lib/libnls.so ;; *nto* | *qnx*) lt_cv_deplibs_check_method=pass_all ;; openbsd* | bitrig*) if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$' else lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' fi ;; osf3* | osf4* | osf5*) lt_cv_deplibs_check_method=pass_all ;; rdos*) lt_cv_deplibs_check_method=pass_all ;; solaris*) lt_cv_deplibs_check_method=pass_all ;; sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) lt_cv_deplibs_check_method=pass_all ;; sysv4 | sysv4.3*) case $host_vendor in motorola) lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]' lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` ;; ncr) lt_cv_deplibs_check_method=pass_all ;; sequent) lt_cv_file_magic_cmd='/bin/file' lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' ;; sni) lt_cv_file_magic_cmd='/bin/file' lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib" lt_cv_file_magic_test_file=/lib/libc.so ;; siemens) lt_cv_deplibs_check_method=pass_all ;; pc) lt_cv_deplibs_check_method=pass_all ;; esac ;; tpf*) lt_cv_deplibs_check_method=pass_all ;; os2*) lt_cv_deplibs_check_method=pass_all ;; esac ]) file_magic_glob= want_nocaseglob=no if test "$build" = "$host"; then case $host_os in mingw* | pw32*) if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then want_nocaseglob=yes else file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[[\1]]\/[[\1]]\/g;/g"` fi ;; esac fi file_magic_cmd=$lt_cv_file_magic_cmd deplibs_check_method=$lt_cv_deplibs_check_method test -z "$deplibs_check_method" && deplibs_check_method=unknown _LT_DECL([], [deplibs_check_method], [1], [Method to check whether dependent libraries are shared objects]) _LT_DECL([], [file_magic_cmd], [1], [Command to use when deplibs_check_method = "file_magic"]) _LT_DECL([], [file_magic_glob], [1], [How to find potential files when deplibs_check_method = "file_magic"]) _LT_DECL([], [want_nocaseglob], [1], [Find potential files using nocaseglob when deplibs_check_method = "file_magic"]) ])# _LT_CHECK_MAGIC_METHOD # LT_PATH_NM # ---------- # find the pathname to a BSD- or MS-compatible name lister AC_DEFUN([LT_PATH_NM], [AC_REQUIRE([AC_PROG_CC])dnl AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM, [if test -n "$NM"; then # Let the user override the test. lt_cv_path_NM=$NM else lt_nm_to_check=${ac_tool_prefix}nm if test -n "$ac_tool_prefix" && test "$build" = "$host"; then lt_nm_to_check="$lt_nm_to_check nm" fi for lt_tmp_nm in $lt_nm_to_check; do lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do IFS=$lt_save_ifs test -z "$ac_dir" && ac_dir=. tmp_nm=$ac_dir/$lt_tmp_nm if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext"; then # Check to see if the nm accepts a BSD-compat flag. # Adding the 'sed 1q' prevents false positives on HP-UX, which says: # nm: unknown option "B" ignored # Tru64's nm complains that /dev/null is an invalid object file # MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty case $build_os in mingw*) lt_bad_file=conftest.nm/nofile ;; *) lt_bad_file=/dev/null ;; esac case `"$tmp_nm" -B $lt_bad_file 2>&1 | sed '1q'` in *$lt_bad_file* | *'Invalid file or object type'*) lt_cv_path_NM="$tmp_nm -B" break 2 ;; *) case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in */dev/null*) lt_cv_path_NM="$tmp_nm -p" break 2 ;; *) lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but continue # so that we can try to find one that supports BSD flags ;; esac ;; esac fi done IFS=$lt_save_ifs done : ${lt_cv_path_NM=no} fi]) if test no != "$lt_cv_path_NM"; then NM=$lt_cv_path_NM else # Didn't find any BSD compatible name lister, look for dumpbin. if test -n "$DUMPBIN"; then : # Let the user override the test. else AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :) case `$DUMPBIN -symbols -headers /dev/null 2>&1 | sed '1q'` in *COFF*) DUMPBIN="$DUMPBIN -symbols -headers" ;; *) DUMPBIN=: ;; esac fi AC_SUBST([DUMPBIN]) if test : != "$DUMPBIN"; then NM=$DUMPBIN fi fi test -z "$NM" && NM=nm AC_SUBST([NM]) _LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface], [lt_cv_nm_interface="BSD nm" echo "int some_variable = 0;" > conftest.$ac_ext (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&AS_MESSAGE_LOG_FD) (eval "$ac_compile" 2>conftest.err) cat conftest.err >&AS_MESSAGE_LOG_FD (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD) (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out) cat conftest.err >&AS_MESSAGE_LOG_FD (eval echo "\"\$as_me:$LINENO: output\"" >&AS_MESSAGE_LOG_FD) cat conftest.out >&AS_MESSAGE_LOG_FD if $GREP 'External.*some_variable' conftest.out > /dev/null; then lt_cv_nm_interface="MS dumpbin" fi rm -f conftest*]) ])# LT_PATH_NM # Old names: AU_ALIAS([AM_PROG_NM], [LT_PATH_NM]) AU_ALIAS([AC_PROG_NM], [LT_PATH_NM]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AM_PROG_NM], []) dnl AC_DEFUN([AC_PROG_NM], []) # _LT_CHECK_SHAREDLIB_FROM_LINKLIB # -------------------------------- # how to determine the name of the shared library # associated with a specific link library. # -- PORTME fill in with the dynamic library characteristics m4_defun([_LT_CHECK_SHAREDLIB_FROM_LINKLIB], [m4_require([_LT_DECL_EGREP]) m4_require([_LT_DECL_OBJDUMP]) m4_require([_LT_DECL_DLLTOOL]) AC_CACHE_CHECK([how to associate runtime and link libraries], lt_cv_sharedlib_from_linklib_cmd, [lt_cv_sharedlib_from_linklib_cmd='unknown' case $host_os in cygwin* | mingw* | pw32* | cegcc*) # two different shell functions defined in ltmain.sh; # decide which one to use based on capabilities of $DLLTOOL case `$DLLTOOL --help 2>&1` in *--identify-strict*) lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib ;; *) lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback ;; esac ;; *) # fallback: assume linklib IS sharedlib lt_cv_sharedlib_from_linklib_cmd=$ECHO ;; esac ]) sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO _LT_DECL([], [sharedlib_from_linklib_cmd], [1], [Command to associate shared and link libraries]) ])# _LT_CHECK_SHAREDLIB_FROM_LINKLIB # _LT_PATH_MANIFEST_TOOL # ---------------------- # locate the manifest tool m4_defun([_LT_PATH_MANIFEST_TOOL], [AC_CHECK_TOOL(MANIFEST_TOOL, mt, :) test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt AC_CACHE_CHECK([if $MANIFEST_TOOL is a manifest tool], [lt_cv_path_mainfest_tool], [lt_cv_path_mainfest_tool=no echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&AS_MESSAGE_LOG_FD $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out cat conftest.err >&AS_MESSAGE_LOG_FD if $GREP 'Manifest Tool' conftest.out > /dev/null; then lt_cv_path_mainfest_tool=yes fi rm -f conftest*]) if test yes != "$lt_cv_path_mainfest_tool"; then MANIFEST_TOOL=: fi _LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl ])# _LT_PATH_MANIFEST_TOOL # _LT_DLL_DEF_P([FILE]) # --------------------- # True iff FILE is a Windows DLL '.def' file. # Keep in sync with func_dll_def_p in the libtool script AC_DEFUN([_LT_DLL_DEF_P], [dnl test DEF = "`$SED -n dnl -e '\''s/^[[ ]]*//'\'' dnl Strip leading whitespace -e '\''/^\(;.*\)*$/d'\'' dnl Delete empty lines and comments -e '\''s/^\(EXPORTS\|LIBRARY\)\([[ ]].*\)*$/DEF/p'\'' dnl -e q dnl Only consider the first "real" line $1`" dnl ])# _LT_DLL_DEF_P # LT_LIB_M # -------- # check for math library AC_DEFUN([LT_LIB_M], [AC_REQUIRE([AC_CANONICAL_HOST])dnl LIBM= case $host in *-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-pw32* | *-*-darwin*) # These system don't have libm, or don't need it ;; *-ncr-sysv4.3*) AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM=-lmw) AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm") ;; *) AC_CHECK_LIB(m, cos, LIBM=-lm) ;; esac AC_SUBST([LIBM]) ])# LT_LIB_M # Old name: AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_CHECK_LIBM], []) # _LT_COMPILER_NO_RTTI([TAGNAME]) # ------------------------------- m4_defun([_LT_COMPILER_NO_RTTI], [m4_require([_LT_TAG_COMPILER])dnl _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= if test yes = "$GCC"; then case $cc_basename in nvcc*) _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -Xcompiler -fno-builtin' ;; *) _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' ;; esac _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions], lt_cv_prog_compiler_rtti_exceptions, [-fno-rtti -fno-exceptions], [], [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"]) fi _LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1], [Compiler flag to turn off builtin functions]) ])# _LT_COMPILER_NO_RTTI # _LT_CMD_GLOBAL_SYMBOLS # ---------------------- m4_defun([_LT_CMD_GLOBAL_SYMBOLS], [AC_REQUIRE([AC_CANONICAL_HOST])dnl AC_REQUIRE([AC_PROG_CC])dnl AC_REQUIRE([AC_PROG_AWK])dnl AC_REQUIRE([LT_PATH_NM])dnl AC_REQUIRE([LT_PATH_LD])dnl m4_require([_LT_DECL_SED])dnl m4_require([_LT_DECL_EGREP])dnl m4_require([_LT_TAG_COMPILER])dnl # Check for command to grab the raw symbol name followed by C symbol from nm. AC_MSG_CHECKING([command to parse $NM output from $compiler object]) AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe], [ # These are sane defaults that work on at least a few old systems. # [They come from Ultrix. What could be older than Ultrix?!! ;)] # Character class describing NM global symbol codes. symcode='[[BCDEGRST]]' # Regexp to match symbols that can be accessed directly from C. sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)' # Define system-specific variables. case $host_os in aix*) symcode='[[BCDT]]' ;; cygwin* | mingw* | pw32* | cegcc*) symcode='[[ABCDGISTW]]' ;; hpux*) if test ia64 = "$host_cpu"; then symcode='[[ABCDEGRST]]' fi ;; irix* | nonstopux*) symcode='[[BCDEGRST]]' ;; osf*) symcode='[[BCDEGQRST]]' ;; solaris*) symcode='[[BDRT]]' ;; sco3.2v5*) symcode='[[DT]]' ;; sysv4.2uw2*) symcode='[[DT]]' ;; sysv5* | sco5v6* | unixware* | OpenUNIX*) symcode='[[ABDT]]' ;; sysv4) symcode='[[DFNSTU]]' ;; esac # If we're using GNU nm, then use its standard symbol codes. case `$NM -V 2>&1` in *GNU* | *'with BFD'*) symcode='[[ABCDGIRSTW]]' ;; esac if test "$lt_cv_nm_interface" = "MS dumpbin"; then # Gets list of data symbols to import. lt_cv_sys_global_symbol_to_import="sed -n -e 's/^I .* \(.*\)$/\1/p'" # Adjust the below global symbol transforms to fixup imported variables. lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'" lt_c_name_hook=" -e 's/^I .* \(.*\)$/ {\"\1\", (void *) 0},/p'" lt_c_name_lib_hook="\ -e 's/^I .* \(lib.*\)$/ {\"\1\", (void *) 0},/p'\ -e 's/^I .* \(.*\)$/ {\"lib\1\", (void *) 0},/p'" else # Disable hooks by default. lt_cv_sys_global_symbol_to_import= lt_cdecl_hook= lt_c_name_hook= lt_c_name_lib_hook= fi # Transform an extracted symbol line into a proper C declaration. # Some systems (esp. on ia64) link data and code symbols differently, # so use this general approach. lt_cv_sys_global_symbol_to_cdecl="sed -n"\ $lt_cdecl_hook\ " -e 's/^T .* \(.*\)$/extern int \1();/p'"\ " -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'" # Transform an extracted symbol line into symbol name and symbol address lt_cv_sys_global_symbol_to_c_name_address="sed -n"\ $lt_c_name_hook\ " -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ " -e 's/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/p'" # Transform an extracted symbol line into symbol name with lib prefix and # symbol address. lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n"\ $lt_c_name_lib_hook\ " -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ " -e 's/^$symcode$symcode* .* \(lib.*\)$/ {\"\1\", (void *) \&\1},/p'"\ " -e 's/^$symcode$symcode* .* \(.*\)$/ {\"lib\1\", (void *) \&\1},/p'" # Handle CRLF in mingw tool chain opt_cr= case $build_os in mingw*) opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp ;; esac # Try without a prefix underscore, then with it. for ac_symprfx in "" "_"; do # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol. symxfrm="\\1 $ac_symprfx\\2 \\2" # Write the raw and C identifiers. if test "$lt_cv_nm_interface" = "MS dumpbin"; then # Fake it for dumpbin and say T for any non-static function, # D for any global variable and I for any imported variable. # Also find C++ and __fastcall symbols from MSVC++, # which start with @ or ?. lt_cv_sys_global_symbol_pipe="$AWK ['"\ " {last_section=section; section=\$ 3};"\ " /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\ " /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\ " /^ *Symbol name *: /{split(\$ 0,sn,\":\"); si=substr(sn[2],2)};"\ " /^ *Type *: code/{print \"T\",si,substr(si,length(prfx))};"\ " /^ *Type *: data/{print \"I\",si,substr(si,length(prfx))};"\ " \$ 0!~/External *\|/{next};"\ " / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\ " {if(hide[section]) next};"\ " {f=\"D\"}; \$ 0~/\(\).*\|/{f=\"T\"};"\ " {split(\$ 0,a,/\||\r/); split(a[2],s)};"\ " s[1]~/^[@?]/{print f,s[1],s[1]; next};"\ " s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\ " ' prfx=^$ac_symprfx]" else lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" fi lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'" # Check to see that the pipe works correctly. pipe_works=no rm -f conftest* cat > conftest.$ac_ext <<_LT_EOF #ifdef __cplusplus extern "C" { #endif char nm_test_var; void nm_test_func(void); void nm_test_func(void){} #ifdef __cplusplus } #endif int main(){nm_test_var='a';nm_test_func();return(0);} _LT_EOF if AC_TRY_EVAL(ac_compile); then # Now try to grab the symbols. nlist=conftest.nm if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) && test -s "$nlist"; then # Try sorting and uniquifying the output. if sort "$nlist" | uniq > "$nlist"T; then mv -f "$nlist"T "$nlist" else rm -f "$nlist"T fi # Make sure that we snagged all the symbols we need. if $GREP ' nm_test_var$' "$nlist" >/dev/null; then if $GREP ' nm_test_func$' "$nlist" >/dev/null; then cat <<_LT_EOF > conftest.$ac_ext /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */ #if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE /* DATA imports from DLLs on WIN32 can't be const, because runtime relocations are performed -- see ld's documentation on pseudo-relocs. */ # define LT@&t@_DLSYM_CONST #elif defined __osf__ /* This system does not cope well with relocations in const data. */ # define LT@&t@_DLSYM_CONST #else # define LT@&t@_DLSYM_CONST const #endif #ifdef __cplusplus extern "C" { #endif _LT_EOF # Now generate the symbol file. eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext' cat <<_LT_EOF >> conftest.$ac_ext /* The mapping between symbol names and symbols. */ LT@&t@_DLSYM_CONST struct { const char *name; void *address; } lt__PROGRAM__LTX_preloaded_symbols[[]] = { { "@PROGRAM@", (void *) 0 }, _LT_EOF $SED "s/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext cat <<\_LT_EOF >> conftest.$ac_ext {0, (void *) 0} }; /* This works around a problem in FreeBSD linker */ #ifdef FREEBSD_WORKAROUND static const void *lt_preloaded_setup() { return lt__PROGRAM__LTX_preloaded_symbols; } #endif #ifdef __cplusplus } #endif _LT_EOF # Now try linking the two files. mv conftest.$ac_objext conftstm.$ac_objext lt_globsym_save_LIBS=$LIBS lt_globsym_save_CFLAGS=$CFLAGS LIBS=conftstm.$ac_objext CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)" if AC_TRY_EVAL(ac_link) && test -s conftest$ac_exeext; then pipe_works=yes fi LIBS=$lt_globsym_save_LIBS CFLAGS=$lt_globsym_save_CFLAGS else echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD fi else echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD fi else echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD fi else echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD cat conftest.$ac_ext >&5 fi rm -rf conftest* conftst* # Do not use the global_symbol_pipe unless it works. if test yes = "$pipe_works"; then break else lt_cv_sys_global_symbol_pipe= fi done ]) if test -z "$lt_cv_sys_global_symbol_pipe"; then lt_cv_sys_global_symbol_to_cdecl= fi if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then AC_MSG_RESULT(failed) else AC_MSG_RESULT(ok) fi # Response file support. if test "$lt_cv_nm_interface" = "MS dumpbin"; then nm_file_list_spec='@' elif $NM --help 2>/dev/null | grep '[[@]]FILE' >/dev/null; then nm_file_list_spec='@' fi _LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1], [Take the output of nm and produce a listing of raw symbols and C names]) _LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1], [Transform the output of nm in a proper C declaration]) _LT_DECL([global_symbol_to_import], [lt_cv_sys_global_symbol_to_import], [1], [Transform the output of nm into a list of symbols to manually relocate]) _LT_DECL([global_symbol_to_c_name_address], [lt_cv_sys_global_symbol_to_c_name_address], [1], [Transform the output of nm in a C name address pair]) _LT_DECL([global_symbol_to_c_name_address_lib_prefix], [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1], [Transform the output of nm in a C name address pair when lib prefix is needed]) _LT_DECL([nm_interface], [lt_cv_nm_interface], [1], [The name lister interface]) _LT_DECL([], [nm_file_list_spec], [1], [Specify filename containing input files for $NM]) ]) # _LT_CMD_GLOBAL_SYMBOLS # _LT_COMPILER_PIC([TAGNAME]) # --------------------------- m4_defun([_LT_COMPILER_PIC], [m4_require([_LT_TAG_COMPILER])dnl _LT_TAGVAR(lt_prog_compiler_wl, $1)= _LT_TAGVAR(lt_prog_compiler_pic, $1)= _LT_TAGVAR(lt_prog_compiler_static, $1)= m4_if([$1], [CXX], [ # C++ specific cases for pic, static, wl, etc. if test yes = "$GXX"; then _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' case $host_os in aix*) # All AIX code is PIC. if test ia64 = "$host_cpu"; then # AIX 5 now supports IA64 processor _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' fi _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' ;; amigaos*) case $host_cpu in powerpc) # see comment about AmigaOS4 .so support _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' ;; m68k) # FIXME: we need at least 68020 code to build shared libraries, but # adding the '-m68020' flag to GCC prevents building anything better, # like '-m68040'. _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' ;; esac ;; beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) # PIC is the default for these OSes. ;; mingw* | cygwin* | os2* | pw32* | cegcc*) # This hack is so that the source file can tell whether it is being # built for inclusion in a dll (and should export symbols for example). # Although the cygwin gcc ignores -fPIC, still need this for old-style # (--disable-auto-import) libraries m4_if([$1], [GCJ], [], [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) case $host_os in os2*) _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static' ;; esac ;; darwin* | rhapsody*) # PIC is the default on this platform # Common symbols not allowed in MH_DYLIB files _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' ;; *djgpp*) # DJGPP does not support shared libraries at all _LT_TAGVAR(lt_prog_compiler_pic, $1)= ;; haiku*) # PIC is the default for Haiku. # The "-static" flag exists, but is broken. _LT_TAGVAR(lt_prog_compiler_static, $1)= ;; interix[[3-9]]*) # Interix 3.x gcc -fpic/-fPIC options generate broken code. # Instead, we relocate shared libraries at runtime. ;; sysv4*MP*) if test -d /usr/nec; then _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic fi ;; hpux*) # PIC is the default for 64-bit PA HP-UX, but not for 32-bit # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag # sets the default TLS model and affects inlining. case $host_cpu in hppa*64*) ;; *) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' ;; esac ;; *qnx* | *nto*) # QNX uses GNU C++, but need to define -shared option too, otherwise # it will coredump. _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' ;; *) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' ;; esac else case $host_os in aix[[4-9]]*) # All AIX code is PIC. if test ia64 = "$host_cpu"; then # AIX 5 now supports IA64 processor _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' else _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' fi ;; chorus*) case $cc_basename in cxch68*) # Green Hills C++ Compiler # _LT_TAGVAR(lt_prog_compiler_static, $1)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a" ;; esac ;; mingw* | cygwin* | os2* | pw32* | cegcc*) # This hack is so that the source file can tell whether it is being # built for inclusion in a dll (and should export symbols for example). m4_if([$1], [GCJ], [], [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) ;; dgux*) case $cc_basename in ec++*) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' ;; ghcx*) # Green Hills C++ Compiler _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' ;; *) ;; esac ;; freebsd* | dragonfly*) # FreeBSD uses GNU C++ ;; hpux9* | hpux10* | hpux11*) case $cc_basename in CC*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive' if test ia64 != "$host_cpu"; then _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' fi ;; aCC*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive' case $host_cpu in hppa*64*|ia64*) # +Z the default ;; *) _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' ;; esac ;; *) ;; esac ;; interix*) # This is c89, which is MS Visual C++ (no shared libs) # Anyone wants to do a port? ;; irix5* | irix6* | nonstopux*) case $cc_basename in CC*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' # CC pic flag -KPIC is the default. ;; *) ;; esac ;; linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) case $cc_basename in KCC*) # KAI C++ Compiler _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' ;; ecpc* ) # old Intel C++ for x86_64, which still supported -KPIC. _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' ;; icpc* ) # Intel C++, used to be incompatible with GCC. # ICC 10 doesn't accept -KPIC any more. _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' ;; pgCC* | pgcpp*) # Portland Group C++ compiler _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; cxx*) # Compaq C++ # Make sure the PIC flag is empty. It appears that all Alpha # Linux and Compaq Tru64 Unix objects are PIC. _LT_TAGVAR(lt_prog_compiler_pic, $1)= _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' ;; xlc* | xlC* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL 8.0, 9.0 on PPC and BlueGene _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic' _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink' ;; *) case `$CC -V 2>&1 | sed 5q` in *Sun\ C*) # Sun C++ 5.9 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' ;; esac ;; esac ;; lynxos*) ;; m88k*) ;; mvs*) case $cc_basename in cxx*) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall' ;; *) ;; esac ;; netbsd* | netbsdelf*-gnu) ;; *qnx* | *nto*) # QNX uses GNU C++, but need to define -shared option too, otherwise # it will coredump. _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' ;; osf3* | osf4* | osf5*) case $cc_basename in KCC*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' ;; RCC*) # Rational C++ 2.4.1 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' ;; cxx*) # Digital/Compaq C++ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' # Make sure the PIC flag is empty. It appears that all Alpha # Linux and Compaq Tru64 Unix objects are PIC. _LT_TAGVAR(lt_prog_compiler_pic, $1)= _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' ;; *) ;; esac ;; psos*) ;; solaris*) case $cc_basename in CC* | sunCC*) # Sun C++ 4.2, 5.x and Centerline C++ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' ;; gcx*) # Green Hills C++ Compiler _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' ;; *) ;; esac ;; sunos4*) case $cc_basename in CC*) # Sun C++ 4.x _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; lcc*) # Lucid _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' ;; *) ;; esac ;; sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) case $cc_basename in CC*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; esac ;; tandem*) case $cc_basename in NCC*) # NonStop-UX NCC 3.20 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' ;; *) ;; esac ;; vxworks*) ;; *) _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no ;; esac fi ], [ if test yes = "$GCC"; then _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' case $host_os in aix*) # All AIX code is PIC. if test ia64 = "$host_cpu"; then # AIX 5 now supports IA64 processor _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' fi _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' ;; amigaos*) case $host_cpu in powerpc) # see comment about AmigaOS4 .so support _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' ;; m68k) # FIXME: we need at least 68020 code to build shared libraries, but # adding the '-m68020' flag to GCC prevents building anything better, # like '-m68040'. _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' ;; esac ;; beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) # PIC is the default for these OSes. ;; mingw* | cygwin* | pw32* | os2* | cegcc*) # This hack is so that the source file can tell whether it is being # built for inclusion in a dll (and should export symbols for example). # Although the cygwin gcc ignores -fPIC, still need this for old-style # (--disable-auto-import) libraries m4_if([$1], [GCJ], [], [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) case $host_os in os2*) _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static' ;; esac ;; darwin* | rhapsody*) # PIC is the default on this platform # Common symbols not allowed in MH_DYLIB files _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' ;; haiku*) # PIC is the default for Haiku. # The "-static" flag exists, but is broken. _LT_TAGVAR(lt_prog_compiler_static, $1)= ;; hpux*) # PIC is the default for 64-bit PA HP-UX, but not for 32-bit # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag # sets the default TLS model and affects inlining. case $host_cpu in hppa*64*) # +Z the default ;; *) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' ;; esac ;; interix[[3-9]]*) # Interix 3.x gcc -fpic/-fPIC options generate broken code. # Instead, we relocate shared libraries at runtime. ;; msdosdjgpp*) # Just because we use GCC doesn't mean we suddenly get shared libraries # on systems that don't support them. _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no enable_shared=no ;; *nto* | *qnx*) # QNX uses GNU C++, but need to define -shared option too, otherwise # it will coredump. _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' ;; sysv4*MP*) if test -d /usr/nec; then _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic fi ;; *) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' ;; esac case $cc_basename in nvcc*) # Cuda Compiler Driver 2.2 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Xlinker ' if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then _LT_TAGVAR(lt_prog_compiler_pic, $1)="-Xcompiler $_LT_TAGVAR(lt_prog_compiler_pic, $1)" fi ;; esac else # PORTME Check for flag to pass linker flags through the system compiler. case $host_os in aix*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' if test ia64 = "$host_cpu"; then # AIX 5 now supports IA64 processor _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' else _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' fi ;; darwin* | rhapsody*) # PIC is the default on this platform # Common symbols not allowed in MH_DYLIB files _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' case $cc_basename in nagfor*) # NAG Fortran compiler _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; esac ;; mingw* | cygwin* | pw32* | os2* | cegcc*) # This hack is so that the source file can tell whether it is being # built for inclusion in a dll (and should export symbols for example). m4_if([$1], [GCJ], [], [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) case $host_os in os2*) _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static' ;; esac ;; hpux9* | hpux10* | hpux11*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but # not for PA HP-UX. case $host_cpu in hppa*64*|ia64*) # +Z the default ;; *) _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' ;; esac # Is there a better lt_prog_compiler_static that works with the bundled CC? _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive' ;; irix5* | irix6* | nonstopux*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' # PIC (with -KPIC) is the default. _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' ;; linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) case $cc_basename in # old Intel for x86_64, which still supported -KPIC. ecc*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' ;; # icc used to be incompatible with GCC. # ICC 10 doesn't accept -KPIC any more. icc* | ifort*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' ;; # Lahey Fortran 8.1. lf95*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared' _LT_TAGVAR(lt_prog_compiler_static, $1)='--static' ;; nagfor*) # NAG Fortran compiler _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; tcc*) # Fabrice Bellard et al's Tiny C Compiler _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' ;; pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*) # Portland Group compilers (*not* the Pentium gcc compiler, # which looks to be a dead project) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; ccc*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' # All Alpha code is PIC. _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' ;; xl* | bgxl* | bgf* | mpixl*) # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic' _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink' ;; *) case `$CC -V 2>&1 | sed 5q` in *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [[1-7]].* | *Sun*Fortran*\ 8.[[0-3]]*) # Sun Fortran 8.3 passes all unrecognized flags to the linker _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' _LT_TAGVAR(lt_prog_compiler_wl, $1)='' ;; *Sun\ F* | *Sun*Fortran*) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' ;; *Sun\ C*) # Sun C 5.9 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' ;; *Intel*\ [[CF]]*Compiler*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' ;; *Portland\ Group*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; esac ;; esac ;; newsos6) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; *nto* | *qnx*) # QNX uses GNU C++, but need to define -shared option too, otherwise # it will coredump. _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' ;; osf3* | osf4* | osf5*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' # All OSF/1 code is PIC. _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' ;; rdos*) _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' ;; solaris*) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' case $cc_basename in f77* | f90* | f95* | sunf77* | sunf90* | sunf95*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';; *) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';; esac ;; sunos4*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; sysv4 | sysv4.2uw2* | sysv4.3*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; sysv4*MP*) if test -d /usr/nec; then _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' fi ;; sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; unicos*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no ;; uts4*) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; *) _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no ;; esac fi ]) case $host_os in # For platforms that do not support PIC, -DPIC is meaningless: *djgpp*) _LT_TAGVAR(lt_prog_compiler_pic, $1)= ;; *) _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])" ;; esac AC_CACHE_CHECK([for $compiler option to produce PIC], [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)], [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_prog_compiler_pic, $1)]) _LT_TAGVAR(lt_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_cv_prog_compiler_pic, $1) # # Check to make sure the PIC flag actually works. # if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works], [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)], [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [], [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in "" | " "*) ;; *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;; esac], [_LT_TAGVAR(lt_prog_compiler_pic, $1)= _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no]) fi _LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1], [Additional compiler flags for building library objects]) _LT_TAGDECL([wl], [lt_prog_compiler_wl], [1], [How to pass a linker flag through the compiler]) # # Check to make sure the static flag actually works. # wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\" _LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works], _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1), $lt_tmp_static_flag, [], [_LT_TAGVAR(lt_prog_compiler_static, $1)=]) _LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1], [Compiler flag to prevent dynamic linking]) ])# _LT_COMPILER_PIC # _LT_LINKER_SHLIBS([TAGNAME]) # ---------------------------- # See if the linker supports building shared libraries. m4_defun([_LT_LINKER_SHLIBS], [AC_REQUIRE([LT_PATH_LD])dnl AC_REQUIRE([LT_PATH_NM])dnl m4_require([_LT_PATH_MANIFEST_TOOL])dnl m4_require([_LT_FILEUTILS_DEFAULTS])dnl m4_require([_LT_DECL_EGREP])dnl m4_require([_LT_DECL_SED])dnl m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl m4_require([_LT_TAG_COMPILER])dnl AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) m4_if([$1], [CXX], [ _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'] case $host_os in aix[[4-9]]*) # If we're using GNU nm, then we don't want the "-C" option. # -C means demangle to GNU nm, but means don't demangle to AIX nm. # Without the "-l" option, or with the "-B" option, AIX nm treats # weak defined symbols like other global defined symbols, whereas # GNU nm marks them as "W". # While the 'weak' keyword is ignored in the Export File, we need # it in the Import File for the 'aix-soname' feature, so we have # to replace the "-B" option with "-P" for AIX nm. if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols' else _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols' fi ;; pw32*) _LT_TAGVAR(export_symbols_cmds, $1)=$ltdll_cmds ;; cygwin* | mingw* | cegcc*) case $cc_basename in cl*) _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*' ;; *) _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols' _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'] ;; esac ;; linux* | k*bsd*-gnu | gnu*) _LT_TAGVAR(link_all_deplibs, $1)=no ;; *) _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' ;; esac ], [ runpath_var= _LT_TAGVAR(allow_undefined_flag, $1)= _LT_TAGVAR(always_export_symbols, $1)=no _LT_TAGVAR(archive_cmds, $1)= _LT_TAGVAR(archive_expsym_cmds, $1)= _LT_TAGVAR(compiler_needs_object, $1)=no _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no _LT_TAGVAR(export_dynamic_flag_spec, $1)= _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' _LT_TAGVAR(hardcode_automatic, $1)=no _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_direct_absolute, $1)=no _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= _LT_TAGVAR(hardcode_libdir_separator, $1)= _LT_TAGVAR(hardcode_minus_L, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported _LT_TAGVAR(inherit_rpath, $1)=no _LT_TAGVAR(link_all_deplibs, $1)=unknown _LT_TAGVAR(module_cmds, $1)= _LT_TAGVAR(module_expsym_cmds, $1)= _LT_TAGVAR(old_archive_from_new_cmds, $1)= _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)= _LT_TAGVAR(thread_safe_flag_spec, $1)= _LT_TAGVAR(whole_archive_flag_spec, $1)= # include_expsyms should be a list of space-separated symbols to be *always* # included in the symbol list _LT_TAGVAR(include_expsyms, $1)= # exclude_expsyms can be an extended regexp of symbols to exclude # it will be wrapped by ' (' and ')$', so one must not match beginning or # end of line. Example: 'a|bc|.*d.*' will exclude the symbols 'a' and 'bc', # as well as any symbol that contains 'd'. _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'] # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out # platforms (ab)use it in PIC code, but their linkers get confused if # the symbol is explicitly referenced. Since portable code cannot # rely on this symbol name, it's probably fine to never include it in # preloaded symbol tables. # Exclude shared library initialization/finalization symbols. dnl Note also adjust exclude_expsyms for C++ above. extract_expsyms_cmds= case $host_os in cygwin* | mingw* | pw32* | cegcc*) # FIXME: the MSVC++ port hasn't been tested in a loooong time # When not using gcc, we currently assume that we are using # Microsoft Visual C++. if test yes != "$GCC"; then with_gnu_ld=no fi ;; interix*) # we just hope/assume this is gcc and not c89 (= MSVC++) with_gnu_ld=yes ;; openbsd* | bitrig*) with_gnu_ld=no ;; linux* | k*bsd*-gnu | gnu*) _LT_TAGVAR(link_all_deplibs, $1)=no ;; esac _LT_TAGVAR(ld_shlibs, $1)=yes # On some targets, GNU ld is compatible enough with the native linker # that we're better off using the native interface for both. lt_use_gnu_ld_interface=no if test yes = "$with_gnu_ld"; then case $host_os in aix*) # The AIX port of GNU ld has always aspired to compatibility # with the native linker. However, as the warning in the GNU ld # block says, versions before 2.19.5* couldn't really create working # shared libraries, regardless of the interface used. case `$LD -v 2>&1` in *\ \(GNU\ Binutils\)\ 2.19.5*) ;; *\ \(GNU\ Binutils\)\ 2.[[2-9]]*) ;; *\ \(GNU\ Binutils\)\ [[3-9]]*) ;; *) lt_use_gnu_ld_interface=yes ;; esac ;; *) lt_use_gnu_ld_interface=yes ;; esac fi if test yes = "$lt_use_gnu_ld_interface"; then # If archive_cmds runs LD, not CC, wlarc should be empty wlarc='$wl' # Set some defaults for GNU ld with shared library support. These # are reset later if shared libraries are not supported. Putting them # here allows them to be overridden if necessary. runpath_var=LD_RUN_PATH _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' # ancient GNU ld didn't support --whole-archive et. al. if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive' else _LT_TAGVAR(whole_archive_flag_spec, $1)= fi supports_anon_versioning=no case `$LD -v | $SED -e 's/([^)]\+)\s\+//' 2>&1` in *GNU\ gold*) supports_anon_versioning=yes ;; *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11 *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ... *\ 2.11.*) ;; # other 2.11 versions *) supports_anon_versioning=yes ;; esac # See if GNU ld supports shared libraries. case $host_os in aix[[3-9]]*) # On AIX/PPC, the GNU linker is very broken if test ia64 != "$host_cpu"; then _LT_TAGVAR(ld_shlibs, $1)=no cat <<_LT_EOF 1>&2 *** Warning: the GNU linker, at least up to release 2.19, is reported *** to be unable to reliably create shared libraries on AIX. *** Therefore, libtool is disabling shared libraries support. If you *** really care for shared libraries, you may want to install binutils *** 2.20 or above, or modify your PATH so that a non-GNU linker is found. *** You will then need to restart the configuration process. _LT_EOF fi ;; amigaos*) case $host_cpu in powerpc) # see comment about AmigaOS4 .so support _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='' ;; m68k) _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_minus_L, $1)=yes ;; esac ;; beos*) if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then _LT_TAGVAR(allow_undefined_flag, $1)=unsupported # Joseph Beckenbach says some releases of gcc # support --undefined. This deserves some investigation. FIXME _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; cygwin* | mingw* | pw32* | cegcc*) # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, # as there is no search path for DLLs. _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols' _LT_TAGVAR(allow_undefined_flag, $1)=unsupported _LT_TAGVAR(always_export_symbols, $1)=no _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols' _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'] if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' # If the export-symbols file already is a .def file, use it as # is; otherwise, prepend EXPORTS... _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then cp $export_symbols $output_objdir/$soname.def; else echo EXPORTS > $output_objdir/$soname.def; cat $export_symbols >> $output_objdir/$soname.def; fi~ $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; haiku*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' _LT_TAGVAR(link_all_deplibs, $1)=yes ;; os2*) _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_minus_L, $1)=yes _LT_TAGVAR(allow_undefined_flag, $1)=unsupported shrext_cmds=.dll _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ $ECHO EXPORTS >> $output_objdir/$libname.def~ emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ emximp -o $lib $output_objdir/$libname.def' _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ $ECHO EXPORTS >> $output_objdir/$libname.def~ prefix_cmds="$SED"~ if test EXPORTS = "`$SED 1q $export_symbols`"; then prefix_cmds="$prefix_cmds -e 1d"; fi~ prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ emximp -o $lib $output_objdir/$libname.def' _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes ;; interix[[3-9]]*) _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. # Instead, shared libraries are loaded at an image base (0x10000000 by # default) and relocated if they conflict, which is a slow very memory # consuming and fragmenting process. To avoid this, we pick a random, # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link # time. Moving up from 0x10000000 also allows more sbrk(2) space. _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' ;; gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu) tmp_diet=no if test linux-dietlibc = "$host_os"; then case $cc_basename in diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn) esac fi if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \ && test no = "$tmp_diet" then tmp_addflag=' $pic_flag' tmp_sharedflag='-shared' case $cc_basename,$host_cpu in pgcc*) # Portland Group C compiler _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' tmp_addflag=' $pic_flag' ;; pgf77* | pgf90* | pgf95* | pgfortran*) # Portland Group f77 and f90 compilers _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' tmp_addflag=' $pic_flag -Mnomain' ;; ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64 tmp_addflag=' -i_dynamic' ;; efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64 tmp_addflag=' -i_dynamic -nofor_main' ;; ifc* | ifort*) # Intel Fortran compiler tmp_addflag=' -nofor_main' ;; lf95*) # Lahey Fortran 8.1 _LT_TAGVAR(whole_archive_flag_spec, $1)= tmp_sharedflag='--shared' ;; nagfor*) # NAGFOR 5.3 tmp_sharedflag='-Wl,-shared' ;; xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below) tmp_sharedflag='-qmkshrobj' tmp_addflag= ;; nvcc*) # Cuda Compiler Driver 2.2 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' _LT_TAGVAR(compiler_needs_object, $1)=yes ;; esac case `$CC -V 2>&1 | sed 5q` in *Sun\ C*) # Sun C 5.9 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' _LT_TAGVAR(compiler_needs_object, $1)=yes tmp_sharedflag='-G' ;; *Sun\ F*) # Sun Fortran 8.3 tmp_sharedflag='-G' ;; esac _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' if test yes = "$supports_anon_versioning"; then _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ echo "local: *; };" >> $output_objdir/$libname.ver~ $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib' fi case $cc_basename in tcc*) _LT_TAGVAR(export_dynamic_flag_spec, $1)='-rdynamic' ;; xlf* | bgf* | bgxlf* | mpixlf*) # IBM XL Fortran 10.1 on PPC cannot create shared libs itself _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib' if test yes = "$supports_anon_versioning"; then _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ echo "local: *; };" >> $output_objdir/$libname.ver~ $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib' fi ;; esac else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' wlarc= else _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' fi ;; solaris*) if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then _LT_TAGVAR(ld_shlibs, $1)=no cat <<_LT_EOF 1>&2 *** Warning: The releases 2.8.* of the GNU linker cannot reliably *** create shared libraries on Solaris systems. Therefore, libtool *** is disabling shared libraries support. We urge you to upgrade GNU *** binutils to release 2.9.1 or newer. Another option is to modify *** your PATH or compiler configuration so that the native linker is *** used, and then restart. _LT_EOF elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*) case `$LD -v 2>&1` in *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*) _LT_TAGVAR(ld_shlibs, $1)=no cat <<_LT_EOF 1>&2 *** Warning: Releases of the GNU linker prior to 2.16.91.0.3 cannot *** reliably create shared libraries on SCO systems. Therefore, libtool *** is disabling shared libraries support. We urge you to upgrade GNU *** binutils to release 2.16.91.0.3 or newer. Another option is to modify *** your PATH or compiler configuration so that the native linker is *** used, and then restart. _LT_EOF ;; *) # For security reasons, it is highly recommended that you always # use absolute paths for naming shared libraries, and exclude the # DT_RUNPATH tag from executables and libraries. But doing so # requires that you compile everything twice, which is a pain. if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; esac ;; sunos4*) _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' wlarc= _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; *) if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; esac if test no = "$_LT_TAGVAR(ld_shlibs, $1)"; then runpath_var= _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= _LT_TAGVAR(export_dynamic_flag_spec, $1)= _LT_TAGVAR(whole_archive_flag_spec, $1)= fi else # PORTME fill in a description of your system's linker (not GNU ld) case $host_os in aix3*) _LT_TAGVAR(allow_undefined_flag, $1)=unsupported _LT_TAGVAR(always_export_symbols, $1)=yes _LT_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' # Note: this linker hardcodes the directories in LIBPATH if there # are no directories specified by -L. _LT_TAGVAR(hardcode_minus_L, $1)=yes if test yes = "$GCC" && test -z "$lt_prog_compiler_static"; then # Neither direct hardcoding nor static linking is supported with a # broken collect2. _LT_TAGVAR(hardcode_direct, $1)=unsupported fi ;; aix[[4-9]]*) if test ia64 = "$host_cpu"; then # On IA64, the linker does run time linking by default, so we don't # have to do anything special. aix_use_runtimelinking=no exp_sym_flag='-Bexport' no_entry_flag= else # If we're using GNU nm, then we don't want the "-C" option. # -C means demangle to GNU nm, but means don't demangle to AIX nm. # Without the "-l" option, or with the "-B" option, AIX nm treats # weak defined symbols like other global defined symbols, whereas # GNU nm marks them as "W". # While the 'weak' keyword is ignored in the Export File, we need # it in the Import File for the 'aix-soname' feature, so we have # to replace the "-B" option with "-P" for AIX nm. if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols' else _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols' fi aix_use_runtimelinking=no # Test if we are trying to use run time linking or normal # AIX style linking. If -brtl is somewhere in LDFLAGS, we # have runtime linking enabled, and use it for executables. # For shared libraries, we enable/disable runtime linking # depending on the kind of the shared library created - # when "with_aix_soname,aix_use_runtimelinking" is: # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables # "aix,yes" lib.so shared, rtl:yes, for executables # lib.a static archive # "both,no" lib.so.V(shr.o) shared, rtl:yes # lib.a(lib.so.V) shared, rtl:no, for executables # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables # lib.a(lib.so.V) shared, rtl:no # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables # lib.a static archive case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*) for ld_flag in $LDFLAGS; do if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then aix_use_runtimelinking=yes break fi done if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then # With aix-soname=svr4, we create the lib.so.V shared archives only, # so we don't have lib.a shared libs to link our executables. # We have to force runtime linking in this case. aix_use_runtimelinking=yes LDFLAGS="$LDFLAGS -Wl,-brtl" fi ;; esac exp_sym_flag='-bexport' no_entry_flag='-bnoentry' fi # When large executables or shared objects are built, AIX ld can # have problems creating the table of contents. If linking a library # or program results in "error TOC overflow" add -mminimal-toc to # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. _LT_TAGVAR(archive_cmds, $1)='' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_direct_absolute, $1)=yes _LT_TAGVAR(hardcode_libdir_separator, $1)=':' _LT_TAGVAR(link_all_deplibs, $1)=yes _LT_TAGVAR(file_list_spec, $1)='$wl-f,' case $with_aix_soname,$aix_use_runtimelinking in aix,*) ;; # traditional, no import file svr4,* | *,yes) # use import file # The Import File defines what to hardcode. _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_direct_absolute, $1)=no ;; esac if test yes = "$GCC"; then case $host_os in aix4.[[012]]|aix4.[[012]].*) # We only want to do this on AIX 4.2 and lower, the check # below for broken collect2 doesn't work under 4.3+ collect2name=`$CC -print-prog-name=collect2` if test -f "$collect2name" && strings "$collect2name" | $GREP resolve_lib_name >/dev/null then # We have reworked collect2 : else # We have old collect2 _LT_TAGVAR(hardcode_direct, $1)=unsupported # It fails to find uninstalled libraries when the uninstalled # path is not listed in the libpath. Setting hardcode_minus_L # to unsupported forces relinking _LT_TAGVAR(hardcode_minus_L, $1)=yes _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)= fi ;; esac shared_flag='-shared' if test yes = "$aix_use_runtimelinking"; then shared_flag="$shared_flag "'$wl-G' fi # Need to ensure runtime linking is disabled for the traditional # shared library, or the linker may eventually find shared libraries # /with/ Import File - we do not want to mix them. shared_flag_aix='-shared' shared_flag_svr4='-shared $wl-G' else # not using gcc if test ia64 = "$host_cpu"; then # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release # chokes on -Wl,-G. The following line is correct: shared_flag='-G' else if test yes = "$aix_use_runtimelinking"; then shared_flag='$wl-G' else shared_flag='$wl-bM:SRE' fi shared_flag_aix='$wl-bM:SRE' shared_flag_svr4='$wl-G' fi fi _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall' # It seems that -bexpall does not export symbols beginning with # underscore (_), so it is better to generate a list of symbols to export. _LT_TAGVAR(always_export_symbols, $1)=yes if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then # Warning - without using the other runtime loading flags (-brtl), # -berok will link without error, but may produce a broken library. _LT_TAGVAR(allow_undefined_flag, $1)='-berok' # Determine the default libpath from the value encoded in an # empty executable. _LT_SYS_MODULE_PATH_AIX([$1]) _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath" _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag else if test ia64 = "$host_cpu"; then _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib' _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs" _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\$wl$no_entry_flag"' $compiler_flags $wl$allow_undefined_flag '"\$wl$exp_sym_flag:\$export_symbols" else # Determine the default libpath from the value encoded in an # empty executable. _LT_SYS_MODULE_PATH_AIX([$1]) _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath" # Warning - without using the other run time loading flags, # -berok will link without error, but may produce a broken library. _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok' _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok' if test yes = "$with_gnu_ld"; then # We only use this code for GNU lds that support --whole-archive. _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive' else # Exported symbols can be pulled into shared objects from archives _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience' fi _LT_TAGVAR(archive_cmds_need_lc, $1)=yes _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d' # -brtl affects multiple linker settings, -berok does not and is overridden later compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`' if test svr4 != "$with_aix_soname"; then # This is similar to how AIX traditionally builds its shared libraries. _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname' fi if test aix != "$with_aix_soname"; then _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp' else # used by -dlpreopen to get the symbols _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV $output_objdir/$realname.d/$soname $output_objdir' fi _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d' fi fi ;; amigaos*) case $host_cpu in powerpc) # see comment about AmigaOS4 .so support _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='' ;; m68k) _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_minus_L, $1)=yes ;; esac ;; bsdi[[45]]*) _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic ;; cygwin* | mingw* | pw32* | cegcc*) # When not using gcc, we currently assume that we are using # Microsoft Visual C++. # hardcode_libdir_flag_spec is actually meaningless, as there is # no search path for DLLs. case $cc_basename in cl*) # Native MSVC _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' _LT_TAGVAR(allow_undefined_flag, $1)=unsupported _LT_TAGVAR(always_export_symbols, $1)=yes _LT_TAGVAR(file_list_spec, $1)='@' # Tell ltmain to make .lib files, not .a files. libext=lib # Tell ltmain to make .dll files, not .so files. shrext_cmds=.dll # FIXME: Setting linknames here is a bad hack. _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames=' _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then cp "$export_symbols" "$output_objdir/$soname.def"; echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp"; else $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp; fi~ $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ linknames=' # The linker will not automatically build a static lib if we build a DLL. # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true' _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*' _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1,DATA/'\'' | $SED -e '\''/^[[AITW]][[ ]]/s/.*[[ ]]//'\'' | sort | uniq > $export_symbols' # Don't use ranlib _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib' _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~ lt_tool_outputfile="@TOOL_OUTPUT@"~ case $lt_outputfile in *.exe|*.EXE) ;; *) lt_outputfile=$lt_outputfile.exe lt_tool_outputfile=$lt_tool_outputfile.exe ;; esac~ if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; $RM "$lt_outputfile.manifest"; fi' ;; *) # Assume MSVC wrapper _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' _LT_TAGVAR(allow_undefined_flag, $1)=unsupported # Tell ltmain to make .lib files, not .a files. libext=lib # Tell ltmain to make .dll files, not .so files. shrext_cmds=.dll # FIXME: Setting linknames here is a bad hack. _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames=' # The linker will automatically build a .lib file if we build a DLL. _LT_TAGVAR(old_archive_from_new_cmds, $1)='true' # FIXME: Should let the user specify the lib program. _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs' _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes ;; esac ;; darwin* | rhapsody*) _LT_DARWIN_LINKER_FEATURES($1) ;; dgux*) _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor # support. Future versions do this automatically, but an explicit c++rt0.o # does not break anything, and helps significantly (at the cost of a little # extra space). freebsd2.2*) _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; # Unfortunately, older versions of FreeBSD 2 do not have this feature. freebsd2.*) _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_minus_L, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; # FreeBSD 3 and greater uses gcc -shared to do shared libraries. freebsd* | dragonfly*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; hpux9*) if test yes = "$GCC"; then _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' else _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' fi _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: _LT_TAGVAR(hardcode_direct, $1)=yes # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. _LT_TAGVAR(hardcode_minus_L, $1)=yes _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' ;; hpux10*) if test yes,no = "$GCC,$with_gnu_ld"; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags' else _LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' fi if test no = "$with_gnu_ld"; then _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_direct_absolute, $1)=yes _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. _LT_TAGVAR(hardcode_minus_L, $1)=yes fi ;; hpux11*) if test yes,no = "$GCC,$with_gnu_ld"; then case $host_cpu in hppa*64*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' ;; ia64*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' ;; *) _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags' ;; esac else case $host_cpu in hppa*64*) _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' ;; ia64*) _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' ;; *) m4_if($1, [], [ # Older versions of the 11.00 compiler do not understand -b yet # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does) _LT_LINKER_OPTION([if $CC understands -b], _LT_TAGVAR(lt_cv_prog_compiler__b, $1), [-b], [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'], [_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'])], [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags']) ;; esac fi if test no = "$with_gnu_ld"; then _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: case $host_cpu in hppa*64*|ia64*) _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; *) _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_direct_absolute, $1)=yes _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. _LT_TAGVAR(hardcode_minus_L, $1)=yes ;; esac fi ;; irix5* | irix6* | nonstopux*) if test yes = "$GCC"; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' # Try to use the -exported_symbol ld option, if it does not # work, assume that -exports_file does not work either and # implicitly export all symbols. # This should be the same for all languages, so no per-tag cache variable. AC_CACHE_CHECK([whether the $host_os linker accepts -exported_symbol], [lt_cv_irix_exported_symbol], [save_LDFLAGS=$LDFLAGS LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null" AC_LINK_IFELSE( [AC_LANG_SOURCE( [AC_LANG_CASE([C], [[int foo (void) { return 0; }]], [C++], [[int foo (void) { return 0; }]], [Fortran 77], [[ subroutine foo end]], [Fortran], [[ subroutine foo end]])])], [lt_cv_irix_exported_symbol=yes], [lt_cv_irix_exported_symbol=no]) LDFLAGS=$save_LDFLAGS]) if test yes = "$lt_cv_irix_exported_symbol"; then _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations $wl-exports_file $wl$export_symbols -o $lib' fi _LT_TAGVAR(link_all_deplibs, $1)=no else _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -exports_file $export_symbols -o $lib' fi _LT_TAGVAR(archive_cmds_need_lc, $1)='no' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: _LT_TAGVAR(inherit_rpath, $1)=yes _LT_TAGVAR(link_all_deplibs, $1)=yes ;; linux*) case $cc_basename in tcc*) # Fabrice Bellard et al's Tiny C Compiler _LT_TAGVAR(ld_shlibs, $1)=yes _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' ;; esac ;; netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out else _LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF fi _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; newsos6) _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; *nto* | *qnx*) ;; openbsd* | bitrig*) if test -f /usr/libexec/ld.so; then _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no _LT_TAGVAR(hardcode_direct_absolute, $1)=yes if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-retain-symbols-file,$export_symbols' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' else _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' fi else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; os2*) _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_minus_L, $1)=yes _LT_TAGVAR(allow_undefined_flag, $1)=unsupported shrext_cmds=.dll _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ $ECHO EXPORTS >> $output_objdir/$libname.def~ emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ emximp -o $lib $output_objdir/$libname.def' _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ $ECHO EXPORTS >> $output_objdir/$libname.def~ prefix_cmds="$SED"~ if test EXPORTS = "`$SED 1q $export_symbols`"; then prefix_cmds="$prefix_cmds -e 1d"; fi~ prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ emximp -o $lib $output_objdir/$libname.def' _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes ;; osf3*) if test yes = "$GCC"; then _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*' _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' else _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' fi _LT_TAGVAR(archive_cmds_need_lc, $1)='no' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: ;; osf4* | osf5*) # as osf3* with the addition of -msym flag if test yes = "$GCC"; then _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*' _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $pic_flag $libobjs $deplibs $compiler_flags $wl-msym $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' else _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~ $CC -shared$allow_undefined_flag $wl-input $wl$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib~$RM $lib.exp' # Both c and cxx compiler support -rpath directly _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' fi _LT_TAGVAR(archive_cmds_need_lc, $1)='no' _LT_TAGVAR(hardcode_libdir_separator, $1)=: ;; solaris*) _LT_TAGVAR(no_undefined_flag, $1)=' -z defs' if test yes = "$GCC"; then wlarc='$wl' _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ $CC -shared $pic_flag $wl-z ${wl}text $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' else case `$CC -V 2>&1` in *"Compilers 5.0"*) wlarc='' _LT_TAGVAR(archive_cmds, $1)='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ $LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp' ;; *) wlarc='$wl' _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ $CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' ;; esac fi _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' _LT_TAGVAR(hardcode_shlibpath_var, $1)=no case $host_os in solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; *) # The compiler driver will combine and reorder linker options, # but understands '-z linker_flag'. GCC discards it without '$wl', # but is careful enough not to reorder. # Supported since Solaris 2.6 (maybe 2.5.1?) if test yes = "$GCC"; then _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract' else _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' fi ;; esac _LT_TAGVAR(link_all_deplibs, $1)=yes ;; sunos4*) if test sequent = "$host_vendor"; then # Use $CC to link under sequent, because it throws in some extra .o # files that make .init and .fini sections work. _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h $soname -o $lib $libobjs $deplibs $compiler_flags' else _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' fi _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_minus_L, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; sysv4) case $host_vendor in sni) _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true??? ;; siemens) ## LD is ld it makes a PLAMLIB ## CC just makes a GrossModule. _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs' _LT_TAGVAR(hardcode_direct, $1)=no ;; motorola) _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie ;; esac runpath_var='LD_RUN_PATH' _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; sysv4.3*) _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_shlibpath_var, $1)=no _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport' ;; sysv4*MP*) if test -d /usr/nec; then _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_shlibpath_var, $1)=no runpath_var=LD_RUN_PATH hardcode_runpath_var=yes _LT_TAGVAR(ld_shlibs, $1)=yes fi ;; sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*) _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text' _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no runpath_var='LD_RUN_PATH' if test yes = "$GCC"; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' else _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' fi ;; sysv5* | sco3.2v5* | sco5v6*) # Note: We CANNOT use -z defs as we might desire, because we do not # link with -lc, and that would cause any symbols used from libc to # always be unresolved, which means just about no library would # ever link correctly. If we're not using GNU ld we use -z text # though, which does catch some bad symbols but isn't as heavy-handed # as -z defs. _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text' _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs' _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=':' _LT_TAGVAR(link_all_deplibs, $1)=yes _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport' runpath_var='LD_RUN_PATH' if test yes = "$GCC"; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' else _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' fi ;; uts4*) _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; *) _LT_TAGVAR(ld_shlibs, $1)=no ;; esac if test sni = "$host_vendor"; then case $host in sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Blargedynsym' ;; esac fi fi ]) AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)]) test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no _LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld _LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl _LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl _LT_DECL([], [extract_expsyms_cmds], [2], [The commands to extract the exported symbol list from a shared archive]) # # Do we need to explicitly link libc? # case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in x|xyes) # Assume -lc should be added _LT_TAGVAR(archive_cmds_need_lc, $1)=yes if test yes,yes = "$GCC,$enable_shared"; then case $_LT_TAGVAR(archive_cmds, $1) in *'~'*) # FIXME: we may have to deal with multi-command sequences. ;; '$CC '*) # Test whether the compiler implicitly links with -lc since on some # systems, -lgcc has to come before -lc. If gcc already passes -lc # to ld, don't add -lc before -lgcc. AC_CACHE_CHECK([whether -lc should be explicitly linked in], [lt_cv_]_LT_TAGVAR(archive_cmds_need_lc, $1), [$RM conftest* echo "$lt_simple_compile_test_code" > conftest.$ac_ext if AC_TRY_EVAL(ac_compile) 2>conftest.err; then soname=conftest lib=conftest libobjs=conftest.$ac_objext deplibs= wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1) compiler_flags=-v linker_flags=-v verstring= output_objdir=. libname=conftest lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1) _LT_TAGVAR(allow_undefined_flag, $1)= if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) then lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=no else lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=yes fi _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag else cat conftest.err 1>&5 fi $RM conftest* ]) _LT_TAGVAR(archive_cmds_need_lc, $1)=$lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1) ;; esac fi ;; esac _LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0], [Whether or not to add -lc for building shared libraries]) _LT_TAGDECL([allow_libtool_libs_with_static_runtimes], [enable_shared_with_static_runtimes], [0], [Whether or not to disallow shared libs when runtime libs are static]) _LT_TAGDECL([], [export_dynamic_flag_spec], [1], [Compiler flag to allow reflexive dlopens]) _LT_TAGDECL([], [whole_archive_flag_spec], [1], [Compiler flag to generate shared objects directly from archives]) _LT_TAGDECL([], [compiler_needs_object], [1], [Whether the compiler copes with passing no objects directly]) _LT_TAGDECL([], [old_archive_from_new_cmds], [2], [Create an old-style archive from a shared archive]) _LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2], [Create a temporary old-style archive to link instead of a shared archive]) _LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive]) _LT_TAGDECL([], [archive_expsym_cmds], [2]) _LT_TAGDECL([], [module_cmds], [2], [Commands used to build a loadable module if different from building a shared archive.]) _LT_TAGDECL([], [module_expsym_cmds], [2]) _LT_TAGDECL([], [with_gnu_ld], [1], [Whether we are building with GNU ld or not]) _LT_TAGDECL([], [allow_undefined_flag], [1], [Flag that allows shared libraries with undefined symbols to be built]) _LT_TAGDECL([], [no_undefined_flag], [1], [Flag that enforces no undefined symbols]) _LT_TAGDECL([], [hardcode_libdir_flag_spec], [1], [Flag to hardcode $libdir into a binary during linking. This must work even if $libdir does not exist]) _LT_TAGDECL([], [hardcode_libdir_separator], [1], [Whether we need a single "-rpath" flag with a separated argument]) _LT_TAGDECL([], [hardcode_direct], [0], [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes DIR into the resulting binary]) _LT_TAGDECL([], [hardcode_direct_absolute], [0], [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes DIR into the resulting binary and the resulting library dependency is "absolute", i.e impossible to change by setting $shlibpath_var if the library is relocated]) _LT_TAGDECL([], [hardcode_minus_L], [0], [Set to "yes" if using the -LDIR flag during linking hardcodes DIR into the resulting binary]) _LT_TAGDECL([], [hardcode_shlibpath_var], [0], [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into the resulting binary]) _LT_TAGDECL([], [hardcode_automatic], [0], [Set to "yes" if building a shared library automatically hardcodes DIR into the library and all subsequent libraries and executables linked against it]) _LT_TAGDECL([], [inherit_rpath], [0], [Set to yes if linker adds runtime paths of dependent libraries to runtime path list]) _LT_TAGDECL([], [link_all_deplibs], [0], [Whether libtool must link a program against all its dependency libraries]) _LT_TAGDECL([], [always_export_symbols], [0], [Set to "yes" if exported symbols are required]) _LT_TAGDECL([], [export_symbols_cmds], [2], [The commands to list exported symbols]) _LT_TAGDECL([], [exclude_expsyms], [1], [Symbols that should not be listed in the preloaded symbols]) _LT_TAGDECL([], [include_expsyms], [1], [Symbols that must always be exported]) _LT_TAGDECL([], [prelink_cmds], [2], [Commands necessary for linking programs (against libraries) with templates]) _LT_TAGDECL([], [postlink_cmds], [2], [Commands necessary for finishing linking programs]) _LT_TAGDECL([], [file_list_spec], [1], [Specify filename containing input files]) dnl FIXME: Not yet implemented dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1], dnl [Compiler flag to generate thread safe objects]) ])# _LT_LINKER_SHLIBS # _LT_LANG_C_CONFIG([TAG]) # ------------------------ # Ensure that the configuration variables for a C compiler are suitably # defined. These variables are subsequently used by _LT_CONFIG to write # the compiler configuration to 'libtool'. m4_defun([_LT_LANG_C_CONFIG], [m4_require([_LT_DECL_EGREP])dnl lt_save_CC=$CC AC_LANG_PUSH(C) # Source file extension for C test sources. ac_ext=c # Object file extension for compiled C test sources. objext=o _LT_TAGVAR(objext, $1)=$objext # Code to be used in simple compile tests lt_simple_compile_test_code="int some_variable = 0;" # Code to be used in simple link tests lt_simple_link_test_code='int main(){return(0);}' _LT_TAG_COMPILER # Save the default compiler, since it gets overwritten when the other # tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP. compiler_DEFAULT=$CC # save warnings/boilerplate of simple test code _LT_COMPILER_BOILERPLATE _LT_LINKER_BOILERPLATE if test -n "$compiler"; then _LT_COMPILER_NO_RTTI($1) _LT_COMPILER_PIC($1) _LT_COMPILER_C_O($1) _LT_COMPILER_FILE_LOCKS($1) _LT_LINKER_SHLIBS($1) _LT_SYS_DYNAMIC_LINKER($1) _LT_LINKER_HARDCODE_LIBPATH($1) LT_SYS_DLOPEN_SELF _LT_CMD_STRIPLIB # Report what library types will actually be built AC_MSG_CHECKING([if libtool supports shared libraries]) AC_MSG_RESULT([$can_build_shared]) AC_MSG_CHECKING([whether to build shared libraries]) test no = "$can_build_shared" && enable_shared=no # On AIX, shared libraries and static libraries use the same namespace, and # are all built from PIC. case $host_os in aix3*) test yes = "$enable_shared" && enable_static=no if test -n "$RANLIB"; then archive_cmds="$archive_cmds~\$RANLIB \$lib" postinstall_cmds='$RANLIB $lib' fi ;; aix[[4-9]]*) if test ia64 != "$host_cpu"; then case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in yes,aix,yes) ;; # shared object as lib.so file only yes,svr4,*) ;; # shared object as lib.so archive member only yes,*) enable_static=no ;; # shared object in lib.a archive as well esac fi ;; esac AC_MSG_RESULT([$enable_shared]) AC_MSG_CHECKING([whether to build static libraries]) # Make sure either enable_shared or enable_static is yes. test yes = "$enable_shared" || enable_static=yes AC_MSG_RESULT([$enable_static]) _LT_CONFIG($1) fi AC_LANG_POP CC=$lt_save_CC ])# _LT_LANG_C_CONFIG # _LT_LANG_CXX_CONFIG([TAG]) # -------------------------- # Ensure that the configuration variables for a C++ compiler are suitably # defined. These variables are subsequently used by _LT_CONFIG to write # the compiler configuration to 'libtool'. m4_defun([_LT_LANG_CXX_CONFIG], [m4_require([_LT_FILEUTILS_DEFAULTS])dnl m4_require([_LT_DECL_EGREP])dnl m4_require([_LT_PATH_MANIFEST_TOOL])dnl if test -n "$CXX" && ( test no != "$CXX" && ( (test g++ = "$CXX" && `g++ -v >/dev/null 2>&1` ) || (test g++ != "$CXX"))); then AC_PROG_CXXCPP else _lt_caught_CXX_error=yes fi AC_LANG_PUSH(C++) _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(allow_undefined_flag, $1)= _LT_TAGVAR(always_export_symbols, $1)=no _LT_TAGVAR(archive_expsym_cmds, $1)= _LT_TAGVAR(compiler_needs_object, $1)=no _LT_TAGVAR(export_dynamic_flag_spec, $1)= _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_direct_absolute, $1)=no _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= _LT_TAGVAR(hardcode_libdir_separator, $1)= _LT_TAGVAR(hardcode_minus_L, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported _LT_TAGVAR(hardcode_automatic, $1)=no _LT_TAGVAR(inherit_rpath, $1)=no _LT_TAGVAR(module_cmds, $1)= _LT_TAGVAR(module_expsym_cmds, $1)= _LT_TAGVAR(link_all_deplibs, $1)=unknown _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds _LT_TAGVAR(reload_flag, $1)=$reload_flag _LT_TAGVAR(reload_cmds, $1)=$reload_cmds _LT_TAGVAR(no_undefined_flag, $1)= _LT_TAGVAR(whole_archive_flag_spec, $1)= _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no # Source file extension for C++ test sources. ac_ext=cpp # Object file extension for compiled C++ test sources. objext=o _LT_TAGVAR(objext, $1)=$objext # No sense in running all these tests if we already determined that # the CXX compiler isn't working. Some variables (like enable_shared) # are currently assumed to apply to all compilers on this platform, # and will be corrupted by setting them based on a non-working compiler. if test yes != "$_lt_caught_CXX_error"; then # Code to be used in simple compile tests lt_simple_compile_test_code="int some_variable = 0;" # Code to be used in simple link tests lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }' # ltmain only uses $CC for tagged configurations so make sure $CC is set. _LT_TAG_COMPILER # save warnings/boilerplate of simple test code _LT_COMPILER_BOILERPLATE _LT_LINKER_BOILERPLATE # Allow CC to be a program name with arguments. lt_save_CC=$CC lt_save_CFLAGS=$CFLAGS lt_save_LD=$LD lt_save_GCC=$GCC GCC=$GXX lt_save_with_gnu_ld=$with_gnu_ld lt_save_path_LD=$lt_cv_path_LD if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx else $as_unset lt_cv_prog_gnu_ld fi if test -n "${lt_cv_path_LDCXX+set}"; then lt_cv_path_LD=$lt_cv_path_LDCXX else $as_unset lt_cv_path_LD fi test -z "${LDCXX+set}" || LD=$LDCXX CC=${CXX-"c++"} CFLAGS=$CXXFLAGS compiler=$CC _LT_TAGVAR(compiler, $1)=$CC _LT_CC_BASENAME([$compiler]) if test -n "$compiler"; then # We don't want -fno-exception when compiling C++ code, so set the # no_builtin_flag separately if test yes = "$GXX"; then _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' else _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= fi if test yes = "$GXX"; then # Set up default GNU C++ configuration LT_PATH_LD # Check if GNU C++ uses GNU ld as the underlying linker, since the # archiving commands below assume that GNU ld is being used. if test yes = "$with_gnu_ld"; then _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' # If archive_cmds runs LD, not CC, wlarc should be empty # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to # investigate it a little bit more. (MM) wlarc='$wl' # ancient GNU ld didn't support --whole-archive et. al. if eval "`$CC -print-prog-name=ld` --help 2>&1" | $GREP 'no-whole-archive' > /dev/null; then _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive' else _LT_TAGVAR(whole_archive_flag_spec, $1)= fi else with_gnu_ld=no wlarc= # A generic and very simple default shared library creation # command for GNU C++ for the case where it uses the native # linker, instead of GNU ld. If possible, this setting should # overridden to take advantage of the native linker features on # the platform it is being used on. _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' fi # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' else GXX=no with_gnu_ld=no wlarc= fi # PORTME: fill in a description of your system's C++ link characteristics AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) _LT_TAGVAR(ld_shlibs, $1)=yes case $host_os in aix3*) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; aix[[4-9]]*) if test ia64 = "$host_cpu"; then # On IA64, the linker does run time linking by default, so we don't # have to do anything special. aix_use_runtimelinking=no exp_sym_flag='-Bexport' no_entry_flag= else aix_use_runtimelinking=no # Test if we are trying to use run time linking or normal # AIX style linking. If -brtl is somewhere in LDFLAGS, we # have runtime linking enabled, and use it for executables. # For shared libraries, we enable/disable runtime linking # depending on the kind of the shared library created - # when "with_aix_soname,aix_use_runtimelinking" is: # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables # "aix,yes" lib.so shared, rtl:yes, for executables # lib.a static archive # "both,no" lib.so.V(shr.o) shared, rtl:yes # lib.a(lib.so.V) shared, rtl:no, for executables # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables # lib.a(lib.so.V) shared, rtl:no # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables # lib.a static archive case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*) for ld_flag in $LDFLAGS; do case $ld_flag in *-brtl*) aix_use_runtimelinking=yes break ;; esac done if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then # With aix-soname=svr4, we create the lib.so.V shared archives only, # so we don't have lib.a shared libs to link our executables. # We have to force runtime linking in this case. aix_use_runtimelinking=yes LDFLAGS="$LDFLAGS -Wl,-brtl" fi ;; esac exp_sym_flag='-bexport' no_entry_flag='-bnoentry' fi # When large executables or shared objects are built, AIX ld can # have problems creating the table of contents. If linking a library # or program results in "error TOC overflow" add -mminimal-toc to # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. _LT_TAGVAR(archive_cmds, $1)='' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_direct_absolute, $1)=yes _LT_TAGVAR(hardcode_libdir_separator, $1)=':' _LT_TAGVAR(link_all_deplibs, $1)=yes _LT_TAGVAR(file_list_spec, $1)='$wl-f,' case $with_aix_soname,$aix_use_runtimelinking in aix,*) ;; # no import file svr4,* | *,yes) # use import file # The Import File defines what to hardcode. _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_direct_absolute, $1)=no ;; esac if test yes = "$GXX"; then case $host_os in aix4.[[012]]|aix4.[[012]].*) # We only want to do this on AIX 4.2 and lower, the check # below for broken collect2 doesn't work under 4.3+ collect2name=`$CC -print-prog-name=collect2` if test -f "$collect2name" && strings "$collect2name" | $GREP resolve_lib_name >/dev/null then # We have reworked collect2 : else # We have old collect2 _LT_TAGVAR(hardcode_direct, $1)=unsupported # It fails to find uninstalled libraries when the uninstalled # path is not listed in the libpath. Setting hardcode_minus_L # to unsupported forces relinking _LT_TAGVAR(hardcode_minus_L, $1)=yes _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)= fi esac shared_flag='-shared' if test yes = "$aix_use_runtimelinking"; then shared_flag=$shared_flag' $wl-G' fi # Need to ensure runtime linking is disabled for the traditional # shared library, or the linker may eventually find shared libraries # /with/ Import File - we do not want to mix them. shared_flag_aix='-shared' shared_flag_svr4='-shared $wl-G' else # not using gcc if test ia64 = "$host_cpu"; then # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release # chokes on -Wl,-G. The following line is correct: shared_flag='-G' else if test yes = "$aix_use_runtimelinking"; then shared_flag='$wl-G' else shared_flag='$wl-bM:SRE' fi shared_flag_aix='$wl-bM:SRE' shared_flag_svr4='$wl-G' fi fi _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall' # It seems that -bexpall does not export symbols beginning with # underscore (_), so it is better to generate a list of symbols to # export. _LT_TAGVAR(always_export_symbols, $1)=yes if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then # Warning - without using the other runtime loading flags (-brtl), # -berok will link without error, but may produce a broken library. # The "-G" linker flag allows undefined symbols. _LT_TAGVAR(no_undefined_flag, $1)='-bernotok' # Determine the default libpath from the value encoded in an empty # executable. _LT_SYS_MODULE_PATH_AIX([$1]) _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath" _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag else if test ia64 = "$host_cpu"; then _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib' _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs" _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\$wl$no_entry_flag"' $compiler_flags $wl$allow_undefined_flag '"\$wl$exp_sym_flag:\$export_symbols" else # Determine the default libpath from the value encoded in an # empty executable. _LT_SYS_MODULE_PATH_AIX([$1]) _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath" # Warning - without using the other run time loading flags, # -berok will link without error, but may produce a broken library. _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok' _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok' if test yes = "$with_gnu_ld"; then # We only use this code for GNU lds that support --whole-archive. _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive' else # Exported symbols can be pulled into shared objects from archives _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience' fi _LT_TAGVAR(archive_cmds_need_lc, $1)=yes _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d' # -brtl affects multiple linker settings, -berok does not and is overridden later compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`' if test svr4 != "$with_aix_soname"; then # This is similar to how AIX traditionally builds its shared # libraries. Need -bnortl late, we may have -brtl in LDFLAGS. _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname' fi if test aix != "$with_aix_soname"; then _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp' else # used by -dlpreopen to get the symbols _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV $output_objdir/$realname.d/$soname $output_objdir' fi _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d' fi fi ;; beos*) if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then _LT_TAGVAR(allow_undefined_flag, $1)=unsupported # Joseph Beckenbach says some releases of gcc # support --undefined. This deserves some investigation. FIXME _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; chorus*) case $cc_basename in *) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; esac ;; cygwin* | mingw* | pw32* | cegcc*) case $GXX,$cc_basename in ,cl* | no,cl*) # Native MSVC # hardcode_libdir_flag_spec is actually meaningless, as there is # no search path for DLLs. _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' _LT_TAGVAR(allow_undefined_flag, $1)=unsupported _LT_TAGVAR(always_export_symbols, $1)=yes _LT_TAGVAR(file_list_spec, $1)='@' # Tell ltmain to make .lib files, not .a files. libext=lib # Tell ltmain to make .dll files, not .so files. shrext_cmds=.dll # FIXME: Setting linknames here is a bad hack. _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames=' _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then cp "$export_symbols" "$output_objdir/$soname.def"; echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp"; else $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp; fi~ $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ linknames=' # The linker will not automatically build a static lib if we build a DLL. # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true' _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes # Don't use ranlib _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib' _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~ lt_tool_outputfile="@TOOL_OUTPUT@"~ case $lt_outputfile in *.exe|*.EXE) ;; *) lt_outputfile=$lt_outputfile.exe lt_tool_outputfile=$lt_tool_outputfile.exe ;; esac~ func_to_tool_file "$lt_outputfile"~ if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; $RM "$lt_outputfile.manifest"; fi' ;; *) # g++ # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, # as there is no search path for DLLs. _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols' _LT_TAGVAR(allow_undefined_flag, $1)=unsupported _LT_TAGVAR(always_export_symbols, $1)=no _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' # If the export-symbols file already is a .def file, use it as # is; otherwise, prepend EXPORTS... _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then cp $export_symbols $output_objdir/$soname.def; else echo EXPORTS > $output_objdir/$soname.def; cat $export_symbols >> $output_objdir/$soname.def; fi~ $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; esac ;; darwin* | rhapsody*) _LT_DARWIN_LINKER_FEATURES($1) ;; os2*) _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_minus_L, $1)=yes _LT_TAGVAR(allow_undefined_flag, $1)=unsupported shrext_cmds=.dll _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ $ECHO EXPORTS >> $output_objdir/$libname.def~ emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ emximp -o $lib $output_objdir/$libname.def' _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ $ECHO EXPORTS >> $output_objdir/$libname.def~ prefix_cmds="$SED"~ if test EXPORTS = "`$SED 1q $export_symbols`"; then prefix_cmds="$prefix_cmds -e 1d"; fi~ prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ emximp -o $lib $output_objdir/$libname.def' _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes ;; dgux*) case $cc_basename in ec++*) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; ghcx*) # Green Hills C++ Compiler # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; *) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; esac ;; freebsd2.*) # C++ shared libraries reported to be fairly broken before # switch to ELF _LT_TAGVAR(ld_shlibs, $1)=no ;; freebsd-elf*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;; freebsd* | dragonfly*) # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF # conventions _LT_TAGVAR(ld_shlibs, $1)=yes ;; haiku*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' _LT_TAGVAR(link_all_deplibs, $1)=yes ;; hpux9*) _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, # but as the default # location of the library. case $cc_basename in CC*) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; aCC*) _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -b $wl+b $wl$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. # # There doesn't appear to be a way to prevent this compiler from # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' ;; *) if test yes = "$GXX"; then _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' else # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no fi ;; esac ;; hpux10*|hpux11*) if test no = "$with_gnu_ld"; then _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: case $host_cpu in hppa*64*|ia64*) ;; *) _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' ;; esac fi case $host_cpu in hppa*64*|ia64*) _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; *) _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_direct_absolute, $1)=yes _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, # but as the default # location of the library. ;; esac case $cc_basename in CC*) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; aCC*) case $host_cpu in hppa*64*) _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; ia64*) _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; *) _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; esac # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. # # There doesn't appear to be a way to prevent this compiler from # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' ;; *) if test yes = "$GXX"; then if test no = "$with_gnu_ld"; then case $host_cpu in hppa*64*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; ia64*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; *) _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; esac fi else # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no fi ;; esac ;; interix[[3-9]]*) _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. # Instead, shared libraries are loaded at an image base (0x10000000 by # default) and relocated if they conflict, which is a slow very memory # consuming and fragmenting process. To avoid this, we pick a random, # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link # time. Moving up from 0x10000000 also allows more sbrk(2) space. _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' ;; irix5* | irix6*) case $cc_basename in CC*) # SGI C++ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' # Archives containing C++ object files must be created using # "CC -ar", where "CC" is the IRIX C++ compiler. This is # necessary to make sure instantiated templates are included # in the archive. _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs' ;; *) if test yes = "$GXX"; then if test no = "$with_gnu_ld"; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' else _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` -o $lib' fi fi _LT_TAGVAR(link_all_deplibs, $1)=yes ;; esac _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: _LT_TAGVAR(inherit_rpath, $1)=yes ;; linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) case $cc_basename in KCC*) # Kuck and Associates, Inc. (KAI) C++ Compiler # KCC will only create a shared library if the output file # ends with ".so" (or ".sl" for HP-UX), so rename the library # to its proper name (with version) after linking. _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib $wl-retain-symbols-file,$export_symbols; mv \$templib $lib' # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. # # There doesn't appear to be a way to prevent this compiler from # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' # Archives containing C++ object files must be created using # "CC -Bstatic", where "CC" is the KAI C++ compiler. _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;; icpc* | ecpc* ) # Intel C++ with_gnu_ld=yes # version 8.0 and above of icpc choke on multiply defined symbols # if we add $predep_objects and $postdep_objects, however 7.1 and # earlier do not add the objects themselves. case `$CC -V 2>&1` in *"Version 7."*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' ;; *) # Version 8.0 or newer tmp_idyn= case $host_cpu in ia64*) tmp_idyn=' -i_dynamic';; esac _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' ;; esac _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive' ;; pgCC* | pgcpp*) # Portland Group C++ compiler case `$CC -V` in *pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*) _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~ rm -rf $tpldir~ $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~ compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"' _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~ rm -rf $tpldir~ $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~ $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~ $RANLIB $oldlib' _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~ rm -rf $tpldir~ $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~ rm -rf $tpldir~ $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' ;; *) # Version 6 and above use weak symbols _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' ;; esac _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl--rpath $wl$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' ;; cxx*) # Compaq C++ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib $wl-retain-symbols-file $wl$export_symbols' runpath_var=LD_RUN_PATH _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. # # There doesn't appear to be a way to prevent this compiler from # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "X$list" | $Xsed' ;; xl* | mpixl* | bgxl*) # IBM XL 8.0 on PPC, with GNU ld _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' if test yes = "$supports_anon_versioning"; then _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ echo "local: *; };" >> $output_objdir/$libname.ver~ $CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib' fi ;; *) case `$CC -V 2>&1 | sed 5q` in *Sun\ C*) # Sun C++ 5.9 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs' _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-retain-symbols-file $wl$export_symbols' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' _LT_TAGVAR(compiler_needs_object, $1)=yes # Not sure whether something based on # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 # would be better. output_verbose_link_cmd='func_echo_all' # Archives containing C++ object files must be created using # "CC -xar", where "CC" is the Sun C++ compiler. This is # necessary to make sure instantiated templates are included # in the archive. _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs' ;; esac ;; esac ;; lynxos*) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; m88k*) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; mvs*) case $cc_basename in cxx*) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; *) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; esac ;; netbsd*) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags' wlarc= _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no fi # Workaround some broken pre-1.5 toolchains output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"' ;; *nto* | *qnx*) _LT_TAGVAR(ld_shlibs, $1)=yes ;; openbsd* | bitrig*) if test -f /usr/libexec/ld.so; then _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no _LT_TAGVAR(hardcode_direct_absolute, $1)=yes _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`"; then _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-retain-symbols-file,$export_symbols -o $lib' _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive' fi output_verbose_link_cmd=func_echo_all else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; osf3* | osf4* | osf5*) case $cc_basename in KCC*) # Kuck and Associates, Inc. (KAI) C++ Compiler # KCC will only create a shared library if the output file # ends with ".so" (or ".sl" for HP-UX), so rename the library # to its proper name (with version) after linking. _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: # Archives containing C++ object files must be created using # the KAI C++ compiler. case $host in osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;; *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;; esac ;; RCC*) # Rational C++ 2.4.1 # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; cxx*) case $host in osf3*) _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*' _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $soname `test -n "$verstring" && func_echo_all "$wl-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' ;; *) _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~ echo "-hidden">> $lib.exp~ $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname $wl-input $wl$lib.exp `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib~ $RM $lib.exp' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' ;; esac _LT_TAGVAR(hardcode_libdir_separator, $1)=: # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. # # There doesn't appear to be a way to prevent this compiler from # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' ;; *) if test yes,no = "$GXX,$with_gnu_ld"; then _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*' case $host in osf3*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' ;; *) _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-msym $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' ;; esac _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' else # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no fi ;; esac ;; psos*) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; sunos4*) case $cc_basename in CC*) # Sun C++ 4.x # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; lcc*) # Lucid # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; *) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; esac ;; solaris*) case $cc_basename in CC* | sunCC*) # Sun C++ 4.2, 5.x and Centerline C++ _LT_TAGVAR(archive_cmds_need_lc,$1)=yes _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs' _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ $CC -G$allow_undefined_flag $wl-M $wl$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' _LT_TAGVAR(hardcode_shlibpath_var, $1)=no case $host_os in solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; *) # The compiler driver will combine and reorder linker options, # but understands '-z linker_flag'. # Supported since Solaris 2.6 (maybe 2.5.1?) _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' ;; esac _LT_TAGVAR(link_all_deplibs, $1)=yes output_verbose_link_cmd='func_echo_all' # Archives containing C++ object files must be created using # "CC -xar", where "CC" is the Sun C++ compiler. This is # necessary to make sure instantiated templates are included # in the archive. _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs' ;; gcx*) # Green Hills C++ Compiler _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib' # The C++ compiler must be used to create the archive. _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs' ;; *) # GNU C++ compiler with Solaris linker if test yes,no = "$GXX,$with_gnu_ld"; then _LT_TAGVAR(no_undefined_flag, $1)=' $wl-z ${wl}defs' if $CC --version | $GREP -v '^2\.7' > /dev/null; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ $CC -shared $pic_flag -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' else # g++ 2.7 appears to require '-G' NOT '-shared' on this # platform. _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ $CC -G -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' fi _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $wl$libdir' case $host_os in solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; *) _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract' ;; esac fi ;; esac ;; sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*) _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text' _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no runpath_var='LD_RUN_PATH' case $cc_basename in CC*) _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' ;; *) _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' ;; esac ;; sysv5* | sco3.2v5* | sco5v6*) # Note: We CANNOT use -z defs as we might desire, because we do not # link with -lc, and that would cause any symbols used from libc to # always be unresolved, which means just about no library would # ever link correctly. If we're not using GNU ld we use -z text # though, which does catch some bad symbols but isn't as heavy-handed # as -z defs. _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text' _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs' _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=':' _LT_TAGVAR(link_all_deplibs, $1)=yes _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport' runpath_var='LD_RUN_PATH' case $cc_basename in CC*) _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~ '"$_LT_TAGVAR(old_archive_cmds, $1)" _LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~ '"$_LT_TAGVAR(reload_cmds, $1)" ;; *) _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' ;; esac ;; tandem*) case $cc_basename in NCC*) # NonStop-UX NCC 3.20 # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; *) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; esac ;; vxworks*) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; *) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; esac AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)]) test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no _LT_TAGVAR(GCC, $1)=$GXX _LT_TAGVAR(LD, $1)=$LD ## CAVEAT EMPTOR: ## There is no encapsulation within the following macros, do not change ## the running order or otherwise move them around unless you know exactly ## what you are doing... _LT_SYS_HIDDEN_LIBDEPS($1) _LT_COMPILER_PIC($1) _LT_COMPILER_C_O($1) _LT_COMPILER_FILE_LOCKS($1) _LT_LINKER_SHLIBS($1) _LT_SYS_DYNAMIC_LINKER($1) _LT_LINKER_HARDCODE_LIBPATH($1) _LT_CONFIG($1) fi # test -n "$compiler" CC=$lt_save_CC CFLAGS=$lt_save_CFLAGS LDCXX=$LD LD=$lt_save_LD GCC=$lt_save_GCC with_gnu_ld=$lt_save_with_gnu_ld lt_cv_path_LDCXX=$lt_cv_path_LD lt_cv_path_LD=$lt_save_path_LD lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld fi # test yes != "$_lt_caught_CXX_error" AC_LANG_POP ])# _LT_LANG_CXX_CONFIG # _LT_FUNC_STRIPNAME_CNF # ---------------------- # func_stripname_cnf prefix suffix name # strip PREFIX and SUFFIX off of NAME. # PREFIX and SUFFIX must not contain globbing or regex special # characters, hashes, percent signs, but SUFFIX may contain a leading # dot (in which case that matches only a dot). # # This function is identical to the (non-XSI) version of func_stripname, # except this one can be used by m4 code that may be executed by configure, # rather than the libtool script. m4_defun([_LT_FUNC_STRIPNAME_CNF],[dnl AC_REQUIRE([_LT_DECL_SED]) AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH]) func_stripname_cnf () { case @S|@2 in .*) func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%\\\\@S|@2\$%%"`;; *) func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%@S|@2\$%%"`;; esac } # func_stripname_cnf ])# _LT_FUNC_STRIPNAME_CNF # _LT_SYS_HIDDEN_LIBDEPS([TAGNAME]) # --------------------------------- # Figure out "hidden" library dependencies from verbose # compiler output when linking a shared library. # Parse the compiler output and extract the necessary # objects, libraries and library flags. m4_defun([_LT_SYS_HIDDEN_LIBDEPS], [m4_require([_LT_FILEUTILS_DEFAULTS])dnl AC_REQUIRE([_LT_FUNC_STRIPNAME_CNF])dnl # Dependencies to place before and after the object being linked: _LT_TAGVAR(predep_objects, $1)= _LT_TAGVAR(postdep_objects, $1)= _LT_TAGVAR(predeps, $1)= _LT_TAGVAR(postdeps, $1)= _LT_TAGVAR(compiler_lib_search_path, $1)= dnl we can't use the lt_simple_compile_test_code here, dnl because it contains code intended for an executable, dnl not a library. It's possible we should let each dnl tag define a new lt_????_link_test_code variable, dnl but it's only used here... m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF int a; void foo (void) { a = 0; } _LT_EOF ], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF class Foo { public: Foo (void) { a = 0; } private: int a; }; _LT_EOF ], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF subroutine foo implicit none integer*4 a a=0 return end _LT_EOF ], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF subroutine foo implicit none integer a a=0 return end _LT_EOF ], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF public class foo { private int a; public void bar (void) { a = 0; } }; _LT_EOF ], [$1], [GO], [cat > conftest.$ac_ext <<_LT_EOF package foo func foo() { } _LT_EOF ]) _lt_libdeps_save_CFLAGS=$CFLAGS case "$CC $CFLAGS " in #( *\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;; *\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;; *\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;; esac dnl Parse the compiler output and extract the necessary dnl objects, libraries and library flags. if AC_TRY_EVAL(ac_compile); then # Parse the compiler output and extract the necessary # objects, libraries and library flags. # Sentinel used to keep track of whether or not we are before # the conftest object file. pre_test_object_deps_done=no for p in `eval "$output_verbose_link_cmd"`; do case $prev$p in -L* | -R* | -l*) # Some compilers place space between "-{L,R}" and the path. # Remove the space. if test x-L = "$p" || test x-R = "$p"; then prev=$p continue fi # Expand the sysroot to ease extracting the directories later. if test -z "$prev"; then case $p in -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;; -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;; -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;; esac fi case $p in =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;; esac if test no = "$pre_test_object_deps_done"; then case $prev in -L | -R) # Internal compiler library paths should come after those # provided the user. The postdeps already come after the # user supplied libs so there is no need to process them. if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then _LT_TAGVAR(compiler_lib_search_path, $1)=$prev$p else _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} $prev$p" fi ;; # The "-l" case would never come before the object being # linked, so don't bother handling this case. esac else if test -z "$_LT_TAGVAR(postdeps, $1)"; then _LT_TAGVAR(postdeps, $1)=$prev$p else _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} $prev$p" fi fi prev= ;; *.lto.$objext) ;; # Ignore GCC LTO objects *.$objext) # This assumes that the test object file only shows up # once in the compiler output. if test "$p" = "conftest.$objext"; then pre_test_object_deps_done=yes continue fi if test no = "$pre_test_object_deps_done"; then if test -z "$_LT_TAGVAR(predep_objects, $1)"; then _LT_TAGVAR(predep_objects, $1)=$p else _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p" fi else if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then _LT_TAGVAR(postdep_objects, $1)=$p else _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p" fi fi ;; *) ;; # Ignore the rest. esac done # Clean up. rm -f a.out a.exe else echo "libtool.m4: error: problem compiling $1 test program" fi $RM -f confest.$objext CFLAGS=$_lt_libdeps_save_CFLAGS # PORTME: override above test on systems where it is broken m4_if([$1], [CXX], [case $host_os in interix[[3-9]]*) # Interix 3.5 installs completely hosed .la files for C++, so rather than # hack all around it, let's just trust "g++" to DTRT. _LT_TAGVAR(predep_objects,$1)= _LT_TAGVAR(postdep_objects,$1)= _LT_TAGVAR(postdeps,$1)= ;; esac ]) case " $_LT_TAGVAR(postdeps, $1) " in *" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;; esac _LT_TAGVAR(compiler_lib_search_dirs, $1)= if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | $SED -e 's! -L! !g' -e 's!^ !!'` fi _LT_TAGDECL([], [compiler_lib_search_dirs], [1], [The directories searched by this compiler when creating a shared library]) _LT_TAGDECL([], [predep_objects], [1], [Dependencies to place before and after the objects being linked to create a shared library]) _LT_TAGDECL([], [postdep_objects], [1]) _LT_TAGDECL([], [predeps], [1]) _LT_TAGDECL([], [postdeps], [1]) _LT_TAGDECL([], [compiler_lib_search_path], [1], [The library search path used internally by the compiler when linking a shared library]) ])# _LT_SYS_HIDDEN_LIBDEPS # _LT_LANG_F77_CONFIG([TAG]) # -------------------------- # Ensure that the configuration variables for a Fortran 77 compiler are # suitably defined. These variables are subsequently used by _LT_CONFIG # to write the compiler configuration to 'libtool'. m4_defun([_LT_LANG_F77_CONFIG], [AC_LANG_PUSH(Fortran 77) if test -z "$F77" || test no = "$F77"; then _lt_disable_F77=yes fi _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(allow_undefined_flag, $1)= _LT_TAGVAR(always_export_symbols, $1)=no _LT_TAGVAR(archive_expsym_cmds, $1)= _LT_TAGVAR(export_dynamic_flag_spec, $1)= _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_direct_absolute, $1)=no _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= _LT_TAGVAR(hardcode_libdir_separator, $1)= _LT_TAGVAR(hardcode_minus_L, $1)=no _LT_TAGVAR(hardcode_automatic, $1)=no _LT_TAGVAR(inherit_rpath, $1)=no _LT_TAGVAR(module_cmds, $1)= _LT_TAGVAR(module_expsym_cmds, $1)= _LT_TAGVAR(link_all_deplibs, $1)=unknown _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds _LT_TAGVAR(reload_flag, $1)=$reload_flag _LT_TAGVAR(reload_cmds, $1)=$reload_cmds _LT_TAGVAR(no_undefined_flag, $1)= _LT_TAGVAR(whole_archive_flag_spec, $1)= _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no # Source file extension for f77 test sources. ac_ext=f # Object file extension for compiled f77 test sources. objext=o _LT_TAGVAR(objext, $1)=$objext # No sense in running all these tests if we already determined that # the F77 compiler isn't working. Some variables (like enable_shared) # are currently assumed to apply to all compilers on this platform, # and will be corrupted by setting them based on a non-working compiler. if test yes != "$_lt_disable_F77"; then # Code to be used in simple compile tests lt_simple_compile_test_code="\ subroutine t return end " # Code to be used in simple link tests lt_simple_link_test_code="\ program t end " # ltmain only uses $CC for tagged configurations so make sure $CC is set. _LT_TAG_COMPILER # save warnings/boilerplate of simple test code _LT_COMPILER_BOILERPLATE _LT_LINKER_BOILERPLATE # Allow CC to be a program name with arguments. lt_save_CC=$CC lt_save_GCC=$GCC lt_save_CFLAGS=$CFLAGS CC=${F77-"f77"} CFLAGS=$FFLAGS compiler=$CC _LT_TAGVAR(compiler, $1)=$CC _LT_CC_BASENAME([$compiler]) GCC=$G77 if test -n "$compiler"; then AC_MSG_CHECKING([if libtool supports shared libraries]) AC_MSG_RESULT([$can_build_shared]) AC_MSG_CHECKING([whether to build shared libraries]) test no = "$can_build_shared" && enable_shared=no # On AIX, shared libraries and static libraries use the same namespace, and # are all built from PIC. case $host_os in aix3*) test yes = "$enable_shared" && enable_static=no if test -n "$RANLIB"; then archive_cmds="$archive_cmds~\$RANLIB \$lib" postinstall_cmds='$RANLIB $lib' fi ;; aix[[4-9]]*) if test ia64 != "$host_cpu"; then case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in yes,aix,yes) ;; # shared object as lib.so file only yes,svr4,*) ;; # shared object as lib.so archive member only yes,*) enable_static=no ;; # shared object in lib.a archive as well esac fi ;; esac AC_MSG_RESULT([$enable_shared]) AC_MSG_CHECKING([whether to build static libraries]) # Make sure either enable_shared or enable_static is yes. test yes = "$enable_shared" || enable_static=yes AC_MSG_RESULT([$enable_static]) _LT_TAGVAR(GCC, $1)=$G77 _LT_TAGVAR(LD, $1)=$LD ## CAVEAT EMPTOR: ## There is no encapsulation within the following macros, do not change ## the running order or otherwise move them around unless you know exactly ## what you are doing... _LT_COMPILER_PIC($1) _LT_COMPILER_C_O($1) _LT_COMPILER_FILE_LOCKS($1) _LT_LINKER_SHLIBS($1) _LT_SYS_DYNAMIC_LINKER($1) _LT_LINKER_HARDCODE_LIBPATH($1) _LT_CONFIG($1) fi # test -n "$compiler" GCC=$lt_save_GCC CC=$lt_save_CC CFLAGS=$lt_save_CFLAGS fi # test yes != "$_lt_disable_F77" AC_LANG_POP ])# _LT_LANG_F77_CONFIG # _LT_LANG_FC_CONFIG([TAG]) # ------------------------- # Ensure that the configuration variables for a Fortran compiler are # suitably defined. These variables are subsequently used by _LT_CONFIG # to write the compiler configuration to 'libtool'. m4_defun([_LT_LANG_FC_CONFIG], [AC_LANG_PUSH(Fortran) if test -z "$FC" || test no = "$FC"; then _lt_disable_FC=yes fi _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(allow_undefined_flag, $1)= _LT_TAGVAR(always_export_symbols, $1)=no _LT_TAGVAR(archive_expsym_cmds, $1)= _LT_TAGVAR(export_dynamic_flag_spec, $1)= _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_direct_absolute, $1)=no _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= _LT_TAGVAR(hardcode_libdir_separator, $1)= _LT_TAGVAR(hardcode_minus_L, $1)=no _LT_TAGVAR(hardcode_automatic, $1)=no _LT_TAGVAR(inherit_rpath, $1)=no _LT_TAGVAR(module_cmds, $1)= _LT_TAGVAR(module_expsym_cmds, $1)= _LT_TAGVAR(link_all_deplibs, $1)=unknown _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds _LT_TAGVAR(reload_flag, $1)=$reload_flag _LT_TAGVAR(reload_cmds, $1)=$reload_cmds _LT_TAGVAR(no_undefined_flag, $1)= _LT_TAGVAR(whole_archive_flag_spec, $1)= _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no # Source file extension for fc test sources. ac_ext=${ac_fc_srcext-f} # Object file extension for compiled fc test sources. objext=o _LT_TAGVAR(objext, $1)=$objext # No sense in running all these tests if we already determined that # the FC compiler isn't working. Some variables (like enable_shared) # are currently assumed to apply to all compilers on this platform, # and will be corrupted by setting them based on a non-working compiler. if test yes != "$_lt_disable_FC"; then # Code to be used in simple compile tests lt_simple_compile_test_code="\ subroutine t return end " # Code to be used in simple link tests lt_simple_link_test_code="\ program t end " # ltmain only uses $CC for tagged configurations so make sure $CC is set. _LT_TAG_COMPILER # save warnings/boilerplate of simple test code _LT_COMPILER_BOILERPLATE _LT_LINKER_BOILERPLATE # Allow CC to be a program name with arguments. lt_save_CC=$CC lt_save_GCC=$GCC lt_save_CFLAGS=$CFLAGS CC=${FC-"f95"} CFLAGS=$FCFLAGS compiler=$CC GCC=$ac_cv_fc_compiler_gnu _LT_TAGVAR(compiler, $1)=$CC _LT_CC_BASENAME([$compiler]) if test -n "$compiler"; then AC_MSG_CHECKING([if libtool supports shared libraries]) AC_MSG_RESULT([$can_build_shared]) AC_MSG_CHECKING([whether to build shared libraries]) test no = "$can_build_shared" && enable_shared=no # On AIX, shared libraries and static libraries use the same namespace, and # are all built from PIC. case $host_os in aix3*) test yes = "$enable_shared" && enable_static=no if test -n "$RANLIB"; then archive_cmds="$archive_cmds~\$RANLIB \$lib" postinstall_cmds='$RANLIB $lib' fi ;; aix[[4-9]]*) if test ia64 != "$host_cpu"; then case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in yes,aix,yes) ;; # shared object as lib.so file only yes,svr4,*) ;; # shared object as lib.so archive member only yes,*) enable_static=no ;; # shared object in lib.a archive as well esac fi ;; esac AC_MSG_RESULT([$enable_shared]) AC_MSG_CHECKING([whether to build static libraries]) # Make sure either enable_shared or enable_static is yes. test yes = "$enable_shared" || enable_static=yes AC_MSG_RESULT([$enable_static]) _LT_TAGVAR(GCC, $1)=$ac_cv_fc_compiler_gnu _LT_TAGVAR(LD, $1)=$LD ## CAVEAT EMPTOR: ## There is no encapsulation within the following macros, do not change ## the running order or otherwise move them around unless you know exactly ## what you are doing... _LT_SYS_HIDDEN_LIBDEPS($1) _LT_COMPILER_PIC($1) _LT_COMPILER_C_O($1) _LT_COMPILER_FILE_LOCKS($1) _LT_LINKER_SHLIBS($1) _LT_SYS_DYNAMIC_LINKER($1) _LT_LINKER_HARDCODE_LIBPATH($1) _LT_CONFIG($1) fi # test -n "$compiler" GCC=$lt_save_GCC CC=$lt_save_CC CFLAGS=$lt_save_CFLAGS fi # test yes != "$_lt_disable_FC" AC_LANG_POP ])# _LT_LANG_FC_CONFIG # _LT_LANG_GCJ_CONFIG([TAG]) # -------------------------- # Ensure that the configuration variables for the GNU Java Compiler compiler # are suitably defined. These variables are subsequently used by _LT_CONFIG # to write the compiler configuration to 'libtool'. m4_defun([_LT_LANG_GCJ_CONFIG], [AC_REQUIRE([LT_PROG_GCJ])dnl AC_LANG_SAVE # Source file extension for Java test sources. ac_ext=java # Object file extension for compiled Java test sources. objext=o _LT_TAGVAR(objext, $1)=$objext # Code to be used in simple compile tests lt_simple_compile_test_code="class foo {}" # Code to be used in simple link tests lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }' # ltmain only uses $CC for tagged configurations so make sure $CC is set. _LT_TAG_COMPILER # save warnings/boilerplate of simple test code _LT_COMPILER_BOILERPLATE _LT_LINKER_BOILERPLATE # Allow CC to be a program name with arguments. lt_save_CC=$CC lt_save_CFLAGS=$CFLAGS lt_save_GCC=$GCC GCC=yes CC=${GCJ-"gcj"} CFLAGS=$GCJFLAGS compiler=$CC _LT_TAGVAR(compiler, $1)=$CC _LT_TAGVAR(LD, $1)=$LD _LT_CC_BASENAME([$compiler]) # GCJ did not exist at the time GCC didn't implicitly link libc in. _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds _LT_TAGVAR(reload_flag, $1)=$reload_flag _LT_TAGVAR(reload_cmds, $1)=$reload_cmds if test -n "$compiler"; then _LT_COMPILER_NO_RTTI($1) _LT_COMPILER_PIC($1) _LT_COMPILER_C_O($1) _LT_COMPILER_FILE_LOCKS($1) _LT_LINKER_SHLIBS($1) _LT_LINKER_HARDCODE_LIBPATH($1) _LT_CONFIG($1) fi AC_LANG_RESTORE GCC=$lt_save_GCC CC=$lt_save_CC CFLAGS=$lt_save_CFLAGS ])# _LT_LANG_GCJ_CONFIG # _LT_LANG_GO_CONFIG([TAG]) # -------------------------- # Ensure that the configuration variables for the GNU Go compiler # are suitably defined. These variables are subsequently used by _LT_CONFIG # to write the compiler configuration to 'libtool'. m4_defun([_LT_LANG_GO_CONFIG], [AC_REQUIRE([LT_PROG_GO])dnl AC_LANG_SAVE # Source file extension for Go test sources. ac_ext=go # Object file extension for compiled Go test sources. objext=o _LT_TAGVAR(objext, $1)=$objext # Code to be used in simple compile tests lt_simple_compile_test_code="package main; func main() { }" # Code to be used in simple link tests lt_simple_link_test_code='package main; func main() { }' # ltmain only uses $CC for tagged configurations so make sure $CC is set. _LT_TAG_COMPILER # save warnings/boilerplate of simple test code _LT_COMPILER_BOILERPLATE _LT_LINKER_BOILERPLATE # Allow CC to be a program name with arguments. lt_save_CC=$CC lt_save_CFLAGS=$CFLAGS lt_save_GCC=$GCC GCC=yes CC=${GOC-"gccgo"} CFLAGS=$GOFLAGS compiler=$CC _LT_TAGVAR(compiler, $1)=$CC _LT_TAGVAR(LD, $1)=$LD _LT_CC_BASENAME([$compiler]) # Go did not exist at the time GCC didn't implicitly link libc in. _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds _LT_TAGVAR(reload_flag, $1)=$reload_flag _LT_TAGVAR(reload_cmds, $1)=$reload_cmds if test -n "$compiler"; then _LT_COMPILER_NO_RTTI($1) _LT_COMPILER_PIC($1) _LT_COMPILER_C_O($1) _LT_COMPILER_FILE_LOCKS($1) _LT_LINKER_SHLIBS($1) _LT_LINKER_HARDCODE_LIBPATH($1) _LT_CONFIG($1) fi AC_LANG_RESTORE GCC=$lt_save_GCC CC=$lt_save_CC CFLAGS=$lt_save_CFLAGS ])# _LT_LANG_GO_CONFIG # _LT_LANG_RC_CONFIG([TAG]) # ------------------------- # Ensure that the configuration variables for the Windows resource compiler # are suitably defined. These variables are subsequently used by _LT_CONFIG # to write the compiler configuration to 'libtool'. m4_defun([_LT_LANG_RC_CONFIG], [AC_REQUIRE([LT_PROG_RC])dnl AC_LANG_SAVE # Source file extension for RC test sources. ac_ext=rc # Object file extension for compiled RC test sources. objext=o _LT_TAGVAR(objext, $1)=$objext # Code to be used in simple compile tests lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }' # Code to be used in simple link tests lt_simple_link_test_code=$lt_simple_compile_test_code # ltmain only uses $CC for tagged configurations so make sure $CC is set. _LT_TAG_COMPILER # save warnings/boilerplate of simple test code _LT_COMPILER_BOILERPLATE _LT_LINKER_BOILERPLATE # Allow CC to be a program name with arguments. lt_save_CC=$CC lt_save_CFLAGS=$CFLAGS lt_save_GCC=$GCC GCC= CC=${RC-"windres"} CFLAGS= compiler=$CC _LT_TAGVAR(compiler, $1)=$CC _LT_CC_BASENAME([$compiler]) _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes if test -n "$compiler"; then : _LT_CONFIG($1) fi GCC=$lt_save_GCC AC_LANG_RESTORE CC=$lt_save_CC CFLAGS=$lt_save_CFLAGS ])# _LT_LANG_RC_CONFIG # LT_PROG_GCJ # ----------- AC_DEFUN([LT_PROG_GCJ], [m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ], [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ], [AC_CHECK_TOOL(GCJ, gcj,) test set = "${GCJFLAGS+set}" || GCJFLAGS="-g -O2" AC_SUBST(GCJFLAGS)])])[]dnl ]) # Old name: AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([LT_AC_PROG_GCJ], []) # LT_PROG_GO # ---------- AC_DEFUN([LT_PROG_GO], [AC_CHECK_TOOL(GOC, gccgo,) ]) # LT_PROG_RC # ---------- AC_DEFUN([LT_PROG_RC], [AC_CHECK_TOOL(RC, windres,) ]) # Old name: AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([LT_AC_PROG_RC], []) # _LT_DECL_EGREP # -------------- # If we don't have a new enough Autoconf to choose the best grep # available, choose the one first in the user's PATH. m4_defun([_LT_DECL_EGREP], [AC_REQUIRE([AC_PROG_EGREP])dnl AC_REQUIRE([AC_PROG_FGREP])dnl test -z "$GREP" && GREP=grep _LT_DECL([], [GREP], [1], [A grep program that handles long lines]) _LT_DECL([], [EGREP], [1], [An ERE matcher]) _LT_DECL([], [FGREP], [1], [A literal string matcher]) dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too AC_SUBST([GREP]) ]) # _LT_DECL_OBJDUMP # -------------- # If we don't have a new enough Autoconf to choose the best objdump # available, choose the one first in the user's PATH. m4_defun([_LT_DECL_OBJDUMP], [AC_CHECK_TOOL(OBJDUMP, objdump, false) test -z "$OBJDUMP" && OBJDUMP=objdump _LT_DECL([], [OBJDUMP], [1], [An object symbol dumper]) AC_SUBST([OBJDUMP]) ]) # _LT_DECL_DLLTOOL # ---------------- # Ensure DLLTOOL variable is set. m4_defun([_LT_DECL_DLLTOOL], [AC_CHECK_TOOL(DLLTOOL, dlltool, false) test -z "$DLLTOOL" && DLLTOOL=dlltool _LT_DECL([], [DLLTOOL], [1], [DLL creation program]) AC_SUBST([DLLTOOL]) ]) # _LT_DECL_SED # ------------ # Check for a fully-functional sed program, that truncates # as few characters as possible. Prefer GNU sed if found. m4_defun([_LT_DECL_SED], [AC_PROG_SED test -z "$SED" && SED=sed Xsed="$SED -e 1s/^X//" _LT_DECL([], [SED], [1], [A sed program that does not truncate output]) _LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"], [Sed that helps us avoid accidentally triggering echo(1) options like -n]) ])# _LT_DECL_SED m4_ifndef([AC_PROG_SED], [ # NOTE: This macro has been submitted for inclusion into # # GNU Autoconf as AC_PROG_SED. When it is available in # # a released version of Autoconf we should remove this # # macro and use it instead. # m4_defun([AC_PROG_SED], [AC_MSG_CHECKING([for a sed that does not truncate output]) AC_CACHE_VAL(lt_cv_path_SED, [# Loop through the user's path and test for sed and gsed. # Then use that list of sed's as ones to test for truncation. as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for lt_ac_prog in sed gsed; do for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext" fi done done done IFS=$as_save_IFS lt_ac_max=0 lt_ac_count=0 # Add /usr/xpg4/bin/sed as it is typically found on Solaris # along with /bin/sed that truncates output. for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do test ! -f "$lt_ac_sed" && continue cat /dev/null > conftest.in lt_ac_count=0 echo $ECHO_N "0123456789$ECHO_C" >conftest.in # Check for GNU sed and select it if it is found. if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then lt_cv_path_SED=$lt_ac_sed break fi while true; do cat conftest.in conftest.in >conftest.tmp mv conftest.tmp conftest.in cp conftest.in conftest.nl echo >>conftest.nl $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break cmp -s conftest.out conftest.nl || break # 10000 chars as input seems more than enough test 10 -lt "$lt_ac_count" && break lt_ac_count=`expr $lt_ac_count + 1` if test "$lt_ac_count" -gt "$lt_ac_max"; then lt_ac_max=$lt_ac_count lt_cv_path_SED=$lt_ac_sed fi done done ]) SED=$lt_cv_path_SED AC_SUBST([SED]) AC_MSG_RESULT([$SED]) ])#AC_PROG_SED ])#m4_ifndef # Old name: AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([LT_AC_PROG_SED], []) # _LT_CHECK_SHELL_FEATURES # ------------------------ # Find out whether the shell is Bourne or XSI compatible, # or has some other useful features. m4_defun([_LT_CHECK_SHELL_FEATURES], [if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then lt_unset=unset else lt_unset=false fi _LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl # test EBCDIC or ASCII case `echo X|tr X '\101'` in A) # ASCII based system # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr lt_SP2NL='tr \040 \012' lt_NL2SP='tr \015\012 \040\040' ;; *) # EBCDIC based system lt_SP2NL='tr \100 \n' lt_NL2SP='tr \r\n \100\100' ;; esac _LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl _LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl ])# _LT_CHECK_SHELL_FEATURES # _LT_PATH_CONVERSION_FUNCTIONS # ----------------------------- # Determine what file name conversion functions should be used by # func_to_host_file (and, implicitly, by func_to_host_path). These are needed # for certain cross-compile configurations and native mingw. m4_defun([_LT_PATH_CONVERSION_FUNCTIONS], [AC_REQUIRE([AC_CANONICAL_HOST])dnl AC_REQUIRE([AC_CANONICAL_BUILD])dnl AC_MSG_CHECKING([how to convert $build file names to $host format]) AC_CACHE_VAL(lt_cv_to_host_file_cmd, [case $host in *-*-mingw* ) case $build in *-*-mingw* ) # actually msys lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32 ;; *-*-cygwin* ) lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32 ;; * ) # otherwise, assume *nix lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32 ;; esac ;; *-*-cygwin* ) case $build in *-*-mingw* ) # actually msys lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin ;; *-*-cygwin* ) lt_cv_to_host_file_cmd=func_convert_file_noop ;; * ) # otherwise, assume *nix lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin ;; esac ;; * ) # unhandled hosts (and "normal" native builds) lt_cv_to_host_file_cmd=func_convert_file_noop ;; esac ]) to_host_file_cmd=$lt_cv_to_host_file_cmd AC_MSG_RESULT([$lt_cv_to_host_file_cmd]) _LT_DECL([to_host_file_cmd], [lt_cv_to_host_file_cmd], [0], [convert $build file names to $host format])dnl AC_MSG_CHECKING([how to convert $build file names to toolchain format]) AC_CACHE_VAL(lt_cv_to_tool_file_cmd, [#assume ordinary cross tools, or native build. lt_cv_to_tool_file_cmd=func_convert_file_noop case $host in *-*-mingw* ) case $build in *-*-mingw* ) # actually msys lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32 ;; esac ;; esac ]) to_tool_file_cmd=$lt_cv_to_tool_file_cmd AC_MSG_RESULT([$lt_cv_to_tool_file_cmd]) _LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd], [0], [convert $build files to toolchain format])dnl ])# _LT_PATH_CONVERSION_FUNCTIONS # Helper functions for option handling. -*- Autoconf -*- # # Copyright (C) 2004-2005, 2007-2009, 2011-2015 Free Software # Foundation, Inc. # Written by Gary V. Vaughan, 2004 # # This file is free software; the Free Software Foundation gives # unlimited permission to copy and/or distribute it, with or without # modifications, as long as this notice is preserved. # serial 8 ltoptions.m4 # This is to help aclocal find these macros, as it can't see m4_define. AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])]) # _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME) # ------------------------------------------ m4_define([_LT_MANGLE_OPTION], [[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])]) # _LT_SET_OPTION(MACRO-NAME, OPTION-NAME) # --------------------------------------- # Set option OPTION-NAME for macro MACRO-NAME, and if there is a # matching handler defined, dispatch to it. Other OPTION-NAMEs are # saved as a flag. m4_define([_LT_SET_OPTION], [m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]), _LT_MANGLE_DEFUN([$1], [$2]), [m4_warning([Unknown $1 option '$2'])])[]dnl ]) # _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET]) # ------------------------------------------------------------ # Execute IF-SET if OPTION is set, IF-NOT-SET otherwise. m4_define([_LT_IF_OPTION], [m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])]) # _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET) # ------------------------------------------------------- # Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME # are set. m4_define([_LT_UNLESS_OPTIONS], [m4_foreach([_LT_Option], m4_split(m4_normalize([$2])), [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option), [m4_define([$0_found])])])[]dnl m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3 ])[]dnl ]) # _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST) # ---------------------------------------- # OPTION-LIST is a space-separated list of Libtool options associated # with MACRO-NAME. If any OPTION has a matching handler declared with # LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about # the unknown option and exit. m4_defun([_LT_SET_OPTIONS], [# Set options m4_foreach([_LT_Option], m4_split(m4_normalize([$2])), [_LT_SET_OPTION([$1], _LT_Option)]) m4_if([$1],[LT_INIT],[ dnl dnl Simply set some default values (i.e off) if boolean options were not dnl specified: _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no ]) _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no ]) dnl dnl If no reference was made to various pairs of opposing options, then dnl we run the default mode handler for the pair. For example, if neither dnl 'shared' nor 'disable-shared' was passed, we enable building of shared dnl archives by default: _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED]) _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC]) _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC]) _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install], [_LT_ENABLE_FAST_INSTALL]) _LT_UNLESS_OPTIONS([LT_INIT], [aix-soname=aix aix-soname=both aix-soname=svr4], [_LT_WITH_AIX_SONAME([aix])]) ]) ])# _LT_SET_OPTIONS # _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME) # ----------------------------------------- m4_define([_LT_MANGLE_DEFUN], [[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])]) # LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE) # ----------------------------------------------- m4_define([LT_OPTION_DEFINE], [m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl ])# LT_OPTION_DEFINE # dlopen # ------ LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes ]) AU_DEFUN([AC_LIBTOOL_DLOPEN], [_LT_SET_OPTION([LT_INIT], [dlopen]) AC_DIAGNOSE([obsolete], [$0: Remove this warning and the call to _LT_SET_OPTION when you put the 'dlopen' option into LT_INIT's first parameter.]) ]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], []) # win32-dll # --------- # Declare package support for building win32 dll's. LT_OPTION_DEFINE([LT_INIT], [win32-dll], [enable_win32_dll=yes case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*) AC_CHECK_TOOL(AS, as, false) AC_CHECK_TOOL(DLLTOOL, dlltool, false) AC_CHECK_TOOL(OBJDUMP, objdump, false) ;; esac test -z "$AS" && AS=as _LT_DECL([], [AS], [1], [Assembler program])dnl test -z "$DLLTOOL" && DLLTOOL=dlltool _LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl test -z "$OBJDUMP" && OBJDUMP=objdump _LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl ])# win32-dll AU_DEFUN([AC_LIBTOOL_WIN32_DLL], [AC_REQUIRE([AC_CANONICAL_HOST])dnl _LT_SET_OPTION([LT_INIT], [win32-dll]) AC_DIAGNOSE([obsolete], [$0: Remove this warning and the call to _LT_SET_OPTION when you put the 'win32-dll' option into LT_INIT's first parameter.]) ]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], []) # _LT_ENABLE_SHARED([DEFAULT]) # ---------------------------- # implement the --enable-shared flag, and supports the 'shared' and # 'disable-shared' LT_INIT options. # DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'. m4_define([_LT_ENABLE_SHARED], [m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl AC_ARG_ENABLE([shared], [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@], [build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])], [p=${PACKAGE-default} case $enableval in yes) enable_shared=yes ;; no) enable_shared=no ;; *) enable_shared=no # Look at the argument we got. We use all the common list separators. lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, for pkg in $enableval; do IFS=$lt_save_ifs if test "X$pkg" = "X$p"; then enable_shared=yes fi done IFS=$lt_save_ifs ;; esac], [enable_shared=]_LT_ENABLE_SHARED_DEFAULT) _LT_DECL([build_libtool_libs], [enable_shared], [0], [Whether or not to build shared libraries]) ])# _LT_ENABLE_SHARED LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])]) LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])]) # Old names: AC_DEFUN([AC_ENABLE_SHARED], [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared]) ]) AC_DEFUN([AC_DISABLE_SHARED], [_LT_SET_OPTION([LT_INIT], [disable-shared]) ]) AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)]) AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AM_ENABLE_SHARED], []) dnl AC_DEFUN([AM_DISABLE_SHARED], []) # _LT_ENABLE_STATIC([DEFAULT]) # ---------------------------- # implement the --enable-static flag, and support the 'static' and # 'disable-static' LT_INIT options. # DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'. m4_define([_LT_ENABLE_STATIC], [m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl AC_ARG_ENABLE([static], [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@], [build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])], [p=${PACKAGE-default} case $enableval in yes) enable_static=yes ;; no) enable_static=no ;; *) enable_static=no # Look at the argument we got. We use all the common list separators. lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, for pkg in $enableval; do IFS=$lt_save_ifs if test "X$pkg" = "X$p"; then enable_static=yes fi done IFS=$lt_save_ifs ;; esac], [enable_static=]_LT_ENABLE_STATIC_DEFAULT) _LT_DECL([build_old_libs], [enable_static], [0], [Whether or not to build static libraries]) ])# _LT_ENABLE_STATIC LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])]) LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])]) # Old names: AC_DEFUN([AC_ENABLE_STATIC], [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static]) ]) AC_DEFUN([AC_DISABLE_STATIC], [_LT_SET_OPTION([LT_INIT], [disable-static]) ]) AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)]) AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AM_ENABLE_STATIC], []) dnl AC_DEFUN([AM_DISABLE_STATIC], []) # _LT_ENABLE_FAST_INSTALL([DEFAULT]) # ---------------------------------- # implement the --enable-fast-install flag, and support the 'fast-install' # and 'disable-fast-install' LT_INIT options. # DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'. m4_define([_LT_ENABLE_FAST_INSTALL], [m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl AC_ARG_ENABLE([fast-install], [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@], [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])], [p=${PACKAGE-default} case $enableval in yes) enable_fast_install=yes ;; no) enable_fast_install=no ;; *) enable_fast_install=no # Look at the argument we got. We use all the common list separators. lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, for pkg in $enableval; do IFS=$lt_save_ifs if test "X$pkg" = "X$p"; then enable_fast_install=yes fi done IFS=$lt_save_ifs ;; esac], [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT) _LT_DECL([fast_install], [enable_fast_install], [0], [Whether or not to optimize for fast installation])dnl ])# _LT_ENABLE_FAST_INSTALL LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])]) LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])]) # Old names: AU_DEFUN([AC_ENABLE_FAST_INSTALL], [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install]) AC_DIAGNOSE([obsolete], [$0: Remove this warning and the call to _LT_SET_OPTION when you put the 'fast-install' option into LT_INIT's first parameter.]) ]) AU_DEFUN([AC_DISABLE_FAST_INSTALL], [_LT_SET_OPTION([LT_INIT], [disable-fast-install]) AC_DIAGNOSE([obsolete], [$0: Remove this warning and the call to _LT_SET_OPTION when you put the 'disable-fast-install' option into LT_INIT's first parameter.]) ]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], []) dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], []) # _LT_WITH_AIX_SONAME([DEFAULT]) # ---------------------------------- # implement the --with-aix-soname flag, and support the `aix-soname=aix' # and `aix-soname=both' and `aix-soname=svr4' LT_INIT options. DEFAULT # is either `aix', `both' or `svr4'. If omitted, it defaults to `aix'. m4_define([_LT_WITH_AIX_SONAME], [m4_define([_LT_WITH_AIX_SONAME_DEFAULT], [m4_if($1, svr4, svr4, m4_if($1, both, both, aix))])dnl shared_archive_member_spec= case $host,$enable_shared in power*-*-aix[[5-9]]*,yes) AC_MSG_CHECKING([which variant of shared library versioning to provide]) AC_ARG_WITH([aix-soname], [AS_HELP_STRING([--with-aix-soname=aix|svr4|both], [shared library versioning (aka "SONAME") variant to provide on AIX, @<:@default=]_LT_WITH_AIX_SONAME_DEFAULT[@:>@.])], [case $withval in aix|svr4|both) ;; *) AC_MSG_ERROR([Unknown argument to --with-aix-soname]) ;; esac lt_cv_with_aix_soname=$with_aix_soname], [AC_CACHE_VAL([lt_cv_with_aix_soname], [lt_cv_with_aix_soname=]_LT_WITH_AIX_SONAME_DEFAULT) with_aix_soname=$lt_cv_with_aix_soname]) AC_MSG_RESULT([$with_aix_soname]) if test aix != "$with_aix_soname"; then # For the AIX way of multilib, we name the shared archive member # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o', # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File. # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag, # the AIX toolchain works better with OBJECT_MODE set (default 32). if test 64 = "${OBJECT_MODE-32}"; then shared_archive_member_spec=shr_64 else shared_archive_member_spec=shr fi fi ;; *) with_aix_soname=aix ;; esac _LT_DECL([], [shared_archive_member_spec], [0], [Shared archive member basename, for filename based shared library versioning on AIX])dnl ])# _LT_WITH_AIX_SONAME LT_OPTION_DEFINE([LT_INIT], [aix-soname=aix], [_LT_WITH_AIX_SONAME([aix])]) LT_OPTION_DEFINE([LT_INIT], [aix-soname=both], [_LT_WITH_AIX_SONAME([both])]) LT_OPTION_DEFINE([LT_INIT], [aix-soname=svr4], [_LT_WITH_AIX_SONAME([svr4])]) # _LT_WITH_PIC([MODE]) # -------------------- # implement the --with-pic flag, and support the 'pic-only' and 'no-pic' # LT_INIT options. # MODE is either 'yes' or 'no'. If omitted, it defaults to 'both'. m4_define([_LT_WITH_PIC], [AC_ARG_WITH([pic], [AS_HELP_STRING([--with-pic@<:@=PKGS@:>@], [try to use only PIC/non-PIC objects @<:@default=use both@:>@])], [lt_p=${PACKAGE-default} case $withval in yes|no) pic_mode=$withval ;; *) pic_mode=default # Look at the argument we got. We use all the common list separators. lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, for lt_pkg in $withval; do IFS=$lt_save_ifs if test "X$lt_pkg" = "X$lt_p"; then pic_mode=yes fi done IFS=$lt_save_ifs ;; esac], [pic_mode=m4_default([$1], [default])]) _LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl ])# _LT_WITH_PIC LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])]) LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])]) # Old name: AU_DEFUN([AC_LIBTOOL_PICMODE], [_LT_SET_OPTION([LT_INIT], [pic-only]) AC_DIAGNOSE([obsolete], [$0: Remove this warning and the call to _LT_SET_OPTION when you put the 'pic-only' option into LT_INIT's first parameter.]) ]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_LIBTOOL_PICMODE], []) m4_define([_LTDL_MODE], []) LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive], [m4_define([_LTDL_MODE], [nonrecursive])]) LT_OPTION_DEFINE([LTDL_INIT], [recursive], [m4_define([_LTDL_MODE], [recursive])]) LT_OPTION_DEFINE([LTDL_INIT], [subproject], [m4_define([_LTDL_MODE], [subproject])]) m4_define([_LTDL_TYPE], []) LT_OPTION_DEFINE([LTDL_INIT], [installable], [m4_define([_LTDL_TYPE], [installable])]) LT_OPTION_DEFINE([LTDL_INIT], [convenience], [m4_define([_LTDL_TYPE], [convenience])]) # ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*- # # Copyright (C) 2004-2005, 2007-2008, 2011-2015 Free Software # Foundation, Inc. # Written by Gary V. Vaughan, 2004 # # This file is free software; the Free Software Foundation gives # unlimited permission to copy and/or distribute it, with or without # modifications, as long as this notice is preserved. # serial 6 ltsugar.m4 # This is to help aclocal find these macros, as it can't see m4_define. AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])]) # lt_join(SEP, ARG1, [ARG2...]) # ----------------------------- # Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their # associated separator. # Needed until we can rely on m4_join from Autoconf 2.62, since all earlier # versions in m4sugar had bugs. m4_define([lt_join], [m4_if([$#], [1], [], [$#], [2], [[$2]], [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])]) m4_define([_lt_join], [m4_if([$#$2], [2], [], [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])]) # lt_car(LIST) # lt_cdr(LIST) # ------------ # Manipulate m4 lists. # These macros are necessary as long as will still need to support # Autoconf-2.59, which quotes differently. m4_define([lt_car], [[$1]]) m4_define([lt_cdr], [m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])], [$#], 1, [], [m4_dquote(m4_shift($@))])]) m4_define([lt_unquote], $1) # lt_append(MACRO-NAME, STRING, [SEPARATOR]) # ------------------------------------------ # Redefine MACRO-NAME to hold its former content plus 'SEPARATOR''STRING'. # Note that neither SEPARATOR nor STRING are expanded; they are appended # to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked). # No SEPARATOR is output if MACRO-NAME was previously undefined (different # than defined and empty). # # This macro is needed until we can rely on Autoconf 2.62, since earlier # versions of m4sugar mistakenly expanded SEPARATOR but not STRING. m4_define([lt_append], [m4_define([$1], m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])]) # lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...]) # ---------------------------------------------------------- # Produce a SEP delimited list of all paired combinations of elements of # PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list # has the form PREFIXmINFIXSUFFIXn. # Needed until we can rely on m4_combine added in Autoconf 2.62. m4_define([lt_combine], [m4_if(m4_eval([$# > 3]), [1], [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl [[m4_foreach([_Lt_prefix], [$2], [m4_foreach([_Lt_suffix], ]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[, [_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])]) # lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ]) # ----------------------------------------------------------------------- # Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited # by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ. m4_define([lt_if_append_uniq], [m4_ifdef([$1], [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1], [lt_append([$1], [$2], [$3])$4], [$5])], [lt_append([$1], [$2], [$3])$4])]) # lt_dict_add(DICT, KEY, VALUE) # ----------------------------- m4_define([lt_dict_add], [m4_define([$1($2)], [$3])]) # lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE) # -------------------------------------------- m4_define([lt_dict_add_subkey], [m4_define([$1($2:$3)], [$4])]) # lt_dict_fetch(DICT, KEY, [SUBKEY]) # ---------------------------------- m4_define([lt_dict_fetch], [m4_ifval([$3], m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]), m4_ifdef([$1($2)], [m4_defn([$1($2)])]))]) # lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE]) # ----------------------------------------------------------------- m4_define([lt_if_dict_fetch], [m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4], [$5], [$6])]) # lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...]) # -------------------------------------------------------------- m4_define([lt_dict_filter], [m4_if([$5], [], [], [lt_join(m4_quote(m4_default([$4], [[, ]])), lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]), [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl ]) # ltversion.m4 -- version numbers -*- Autoconf -*- # # Copyright (C) 2004, 2011-2015 Free Software Foundation, Inc. # Written by Scott James Remnant, 2004 # # This file is free software; the Free Software Foundation gives # unlimited permission to copy and/or distribute it, with or without # modifications, as long as this notice is preserved. # @configure_input@ # serial 4179 ltversion.m4 # This file is part of GNU Libtool m4_define([LT_PACKAGE_VERSION], [2.4.6]) m4_define([LT_PACKAGE_REVISION], [2.4.6]) AC_DEFUN([LTVERSION_VERSION], [macro_version='2.4.6' macro_revision='2.4.6' _LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?]) _LT_DECL(, macro_revision, 0) ]) # lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*- # # Copyright (C) 2004-2005, 2007, 2009, 2011-2015 Free Software # Foundation, Inc. # Written by Scott James Remnant, 2004. # # This file is free software; the Free Software Foundation gives # unlimited permission to copy and/or distribute it, with or without # modifications, as long as this notice is preserved. # serial 5 lt~obsolete.m4 # These exist entirely to fool aclocal when bootstrapping libtool. # # In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN), # which have later been changed to m4_define as they aren't part of the # exported API, or moved to Autoconf or Automake where they belong. # # The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN # in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us # using a macro with the same name in our local m4/libtool.m4 it'll # pull the old libtool.m4 in (it doesn't see our shiny new m4_define # and doesn't know about Autoconf macros at all.) # # So we provide this file, which has a silly filename so it's always # included after everything else. This provides aclocal with the # AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything # because those macros already exist, or will be overwritten later. # We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6. # # Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here. # Yes, that means every name once taken will need to remain here until # we give up compatibility with versions before 1.7, at which point # we need to keep only those names which we still refer to. # This is to help aclocal find these macros, as it can't see m4_define. AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])]) m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])]) m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])]) m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])]) m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])]) m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])]) m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])]) m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])]) m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])]) m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])]) m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])]) m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])]) m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])]) m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])]) m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])]) m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])]) m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])]) m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])]) m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])]) m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])]) m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])]) m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])]) m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])]) m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])]) m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])]) m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])]) m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])]) m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])]) m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])]) m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])]) m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])]) m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])]) m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])]) m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])]) m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])]) m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])]) m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])]) m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])]) m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])]) m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])]) m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])]) m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])]) m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])]) m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])]) m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])]) m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])]) m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])]) m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])]) m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])]) m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])]) m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])]) m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])]) m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])]) m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])]) m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])]) m4_ifndef([_LT_REQUIRED_DARWIN_CHECKS], [AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS])]) m4_ifndef([_LT_AC_PROG_CXXCPP], [AC_DEFUN([_LT_AC_PROG_CXXCPP])]) m4_ifndef([_LT_PREPARE_SED_QUOTE_VARS], [AC_DEFUN([_LT_PREPARE_SED_QUOTE_VARS])]) m4_ifndef([_LT_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_PROG_ECHO_BACKSLASH])]) m4_ifndef([_LT_PROG_F77], [AC_DEFUN([_LT_PROG_F77])]) m4_ifndef([_LT_PROG_FC], [AC_DEFUN([_LT_PROG_FC])]) m4_ifndef([_LT_PROG_CXX], [AC_DEFUN([_LT_PROG_CXX])]) dnl pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*- dnl serial 11 (pkg-config-0.29) dnl dnl Copyright © 2004 Scott James Remnant . dnl Copyright © 2012-2015 Dan Nicholson dnl dnl This program is free software; you can redistribute it and/or modify dnl it under the terms of the GNU General Public License as published by dnl the Free Software Foundation; either version 2 of the License, or dnl (at your option) any later version. dnl dnl This program is distributed in the hope that it will be useful, but dnl WITHOUT ANY WARRANTY; without even the implied warranty of dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU dnl General Public License for more details. dnl dnl You should have received a copy of the GNU General Public License dnl along with this program; if not, write to the Free Software dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA dnl 02111-1307, USA. dnl dnl As a special exception to the GNU General Public License, if you dnl distribute this file as part of a program that contains a dnl configuration script generated by Autoconf, you may include it under dnl the same distribution terms that you use for the rest of that dnl program. dnl PKG_PREREQ(MIN-VERSION) dnl ----------------------- dnl Since: 0.29 dnl dnl Verify that the version of the pkg-config macros are at least dnl MIN-VERSION. Unlike PKG_PROG_PKG_CONFIG, which checks the user's dnl installed version of pkg-config, this checks the developer's version dnl of pkg.m4 when generating configure. dnl dnl To ensure that this macro is defined, also add: dnl m4_ifndef([PKG_PREREQ], dnl [m4_fatal([must install pkg-config 0.29 or later before running autoconf/autogen])]) dnl dnl See the "Since" comment for each macro you use to see what version dnl of the macros you require. m4_defun([PKG_PREREQ], [m4_define([PKG_MACROS_VERSION], [0.29]) m4_if(m4_version_compare(PKG_MACROS_VERSION, [$1]), -1, [m4_fatal([pkg.m4 version $1 or higher is required but ]PKG_MACROS_VERSION[ found])]) ])dnl PKG_PREREQ dnl PKG_PROG_PKG_CONFIG([MIN-VERSION]) dnl ---------------------------------- dnl Since: 0.16 dnl dnl Search for the pkg-config tool and set the PKG_CONFIG variable to dnl first found in the path. Checks that the version of pkg-config found dnl is at least MIN-VERSION. If MIN-VERSION is not specified, 0.9.0 is dnl used since that's the first version where most current features of dnl pkg-config existed. AC_DEFUN([PKG_PROG_PKG_CONFIG], [m4_pattern_forbid([^_?PKG_[A-Z_]+$]) m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$]) m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$]) AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility]) AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path]) AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path]) if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then AC_PATH_TOOL([PKG_CONFIG], [pkg-config]) fi if test -n "$PKG_CONFIG"; then _pkg_min_version=m4_default([$1], [0.9.0]) AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version]) if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then AC_MSG_RESULT([yes]) else AC_MSG_RESULT([no]) PKG_CONFIG="" fi fi[]dnl ])dnl PKG_PROG_PKG_CONFIG dnl PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) dnl ------------------------------------------------------------------- dnl Since: 0.18 dnl dnl Check to see whether a particular set of modules exists. Similar to dnl PKG_CHECK_MODULES(), but does not set variables or print errors. dnl dnl Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG]) dnl only at the first occurence in configure.ac, so if the first place dnl it's called might be skipped (such as if it is within an "if", you dnl have to call PKG_CHECK_EXISTS manually AC_DEFUN([PKG_CHECK_EXISTS], [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl if test -n "$PKG_CONFIG" && \ AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then m4_default([$2], [:]) m4_ifvaln([$3], [else $3])dnl fi]) dnl _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES]) dnl --------------------------------------------- dnl Internal wrapper calling pkg-config via PKG_CONFIG and setting dnl pkg_failed based on the result. m4_define([_PKG_CONFIG], [if test -n "$$1"; then pkg_cv_[]$1="$$1" elif test -n "$PKG_CONFIG"; then PKG_CHECK_EXISTS([$3], [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes ], [pkg_failed=yes]) else pkg_failed=untried fi[]dnl ])dnl _PKG_CONFIG dnl _PKG_SHORT_ERRORS_SUPPORTED dnl --------------------------- dnl Internal check to see if pkg-config supports short errors. AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED], [AC_REQUIRE([PKG_PROG_PKG_CONFIG]) if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi[]dnl ])dnl _PKG_SHORT_ERRORS_SUPPORTED dnl PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND], dnl [ACTION-IF-NOT-FOUND]) dnl -------------------------------------------------------------- dnl Since: 0.4.0 dnl dnl Note that if there is a possibility the first call to dnl PKG_CHECK_MODULES might not happen, you should be sure to include an dnl explicit call to PKG_PROG_PKG_CONFIG in your configure.ac AC_DEFUN([PKG_CHECK_MODULES], [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl pkg_failed=no AC_MSG_CHECKING([for $1]) _PKG_CONFIG([$1][_CFLAGS], [cflags], [$2]) _PKG_CONFIG([$1][_LIBS], [libs], [$2]) m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS and $1[]_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details.]) if test $pkg_failed = yes; then AC_MSG_RESULT([no]) _PKG_SHORT_ERRORS_SUPPORTED if test $_pkg_short_errors_supported = yes; then $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1` else $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD m4_default([$4], [AC_MSG_ERROR( [Package requirements ($2) were not met: $$1_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. _PKG_TEXT])[]dnl ]) elif test $pkg_failed = untried; then AC_MSG_RESULT([no]) m4_default([$4], [AC_MSG_FAILURE( [The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. _PKG_TEXT To get pkg-config, see .])[]dnl ]) else $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS $1[]_LIBS=$pkg_cv_[]$1[]_LIBS AC_MSG_RESULT([yes]) $3 fi[]dnl ])dnl PKG_CHECK_MODULES dnl PKG_CHECK_MODULES_STATIC(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND], dnl [ACTION-IF-NOT-FOUND]) dnl --------------------------------------------------------------------- dnl Since: 0.29 dnl dnl Checks for existence of MODULES and gathers its build flags with dnl static libraries enabled. Sets VARIABLE-PREFIX_CFLAGS from --cflags dnl and VARIABLE-PREFIX_LIBS from --libs. dnl dnl Note that if there is a possibility the first call to dnl PKG_CHECK_MODULES_STATIC might not happen, you should be sure to dnl include an explicit call to PKG_PROG_PKG_CONFIG in your dnl configure.ac. AC_DEFUN([PKG_CHECK_MODULES_STATIC], [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl _save_PKG_CONFIG=$PKG_CONFIG PKG_CONFIG="$PKG_CONFIG --static" PKG_CHECK_MODULES($@) PKG_CONFIG=$_save_PKG_CONFIG[]dnl ])dnl PKG_CHECK_MODULES_STATIC dnl PKG_INSTALLDIR([DIRECTORY]) dnl ------------------------- dnl Since: 0.27 dnl dnl Substitutes the variable pkgconfigdir as the location where a module dnl should install pkg-config .pc files. By default the directory is dnl $libdir/pkgconfig, but the default can be changed by passing dnl DIRECTORY. The user can override through the --with-pkgconfigdir dnl parameter. AC_DEFUN([PKG_INSTALLDIR], [m4_pushdef([pkg_default], [m4_default([$1], ['${libdir}/pkgconfig'])]) m4_pushdef([pkg_description], [pkg-config installation directory @<:@]pkg_default[@:>@]) AC_ARG_WITH([pkgconfigdir], [AS_HELP_STRING([--with-pkgconfigdir], pkg_description)],, [with_pkgconfigdir=]pkg_default) AC_SUBST([pkgconfigdir], [$with_pkgconfigdir]) m4_popdef([pkg_default]) m4_popdef([pkg_description]) ])dnl PKG_INSTALLDIR dnl PKG_NOARCH_INSTALLDIR([DIRECTORY]) dnl -------------------------------- dnl Since: 0.27 dnl dnl Substitutes the variable noarch_pkgconfigdir as the location where a dnl module should install arch-independent pkg-config .pc files. By dnl default the directory is $datadir/pkgconfig, but the default can be dnl changed by passing DIRECTORY. The user can override through the dnl --with-noarch-pkgconfigdir parameter. AC_DEFUN([PKG_NOARCH_INSTALLDIR], [m4_pushdef([pkg_default], [m4_default([$1], ['${datadir}/pkgconfig'])]) m4_pushdef([pkg_description], [pkg-config arch-independent installation directory @<:@]pkg_default[@:>@]) AC_ARG_WITH([noarch-pkgconfigdir], [AS_HELP_STRING([--with-noarch-pkgconfigdir], pkg_description)],, [with_noarch_pkgconfigdir=]pkg_default) AC_SUBST([noarch_pkgconfigdir], [$with_noarch_pkgconfigdir]) m4_popdef([pkg_default]) m4_popdef([pkg_description]) ])dnl PKG_NOARCH_INSTALLDIR dnl PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE, dnl [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) dnl ------------------------------------------- dnl Since: 0.28 dnl dnl Retrieves the value of the pkg-config variable for the given module. AC_DEFUN([PKG_CHECK_VAR], [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl AC_ARG_VAR([$1], [value of $3 for $2, overriding pkg-config])dnl _PKG_CONFIG([$1], [variable="][$3]["], [$2]) AS_VAR_COPY([$1], [pkg_cv_][$1]) AS_VAR_IF([$1], [""], [$5], [$4])dnl ])dnl PKG_CHECK_VAR # Copyright (C) 2002-2017 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_AUTOMAKE_VERSION(VERSION) # ---------------------------- # Automake X.Y traces this macro to ensure aclocal.m4 has been # generated from the m4 files accompanying Automake X.Y. # (This private macro should not be called outside this file.) AC_DEFUN([AM_AUTOMAKE_VERSION], [am__api_version='1.15' dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to dnl require some minimum version. Point them to the right macro. m4_if([$1], [1.15.1], [], [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl ]) # _AM_AUTOCONF_VERSION(VERSION) # ----------------------------- # aclocal traces this macro to find the Autoconf version. # This is a private macro too. Using m4_define simplifies # the logic in aclocal, which can simply ignore this definition. m4_define([_AM_AUTOCONF_VERSION], []) # AM_SET_CURRENT_AUTOMAKE_VERSION # ------------------------------- # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced. # This function is AC_REQUIREd by AM_INIT_AUTOMAKE. AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], [AM_AUTOMAKE_VERSION([1.15.1])dnl m4_ifndef([AC_AUTOCONF_VERSION], [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))]) # AM_AUX_DIR_EXPAND -*- Autoconf -*- # Copyright (C) 2001-2017 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets # $ac_aux_dir to '$srcdir/foo'. In other projects, it is set to # '$srcdir', '$srcdir/..', or '$srcdir/../..'. # # Of course, Automake must honor this variable whenever it calls a # tool from the auxiliary directory. The problem is that $srcdir (and # therefore $ac_aux_dir as well) can be either absolute or relative, # depending on how configure is run. This is pretty annoying, since # it makes $ac_aux_dir quite unusable in subdirectories: in the top # source directory, any form will work fine, but in subdirectories a # relative path needs to be adjusted first. # # $ac_aux_dir/missing # fails when called from a subdirectory if $ac_aux_dir is relative # $top_srcdir/$ac_aux_dir/missing # fails if $ac_aux_dir is absolute, # fails when called from a subdirectory in a VPATH build with # a relative $ac_aux_dir # # The reason of the latter failure is that $top_srcdir and $ac_aux_dir # are both prefixed by $srcdir. In an in-source build this is usually # harmless because $srcdir is '.', but things will broke when you # start a VPATH build or use an absolute $srcdir. # # So we could use something similar to $top_srcdir/$ac_aux_dir/missing, # iff we strip the leading $srcdir from $ac_aux_dir. That would be: # am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"` # and then we would define $MISSING as # MISSING="\${SHELL} $am_aux_dir/missing" # This will work as long as MISSING is not called from configure, because # unfortunately $(top_srcdir) has no meaning in configure. # However there are other variables, like CC, which are often used in # configure, and could therefore not use this "fixed" $ac_aux_dir. # # Another solution, used here, is to always expand $ac_aux_dir to an # absolute PATH. The drawback is that using absolute paths prevent a # configured tree to be moved without reconfiguration. AC_DEFUN([AM_AUX_DIR_EXPAND], [AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl # Expand $ac_aux_dir to an absolute path. am_aux_dir=`cd "$ac_aux_dir" && pwd` ]) # AM_CONDITIONAL -*- Autoconf -*- # Copyright (C) 1997-2017 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_CONDITIONAL(NAME, SHELL-CONDITION) # ------------------------------------- # Define a conditional. AC_DEFUN([AM_CONDITIONAL], [AC_PREREQ([2.52])dnl m4_if([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])], [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl AC_SUBST([$1_TRUE])dnl AC_SUBST([$1_FALSE])dnl _AM_SUBST_NOTMAKE([$1_TRUE])dnl _AM_SUBST_NOTMAKE([$1_FALSE])dnl m4_define([_AM_COND_VALUE_$1], [$2])dnl if $2; then $1_TRUE= $1_FALSE='#' else $1_TRUE='#' $1_FALSE= fi AC_CONFIG_COMMANDS_PRE( [if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then AC_MSG_ERROR([[conditional "$1" was never defined. Usually this means the macro was only invoked conditionally.]]) fi])]) # Copyright (C) 1999-2017 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # There are a few dirty hacks below to avoid letting 'AC_PROG_CC' be # written in clear, in which case automake, when reading aclocal.m4, # will think it sees a *use*, and therefore will trigger all it's # C support machinery. Also note that it means that autoscan, seeing # CC etc. in the Makefile, will ask for an AC_PROG_CC use... # _AM_DEPENDENCIES(NAME) # ---------------------- # See how the compiler implements dependency checking. # NAME is "CC", "CXX", "OBJC", "OBJCXX", "UPC", or "GJC". # We try a few techniques and use that to set a single cache variable. # # We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was # modified to invoke _AM_DEPENDENCIES(CC); we would have a circular # dependency, and given that the user is not expected to run this macro, # just rely on AC_PROG_CC. AC_DEFUN([_AM_DEPENDENCIES], [AC_REQUIRE([AM_SET_DEPDIR])dnl AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl AC_REQUIRE([AM_MAKE_INCLUDE])dnl AC_REQUIRE([AM_DEP_TRACK])dnl m4_if([$1], [CC], [depcc="$CC" am_compiler_list=], [$1], [CXX], [depcc="$CXX" am_compiler_list=], [$1], [OBJC], [depcc="$OBJC" am_compiler_list='gcc3 gcc'], [$1], [OBJCXX], [depcc="$OBJCXX" am_compiler_list='gcc3 gcc'], [$1], [UPC], [depcc="$UPC" am_compiler_list=], [$1], [GCJ], [depcc="$GCJ" am_compiler_list='gcc3 gcc'], [depcc="$$1" am_compiler_list=]) AC_CACHE_CHECK([dependency style of $depcc], [am_cv_$1_dependencies_compiler_type], [if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then # We make a subdir and do the tests there. Otherwise we can end up # making bogus files that we don't know about and never remove. For # instance it was reported that on HP-UX the gcc test will end up # making a dummy file named 'D' -- because '-MD' means "put the output # in D". rm -rf conftest.dir mkdir conftest.dir # Copy depcomp to subdir because otherwise we won't find it if we're # using a relative directory. cp "$am_depcomp" conftest.dir cd conftest.dir # We will build objects and dependencies in a subdirectory because # it helps to detect inapplicable dependency modes. For instance # both Tru64's cc and ICC support -MD to output dependencies as a # side effect of compilation, but ICC will put the dependencies in # the current directory while Tru64 will put them in the object # directory. mkdir sub am_cv_$1_dependencies_compiler_type=none if test "$am_compiler_list" = ""; then am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp` fi am__universal=false m4_case([$1], [CC], [case " $depcc " in #( *\ -arch\ *\ -arch\ *) am__universal=true ;; esac], [CXX], [case " $depcc " in #( *\ -arch\ *\ -arch\ *) am__universal=true ;; esac]) for depmode in $am_compiler_list; do # Setup a source with many dependencies, because some compilers # like to wrap large dependency lists on column 80 (with \), and # we should not choose a depcomp mode which is confused by this. # # We need to recreate these files for each test, as the compiler may # overwrite some of them when testing with obscure command lines. # This happens at least with the AIX C compiler. : > sub/conftest.c for i in 1 2 3 4 5 6; do echo '#include "conftst'$i'.h"' >> sub/conftest.c # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with # Solaris 10 /bin/sh. echo '/* dummy */' > sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf # We check with '-c' and '-o' for the sake of the "dashmstdout" # mode. It turns out that the SunPro C++ compiler does not properly # handle '-M -o', and we need to detect this. Also, some Intel # versions had trouble with output in subdirs. am__obj=sub/conftest.${OBJEXT-o} am__minus_obj="-o $am__obj" case $depmode in gcc) # This depmode causes a compiler race in universal mode. test "$am__universal" = false || continue ;; nosideeffect) # After this tag, mechanisms are not by side-effect, so they'll # only be used when explicitly requested. if test "x$enable_dependency_tracking" = xyes; then continue else break fi ;; msvc7 | msvc7msys | msvisualcpp | msvcmsys) # This compiler won't grok '-c -o', but also, the minuso test has # not run yet. These depmodes are late enough in the game, and # so weak that their functioning should not be impacted. am__obj=conftest.${OBJEXT-o} am__minus_obj= ;; none) break ;; esac if depmode=$depmode \ source=sub/conftest.c object=$am__obj \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ >/dev/null 2>conftest.err && grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && grep $am__obj sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then # icc doesn't choke on unknown options, it will just issue warnings # or remarks (even with -Werror). So we grep stderr for any message # that says an option was ignored or not supported. # When given -MP, icc 7.0 and 7.1 complain thusly: # icc: Command line warning: ignoring option '-M'; no argument required # The diagnosis changed in icc 8.0: # icc: Command line remark: option '-MP' not supported if (grep 'ignoring option' conftest.err || grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else am_cv_$1_dependencies_compiler_type=$depmode break fi fi done cd .. rm -rf conftest.dir else am_cv_$1_dependencies_compiler_type=none fi ]) AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type]) AM_CONDITIONAL([am__fastdep$1], [ test "x$enable_dependency_tracking" != xno \ && test "$am_cv_$1_dependencies_compiler_type" = gcc3]) ]) # AM_SET_DEPDIR # ------------- # Choose a directory name for dependency files. # This macro is AC_REQUIREd in _AM_DEPENDENCIES. AC_DEFUN([AM_SET_DEPDIR], [AC_REQUIRE([AM_SET_LEADING_DOT])dnl AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl ]) # AM_DEP_TRACK # ------------ AC_DEFUN([AM_DEP_TRACK], [AC_ARG_ENABLE([dependency-tracking], [dnl AS_HELP_STRING( [--enable-dependency-tracking], [do not reject slow dependency extractors]) AS_HELP_STRING( [--disable-dependency-tracking], [speeds up one-time build])]) if test "x$enable_dependency_tracking" != xno; then am_depcomp="$ac_aux_dir/depcomp" AMDEPBACKSLASH='\' am__nodep='_no' fi AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno]) AC_SUBST([AMDEPBACKSLASH])dnl _AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl AC_SUBST([am__nodep])dnl _AM_SUBST_NOTMAKE([am__nodep])dnl ]) # Generate code to set up dependency tracking. -*- Autoconf -*- # Copyright (C) 1999-2017 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # _AM_OUTPUT_DEPENDENCY_COMMANDS # ------------------------------ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], [{ # Older Autoconf quotes --file arguments for eval, but not when files # are listed without --file. Let's play safe and only enable the eval # if we detect the quoting. case $CONFIG_FILES in *\'*) eval set x "$CONFIG_FILES" ;; *) set x $CONFIG_FILES ;; esac shift for mf do # Strip MF so we end up with the name of the file. mf=`echo "$mf" | sed -e 's/:.*$//'` # Check whether this is an Automake generated Makefile or not. # We used to match only the files named 'Makefile.in', but # some people rename them; so instead we look at the file content. # Grep'ing the first line is not enough: some people post-process # each Makefile.in and add a new line on top of each file to say so. # Grep'ing the whole file is not good either: AIX grep has a line # limit of 2048, but all sed's we know have understand at least 4000. if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then dirpart=`AS_DIRNAME("$mf")` else continue fi # Extract the definition of DEPDIR, am__include, and am__quote # from the Makefile without running 'make'. DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` test -z "$DEPDIR" && continue am__include=`sed -n 's/^am__include = //p' < "$mf"` test -z "$am__include" && continue am__quote=`sed -n 's/^am__quote = //p' < "$mf"` # Find all dependency output files, they are included files with # $(DEPDIR) in their names. We invoke sed twice because it is the # simplest approach to changing $(DEPDIR) to its actual value in the # expansion. for file in `sed -n " s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do # Make sure the directory exists. test -f "$dirpart/$file" && continue fdir=`AS_DIRNAME(["$file"])` AS_MKDIR_P([$dirpart/$fdir]) # echo "creating $dirpart/$file" echo '# dummy' > "$dirpart/$file" done done } ])# _AM_OUTPUT_DEPENDENCY_COMMANDS # AM_OUTPUT_DEPENDENCY_COMMANDS # ----------------------------- # This macro should only be invoked once -- use via AC_REQUIRE. # # This code is only required when automatic dependency tracking # is enabled. FIXME. This creates each '.P' file that we will # need in order to bootstrap the dependency handling code. AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS], [AC_CONFIG_COMMANDS([depfiles], [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS], [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"]) ]) # Do all the work for Automake. -*- Autoconf -*- # Copyright (C) 1996-2017 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This macro actually does too much. Some checks are only needed if # your package does certain things. But this isn't really a big deal. dnl Redefine AC_PROG_CC to automatically invoke _AM_PROG_CC_C_O. m4_define([AC_PROG_CC], m4_defn([AC_PROG_CC]) [_AM_PROG_CC_C_O ]) # AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE]) # AM_INIT_AUTOMAKE([OPTIONS]) # ----------------------------------------------- # The call with PACKAGE and VERSION arguments is the old style # call (pre autoconf-2.50), which is being phased out. PACKAGE # and VERSION should now be passed to AC_INIT and removed from # the call to AM_INIT_AUTOMAKE. # We support both call styles for the transition. After # the next Automake release, Autoconf can make the AC_INIT # arguments mandatory, and then we can depend on a new Autoconf # release and drop the old call support. AC_DEFUN([AM_INIT_AUTOMAKE], [AC_PREREQ([2.65])dnl dnl Autoconf wants to disallow AM_ names. We explicitly allow dnl the ones we care about. m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl AC_REQUIRE([AC_PROG_INSTALL])dnl if test "`cd $srcdir && pwd`" != "`pwd`"; then # Use -I$(srcdir) only when $(srcdir) != ., so that make's output # is not polluted with repeated "-I." AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl # test to see if srcdir already configured if test -f $srcdir/config.status; then AC_MSG_ERROR([source directory already configured; run "make distclean" there first]) fi fi # test whether we have cygpath if test -z "$CYGPATH_W"; then if (cygpath --version) >/dev/null 2>/dev/null; then CYGPATH_W='cygpath -w' else CYGPATH_W=echo fi fi AC_SUBST([CYGPATH_W]) # Define the identity of the package. dnl Distinguish between old-style and new-style calls. m4_ifval([$2], [AC_DIAGNOSE([obsolete], [$0: two- and three-arguments forms are deprecated.]) m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl AC_SUBST([PACKAGE], [$1])dnl AC_SUBST([VERSION], [$2])], [_AM_SET_OPTIONS([$1])dnl dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT. m4_if( m4_ifdef([AC_PACKAGE_NAME], [ok]):m4_ifdef([AC_PACKAGE_VERSION], [ok]), [ok:ok],, [m4_fatal([AC_INIT should be called with package and version arguments])])dnl AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl _AM_IF_OPTION([no-define],, [AC_DEFINE_UNQUOTED([PACKAGE], ["$PACKAGE"], [Name of package]) AC_DEFINE_UNQUOTED([VERSION], ["$VERSION"], [Version number of package])])dnl # Some tools Automake needs. AC_REQUIRE([AM_SANITY_CHECK])dnl AC_REQUIRE([AC_ARG_PROGRAM])dnl AM_MISSING_PROG([ACLOCAL], [aclocal-${am__api_version}]) AM_MISSING_PROG([AUTOCONF], [autoconf]) AM_MISSING_PROG([AUTOMAKE], [automake-${am__api_version}]) AM_MISSING_PROG([AUTOHEADER], [autoheader]) AM_MISSING_PROG([MAKEINFO], [makeinfo]) AC_REQUIRE([AM_PROG_INSTALL_SH])dnl AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl AC_REQUIRE([AC_PROG_MKDIR_P])dnl # For better backward compatibility. To be removed once Automake 1.9.x # dies out for good. For more background, see: # # AC_SUBST([mkdir_p], ['$(MKDIR_P)']) # We need awk for the "check" target (and possibly the TAP driver). The # system "awk" is bad on some platforms. AC_REQUIRE([AC_PROG_AWK])dnl AC_REQUIRE([AC_PROG_MAKE_SET])dnl AC_REQUIRE([AM_SET_LEADING_DOT])dnl _AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])], [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])], [_AM_PROG_TAR([v7])])]) _AM_IF_OPTION([no-dependencies],, [AC_PROVIDE_IFELSE([AC_PROG_CC], [_AM_DEPENDENCIES([CC])], [m4_define([AC_PROG_CC], m4_defn([AC_PROG_CC])[_AM_DEPENDENCIES([CC])])])dnl AC_PROVIDE_IFELSE([AC_PROG_CXX], [_AM_DEPENDENCIES([CXX])], [m4_define([AC_PROG_CXX], m4_defn([AC_PROG_CXX])[_AM_DEPENDENCIES([CXX])])])dnl AC_PROVIDE_IFELSE([AC_PROG_OBJC], [_AM_DEPENDENCIES([OBJC])], [m4_define([AC_PROG_OBJC], m4_defn([AC_PROG_OBJC])[_AM_DEPENDENCIES([OBJC])])])dnl AC_PROVIDE_IFELSE([AC_PROG_OBJCXX], [_AM_DEPENDENCIES([OBJCXX])], [m4_define([AC_PROG_OBJCXX], m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])dnl ]) AC_REQUIRE([AM_SILENT_RULES])dnl dnl The testsuite driver may need to know about EXEEXT, so add the dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This dnl macro is hooked onto _AC_COMPILER_EXEEXT early, see below. AC_CONFIG_COMMANDS_PRE(dnl [m4_provide_if([_AM_COMPILER_EXEEXT], [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl # POSIX will say in a future version that running "rm -f" with no argument # is OK; and we want to be able to make that assumption in our Makefile # recipes. So use an aggressive probe to check that the usage we want is # actually supported "in the wild" to an acceptable degree. # See automake bug#10828. # To make any issue more visible, cause the running configure to be aborted # by default if the 'rm' program in use doesn't match our expectations; the # user can still override this though. if rm -f && rm -fr && rm -rf; then : OK; else cat >&2 <<'END' Oops! Your 'rm' program seems unable to run without file operands specified on the command line, even when the '-f' option is present. This is contrary to the behaviour of most rm programs out there, and not conforming with the upcoming POSIX standard: Please tell bug-automake@gnu.org about your system, including the value of your $PATH and any error possibly output before this message. This can help us improve future automake versions. END if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then echo 'Configuration will proceed anyway, since you have set the' >&2 echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2 echo >&2 else cat >&2 <<'END' Aborting the configuration process, to ensure you take notice of the issue. You can download and install GNU coreutils to get an 'rm' implementation that behaves properly: . If you want to complete the configuration process using your problematic 'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM to "yes", and re-run configure. END AC_MSG_ERROR([Your 'rm' program is bad, sorry.]) fi fi dnl The trailing newline in this macro's definition is deliberate, for dnl backward compatibility and to allow trailing 'dnl'-style comments dnl after the AM_INIT_AUTOMAKE invocation. See automake bug#16841. ]) dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion. Do not dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further dnl mangled by Autoconf and run in a shell conditional statement. m4_define([_AC_COMPILER_EXEEXT], m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])]) # When config.status generates a header, we must update the stamp-h file. # This file resides in the same directory as the config header # that is generated. The stamp files are numbered to have different names. # Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the # loop where config.status creates the headers, so we can generate # our stamp files there. AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK], [# Compute $1's index in $config_headers. _am_arg=$1 _am_stamp_count=1 for _am_header in $config_headers :; do case $_am_header in $_am_arg | $_am_arg:* ) break ;; * ) _am_stamp_count=`expr $_am_stamp_count + 1` ;; esac done echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count]) # Copyright (C) 2001-2017 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_PROG_INSTALL_SH # ------------------ # Define $install_sh. AC_DEFUN([AM_PROG_INSTALL_SH], [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl if test x"${install_sh+set}" != xset; then case $am_aux_dir in *\ * | *\ *) install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;; *) install_sh="\${SHELL} $am_aux_dir/install-sh" esac fi AC_SUBST([install_sh])]) # Copyright (C) 2003-2017 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # Check whether the underlying file-system supports filenames # with a leading dot. For instance MS-DOS doesn't. AC_DEFUN([AM_SET_LEADING_DOT], [rm -rf .tst 2>/dev/null mkdir .tst 2>/dev/null if test -d .tst; then am__leading_dot=. else am__leading_dot=_ fi rmdir .tst 2>/dev/null AC_SUBST([am__leading_dot])]) # Check to see how 'make' treats includes. -*- Autoconf -*- # Copyright (C) 2001-2017 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_MAKE_INCLUDE() # ----------------- # Check to see how make treats includes. AC_DEFUN([AM_MAKE_INCLUDE], [am_make=${MAKE-make} cat > confinc << 'END' am__doit: @echo this is the am__doit target .PHONY: am__doit END # If we don't find an include directive, just comment out the code. AC_MSG_CHECKING([for style of include used by $am_make]) am__include="#" am__quote= _am_result=none # First try GNU make style include. echo "include confinc" > confmf # Ignore all kinds of additional output from 'make'. case `$am_make -s -f confmf 2> /dev/null` in #( *the\ am__doit\ target*) am__include=include am__quote= _am_result=GNU ;; esac # Now try BSD make style include. if test "$am__include" = "#"; then echo '.include "confinc"' > confmf case `$am_make -s -f confmf 2> /dev/null` in #( *the\ am__doit\ target*) am__include=.include am__quote="\"" _am_result=BSD ;; esac fi AC_SUBST([am__include]) AC_SUBST([am__quote]) AC_MSG_RESULT([$_am_result]) rm -f confinc confmf ]) # Fake the existence of programs that GNU maintainers use. -*- Autoconf -*- # Copyright (C) 1997-2017 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_MISSING_PROG(NAME, PROGRAM) # ------------------------------ AC_DEFUN([AM_MISSING_PROG], [AC_REQUIRE([AM_MISSING_HAS_RUN]) $1=${$1-"${am_missing_run}$2"} AC_SUBST($1)]) # AM_MISSING_HAS_RUN # ------------------ # Define MISSING if not defined so far and test if it is modern enough. # If it is, set am_missing_run to use it, otherwise, to nothing. AC_DEFUN([AM_MISSING_HAS_RUN], [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl AC_REQUIRE_AUX_FILE([missing])dnl if test x"${MISSING+set}" != xset; then case $am_aux_dir in *\ * | *\ *) MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;; *) MISSING="\${SHELL} $am_aux_dir/missing" ;; esac fi # Use eval to expand $SHELL if eval "$MISSING --is-lightweight"; then am_missing_run="$MISSING " else am_missing_run= AC_MSG_WARN(['missing' script is too old or missing]) fi ]) # Helper functions for option handling. -*- Autoconf -*- # Copyright (C) 2001-2017 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # _AM_MANGLE_OPTION(NAME) # ----------------------- AC_DEFUN([_AM_MANGLE_OPTION], [[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])]) # _AM_SET_OPTION(NAME) # -------------------- # Set option NAME. Presently that only means defining a flag for this option. AC_DEFUN([_AM_SET_OPTION], [m4_define(_AM_MANGLE_OPTION([$1]), [1])]) # _AM_SET_OPTIONS(OPTIONS) # ------------------------ # OPTIONS is a space-separated list of Automake options. AC_DEFUN([_AM_SET_OPTIONS], [m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])]) # _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET]) # ------------------------------------------- # Execute IF-SET if OPTION is set, IF-NOT-SET otherwise. AC_DEFUN([_AM_IF_OPTION], [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])]) # Copyright (C) 1999-2017 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # _AM_PROG_CC_C_O # --------------- # Like AC_PROG_CC_C_O, but changed for automake. We rewrite AC_PROG_CC # to automatically call this. AC_DEFUN([_AM_PROG_CC_C_O], [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl AC_REQUIRE_AUX_FILE([compile])dnl AC_LANG_PUSH([C])dnl AC_CACHE_CHECK( [whether $CC understands -c and -o together], [am_cv_prog_cc_c_o], [AC_LANG_CONFTEST([AC_LANG_PROGRAM([])]) # Make sure it works both with $CC and with simple cc. # Following AC_PROG_CC_C_O, we do the test twice because some # compilers refuse to overwrite an existing .o file with -o, # though they will create one. am_cv_prog_cc_c_o=yes for am_i in 1 2; do if AM_RUN_LOG([$CC -c conftest.$ac_ext -o conftest2.$ac_objext]) \ && test -f conftest2.$ac_objext; then : OK else am_cv_prog_cc_c_o=no break fi done rm -f core conftest* unset am_i]) if test "$am_cv_prog_cc_c_o" != yes; then # Losing compiler, so override with the script. # FIXME: It is wrong to rewrite CC. # But if we don't then we get into trouble of one sort or another. # A longer-term fix would be to have automake use am__CC in this case, # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)" CC="$am_aux_dir/compile $CC" fi AC_LANG_POP([C])]) # For backward compatibility. AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])]) # Copyright (C) 2001-2017 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_RUN_LOG(COMMAND) # ------------------- # Run COMMAND, save the exit status in ac_status, and log it. # (This has been adapted from Autoconf's _AC_RUN_LOG macro.) AC_DEFUN([AM_RUN_LOG], [{ echo "$as_me:$LINENO: $1" >&AS_MESSAGE_LOG_FD ($1) >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD (exit $ac_status); }]) # Check to make sure that the build environment is sane. -*- Autoconf -*- # Copyright (C) 1996-2017 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_SANITY_CHECK # --------------- AC_DEFUN([AM_SANITY_CHECK], [AC_MSG_CHECKING([whether build environment is sane]) # Reject unsafe characters in $srcdir or the absolute working directory # name. Accept space and tab only in the latter. am_lf=' ' case `pwd` in *[[\\\"\#\$\&\'\`$am_lf]]*) AC_MSG_ERROR([unsafe absolute working directory name]);; esac case $srcdir in *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*) AC_MSG_ERROR([unsafe srcdir value: '$srcdir']);; esac # Do 'set' in a subshell so we don't clobber the current shell's # arguments. Must try -L first in case configure is actually a # symlink; some systems play weird games with the mod time of symlinks # (eg FreeBSD returns the mod time of the symlink's containing # directory). if ( am_has_slept=no for am_try in 1 2; do echo "timestamp, slept: $am_has_slept" > conftest.file set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null` if test "$[*]" = "X"; then # -L didn't work. set X `ls -t "$srcdir/configure" conftest.file` fi if test "$[*]" != "X $srcdir/configure conftest.file" \ && test "$[*]" != "X conftest.file $srcdir/configure"; then # If neither matched, then we have a broken ls. This can happen # if, for instance, CONFIG_SHELL is bash and it inherits a # broken ls alias from the environment. This has actually # happened. Such a system could not be considered "sane". AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken alias in your environment]) fi if test "$[2]" = conftest.file || test $am_try -eq 2; then break fi # Just in case. sleep 1 am_has_slept=yes done test "$[2]" = conftest.file ) then # Ok. : else AC_MSG_ERROR([newly created file is older than distributed files! Check your system clock]) fi AC_MSG_RESULT([yes]) # If we didn't sleep, we still need to ensure time stamps of config.status and # generated files are strictly newer. am_sleep_pid= if grep 'slept: no' conftest.file >/dev/null 2>&1; then ( sleep 1 ) & am_sleep_pid=$! fi AC_CONFIG_COMMANDS_PRE( [AC_MSG_CHECKING([that generated files are newer than configure]) if test -n "$am_sleep_pid"; then # Hide warnings about reused PIDs. wait $am_sleep_pid 2>/dev/null fi AC_MSG_RESULT([done])]) rm -f conftest.file ]) # Copyright (C) 2009-2017 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_SILENT_RULES([DEFAULT]) # -------------------------- # Enable less verbose build rules; with the default set to DEFAULT # ("yes" being less verbose, "no" or empty being verbose). AC_DEFUN([AM_SILENT_RULES], [AC_ARG_ENABLE([silent-rules], [dnl AS_HELP_STRING( [--enable-silent-rules], [less verbose build output (undo: "make V=1")]) AS_HELP_STRING( [--disable-silent-rules], [verbose build output (undo: "make V=0")])dnl ]) case $enable_silent_rules in @%:@ ((( yes) AM_DEFAULT_VERBOSITY=0;; no) AM_DEFAULT_VERBOSITY=1;; *) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);; esac dnl dnl A few 'make' implementations (e.g., NonStop OS and NextStep) dnl do not support nested variable expansions. dnl See automake bug#9928 and bug#10237. am_make=${MAKE-make} AC_CACHE_CHECK([whether $am_make supports nested variables], [am_cv_make_support_nested_variables], [if AS_ECHO([['TRUE=$(BAR$(V)) BAR0=false BAR1=true V=1 am__doit: @$(TRUE) .PHONY: am__doit']]) | $am_make -f - >/dev/null 2>&1; then am_cv_make_support_nested_variables=yes else am_cv_make_support_nested_variables=no fi]) if test $am_cv_make_support_nested_variables = yes; then dnl Using '$V' instead of '$(V)' breaks IRIX make. AM_V='$(V)' AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' else AM_V=$AM_DEFAULT_VERBOSITY AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY fi AC_SUBST([AM_V])dnl AM_SUBST_NOTMAKE([AM_V])dnl AC_SUBST([AM_DEFAULT_V])dnl AM_SUBST_NOTMAKE([AM_DEFAULT_V])dnl AC_SUBST([AM_DEFAULT_VERBOSITY])dnl AM_BACKSLASH='\' AC_SUBST([AM_BACKSLASH])dnl _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl ]) # Copyright (C) 2001-2017 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_PROG_INSTALL_STRIP # --------------------- # One issue with vendor 'install' (even GNU) is that you can't # specify the program used to strip binaries. This is especially # annoying in cross-compiling environments, where the build's strip # is unlikely to handle the host's binaries. # Fortunately install-sh will honor a STRIPPROG variable, so we # always use install-sh in "make install-strip", and initialize # STRIPPROG with the value of the STRIP variable (set by the user). AC_DEFUN([AM_PROG_INSTALL_STRIP], [AC_REQUIRE([AM_PROG_INSTALL_SH])dnl # Installed binaries are usually stripped using 'strip' when the user # run "make install-strip". However 'strip' might not be the right # tool to use in cross-compilation environments, therefore Automake # will honor the 'STRIP' environment variable to overrule this program. dnl Don't test for $cross_compiling = yes, because it might be 'maybe'. if test "$cross_compiling" != no; then AC_CHECK_TOOL([STRIP], [strip], :) fi INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" AC_SUBST([INSTALL_STRIP_PROGRAM])]) # Copyright (C) 2006-2017 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # _AM_SUBST_NOTMAKE(VARIABLE) # --------------------------- # Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in. # This macro is traced by Automake. AC_DEFUN([_AM_SUBST_NOTMAKE]) # AM_SUBST_NOTMAKE(VARIABLE) # -------------------------- # Public sister of _AM_SUBST_NOTMAKE. AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)]) # Check how to create a tarball. -*- Autoconf -*- # Copyright (C) 2004-2017 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # _AM_PROG_TAR(FORMAT) # -------------------- # Check how to create a tarball in format FORMAT. # FORMAT should be one of 'v7', 'ustar', or 'pax'. # # Substitute a variable $(am__tar) that is a command # writing to stdout a FORMAT-tarball containing the directory # $tardir. # tardir=directory && $(am__tar) > result.tar # # Substitute a variable $(am__untar) that extract such # a tarball read from stdin. # $(am__untar) < result.tar # AC_DEFUN([_AM_PROG_TAR], [# Always define AMTAR for backward compatibility. Yes, it's still used # in the wild :-( We should find a proper way to deprecate it ... AC_SUBST([AMTAR], ['$${TAR-tar}']) # We'll loop over all known methods to create a tar archive until one works. _am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none' m4_if([$1], [v7], [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'], [m4_case([$1], [ustar], [# The POSIX 1988 'ustar' format is defined with fixed-size fields. # There is notably a 21 bits limit for the UID and the GID. In fact, # the 'pax' utility can hang on bigger UID/GID (see automake bug#8343 # and bug#13588). am_max_uid=2097151 # 2^21 - 1 am_max_gid=$am_max_uid # The $UID and $GID variables are not portable, so we need to resort # to the POSIX-mandated id(1) utility. Errors in the 'id' calls # below are definitely unexpected, so allow the users to see them # (that is, avoid stderr redirection). am_uid=`id -u || echo unknown` am_gid=`id -g || echo unknown` AC_MSG_CHECKING([whether UID '$am_uid' is supported by ustar format]) if test $am_uid -le $am_max_uid; then AC_MSG_RESULT([yes]) else AC_MSG_RESULT([no]) _am_tools=none fi AC_MSG_CHECKING([whether GID '$am_gid' is supported by ustar format]) if test $am_gid -le $am_max_gid; then AC_MSG_RESULT([yes]) else AC_MSG_RESULT([no]) _am_tools=none fi], [pax], [], [m4_fatal([Unknown tar format])]) AC_MSG_CHECKING([how to create a $1 tar archive]) # Go ahead even if we have the value already cached. We do so because we # need to set the values for the 'am__tar' and 'am__untar' variables. _am_tools=${am_cv_prog_tar_$1-$_am_tools} for _am_tool in $_am_tools; do case $_am_tool in gnutar) for _am_tar in tar gnutar gtar; do AM_RUN_LOG([$_am_tar --version]) && break done am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"' am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"' am__untar="$_am_tar -xf -" ;; plaintar) # Must skip GNU tar: if it does not support --format= it doesn't create # ustar tarball either. (tar --version) >/dev/null 2>&1 && continue am__tar='tar chf - "$$tardir"' am__tar_='tar chf - "$tardir"' am__untar='tar xf -' ;; pax) am__tar='pax -L -x $1 -w "$$tardir"' am__tar_='pax -L -x $1 -w "$tardir"' am__untar='pax -r' ;; cpio) am__tar='find "$$tardir" -print | cpio -o -H $1 -L' am__tar_='find "$tardir" -print | cpio -o -H $1 -L' am__untar='cpio -i -H $1 -d' ;; none) am__tar=false am__tar_=false am__untar=false ;; esac # If the value was cached, stop now. We just wanted to have am__tar # and am__untar set. test -n "${am_cv_prog_tar_$1}" && break # tar/untar a dummy directory, and stop if the command works. rm -rf conftest.dir mkdir conftest.dir echo GrepMe > conftest.dir/file AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar]) rm -rf conftest.dir if test -s conftest.tar; then AM_RUN_LOG([$am__untar /dev/null 2>&1 && break fi done rm -rf conftest.dir AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool]) AC_MSG_RESULT([$am_cv_prog_tar_$1])]) AC_SUBST([am__tar]) AC_SUBST([am__untar]) ]) # _AM_PROG_TAR unicode-screensaver-0.5.1/README0000644000175000017500000000400012552660042013256 00000000000000unicode-screensaver © 2006,2009,2010,2011 Joachim Breitner unicode-screensaver is a simple screensaver application that repeatedly randomly picks an unicode character and displays it in a very large font size together with its unicode code point and the character name. Installation ============ The unicode screensaver depends on these libraries: * libx11 * libxmu * libxt * libxft * libfontconfig You need to have the respective developer packages installed to compile unicode-screensaver. On Debian and derived distributions, these packages are required: libx11-dev libxmu-dev libxt-dev libxft-dev libfontconfig1-dev You can compile and install the screensaver as usual by running ./configure && make && make install See ./configure --help for options regarding the installation directories of the screensaver itself, xscreensaver config files, the .desktop files etc. To make sure that xscreensaver knows about your screen hack, please read the man pages for xscreensaver and xscreensaver-demo. Copyright and Licensing ======================= Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation. No representations are made about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty. The files in the directories hacks/ and utils/ are taken from the xscreensaver distribution and covered by the following copyrights: Copyright (c) 1992-2010 Jamie Zawinski utils/vroot.h is covered by: Copyright 1991 by Andreas Stolcke Copyright 1990 by Solbourne Computer Inc. The file unicode-names.h is a generated file copied from the gucharmap distribution and slightly modified. The data based on the Unicode stardard, the license of this data is distributed in the file COPYING.UNICODE.