aboutsummaryrefslogtreecommitdiff
path: root/libXfont/src/builtins
diff options
context:
space:
mode:
Diffstat (limited to 'libXfont/src/builtins')
-rw-r--r--libXfont/src/builtins/Makefile.am17
-rw-r--r--libXfont/src/builtins/Makefile.in463
-rw-r--r--libXfont/src/builtins/buildfont14
-rw-r--r--libXfont/src/builtins/builtin.h64
-rw-r--r--libXfont/src/builtins/dir.c217
-rw-r--r--libXfont/src/builtins/file.c133
-rw-r--r--libXfont/src/builtins/fonts.c1255
-rw-r--r--libXfont/src/builtins/fpe.c95
-rw-r--r--libXfont/src/builtins/render.c136
9 files changed, 2394 insertions, 0 deletions
diff --git a/libXfont/src/builtins/Makefile.am b/libXfont/src/builtins/Makefile.am
new file mode 100644
index 000000000..b203fda2f
--- /dev/null
+++ b/libXfont/src/builtins/Makefile.am
@@ -0,0 +1,17 @@
+INCLUDES = \
+ -I${top_srcdir}/include \
+ -I${top_srcdir}/src/bitmap
+
+AM_CFLAGS = $(XFONT_CFLAGS) $(OS_CFLAGS) $(CWARNFLAGS)
+
+noinst_LTLIBRARIES = libbuiltins.la
+
+libbuiltins_la_SOURCES = \
+ builtin.h \
+ dir.c \
+ file.c \
+ fonts.c \
+ fpe.c \
+ render.c
+
+EXTRA_DIST = buildfont
diff --git a/libXfont/src/builtins/Makefile.in b/libXfont/src/builtins/Makefile.in
new file mode 100644
index 000000000..3d57cfa88
--- /dev/null
+++ b/libXfont/src/builtins/Makefile.in
@@ -0,0 +1,463 @@
+# Makefile.in generated by automake 1.10 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006 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@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@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@
+subdir = src/builtins
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+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)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/config.h \
+ $(top_builddir)/include/X11/fonts/fontconf.h
+CONFIG_CLEAN_FILES =
+LTLIBRARIES = $(noinst_LTLIBRARIES)
+libbuiltins_la_LIBADD =
+am_libbuiltins_la_OBJECTS = dir.lo file.lo fonts.lo fpe.lo render.lo
+libbuiltins_la_OBJECTS = $(am_libbuiltins_la_OBJECTS)
+DEFAULT_INCLUDES = -I. -I$(top_builddir) -I$(top_builddir)/include/X11/fonts@am__isrc@
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+am__depfiles_maybe = depfiles
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
+ --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+CCLD = $(CC)
+LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
+ --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
+ $(LDFLAGS) -o $@
+SOURCES = $(libbuiltins_la_SOURCES)
+DIST_SOURCES = $(libbuiltins_la_SOURCES)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMTAR = @AMTAR@
+AR = @AR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CHANGELOG_CMD = @CHANGELOG_CMD@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CWARNFLAGS = @CWARNFLAGS@
+CXX = @CXX@
+CXXCPP = @CXXCPP@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO = @ECHO@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+ENCODINGSDIR = @ENCODINGSDIR@
+EXEEXT = @EXEEXT@
+F77 = @F77@
+FFLAGS = @FFLAGS@
+FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
+FREETYPE_LIBS = @FREETYPE_LIBS@
+FREETYPE_REQUIRES = @FREETYPE_REQUIRES@
+GREP = @GREP@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+MATH_LIBS = @MATH_LIBS@
+MKDIR_P = @MKDIR_P@
+OBJEXT = @OBJEXT@
+OS_CFLAGS = @OS_CFLAGS@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+PKG_CONFIG = @PKG_CONFIG@
+RANLIB = @RANLIB@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+XFONT_CFLAGS = @XFONT_CFLAGS@
+XFONT_LIBS = @XFONT_LIBS@
+X_GZIP_FONT_COMPRESSION = @X_GZIP_FONT_COMPRESSION@
+Z_LIBS = @Z_LIBS@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_F77 = @ac_ct_F77@
+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@
+distcleancheck_listfiles = @distcleancheck_listfiles@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+ft_config = @ft_config@
+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@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+INCLUDES = \
+ -I${top_srcdir}/include \
+ -I${top_srcdir}/src/bitmap
+
+AM_CFLAGS = $(XFONT_CFLAGS) $(OS_CFLAGS) $(CWARNFLAGS)
+noinst_LTLIBRARIES = libbuiltins.la
+libbuiltins_la_SOURCES = \
+ builtin.h \
+ dir.c \
+ file.c \
+ fonts.c \
+ fpe.c \
+ render.c
+
+EXTRA_DIST = buildfont
+all: all-am
+
+.SUFFIXES:
+.SUFFIXES: .c .lo .o .obj
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/builtins/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign src/builtins/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+clean-noinstLTLIBRARIES:
+ -test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES)
+ @list='$(noinst_LTLIBRARIES)'; for p in $$list; do \
+ dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
+ test "$$dir" != "$$p" || dir=.; \
+ echo "rm -f \"$${dir}/so_locations\""; \
+ rm -f "$${dir}/so_locations"; \
+ done
+libbuiltins.la: $(libbuiltins_la_OBJECTS) $(libbuiltins_la_DEPENDENCIES)
+ $(LINK) $(libbuiltins_la_OBJECTS) $(libbuiltins_la_LIBADD) $(LIBS)
+
+mostlyclean-compile:
+ -rm -f *.$(OBJEXT)
+
+distclean-compile:
+ -rm -f *.tab.c
+
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dir.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/file.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fonts.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fpe.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/render.Plo@am__quote@
+
+.c.o:
+@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(COMPILE) -c $<
+
+.c.obj:
+@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
+@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
+
+.c.lo:
+@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $<
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+
+ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) ' { files[$$0] = 1; } \
+ END { for (i in files) print i; }'`; \
+ mkid -fID $$unique
+tags: TAGS
+
+TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ tags=; \
+ here=`pwd`; \
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) ' { files[$$0] = 1; } \
+ END { for (i in files) print i; }'`; \
+ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+ test -n "$$unique" || unique=$$empty_fix; \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$tags $$unique; \
+ fi
+ctags: CTAGS
+CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ tags=; \
+ here=`pwd`; \
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) ' { files[$$0] = 1; } \
+ END { for (i in files) print i; }'`; \
+ test -z "$(CTAGS_ARGS)$$tags$$unique" \
+ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+ $$tags $$unique
+
+GTAGS:
+ here=`$(am__cd) $(top_builddir) && pwd` \
+ && cd $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) $$here
+
+distclean-tags:
+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+
+distdir: $(DISTFILES)
+ @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 $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+ fi; \
+ cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+ else \
+ test -f $(distdir)/$$file \
+ || cp -p $$d/$$file $(distdir)/$$file \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+check: check-am
+all-am: Makefile $(LTLIBRARIES)
+installdirs:
+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:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_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-libtool clean-noinstLTLIBRARIES \
+ mostlyclean-am
+
+distclean: distclean-am
+ -rm -rf ./$(DEPDIR)
+ -rm -f Makefile
+distclean-am: clean-am distclean-compile distclean-generic \
+ distclean-tags
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-info: install-info-am
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-ps: install-ps-am
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -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:
+
+.MAKE: install-am install-strip
+
+.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+ clean-libtool clean-noinstLTLIBRARIES ctags distclean \
+ distclean-compile distclean-generic distclean-libtool \
+ distclean-tags distdir dvi dvi-am html html-am info info-am \
+ install install-am install-data install-data-am install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am install-man \
+ 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 uninstall uninstall-am
+
+# 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:
diff --git a/libXfont/src/builtins/buildfont b/libXfont/src/builtins/buildfont
new file mode 100644
index 000000000..aa4602ff8
--- /dev/null
+++ b/libXfont/src/builtins/buildfont
@@ -0,0 +1,14 @@
+#!/bin/sh
+#
+# Convert a bdf file into C-code suitable for inclusion in
+# builtin fonts
+#
+FONT=$1
+NAME=$2
+echo 'static const char file_'$NAME'[] = {'
+bdftopcf -p1 -u1 $1 |
+ compress -b 12 |
+ od -b -v -w8 |
+ sed 's/^[0-9]*\( *\)/\1\1\1\1/' |
+ sed 's/\([0-9][0-9]*\)/'"'"'\\\1'"'"',/g'
+echo '};'
diff --git a/libXfont/src/builtins/builtin.h b/libXfont/src/builtins/builtin.h
new file mode 100644
index 000000000..f12f9b0f2
--- /dev/null
+++ b/libXfont/src/builtins/builtin.h
@@ -0,0 +1,64 @@
+/*
+ * Id: builtin.h,v 1.2 1999/11/02 06:16:47 keithp Exp $
+ *
+ * Copyright 1999 SuSE, Inc.
+ *
+ * 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, and that the name of SuSE not be used in advertising or
+ * publicity pertaining to distribution of the software without specific,
+ * written prior permission. SuSE makes no representations about the
+ * suitability of this software for any purpose. It is provided "as is"
+ * without express or implied warranty.
+ *
+ * SuSE DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL SuSE
+ * 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.
+ *
+ * Author: Keith Packard, SuSE, Inc.
+ */
+/* $XFree86: xc/lib/font/builtins/builtin.h,v 1.3 1999/12/30 02:29:49 robin Exp $ */
+
+#include <X11/Xdefs.h>
+#include <X11/fonts/font.h>
+#include <X11/fonts/fontxlfd.h>
+#include <X11/fonts/fntfil.h>
+#include <X11/fonts/fntfilio.h>
+#include <X11/fonts/fntfilst.h>
+
+typedef struct _BuiltinFile {
+ const char *name;
+ int len;
+ const char *bits;
+} BuiltinFileRec, *BuiltinFilePtr;
+
+typedef struct _BuiltinDir {
+ char *file_name;
+ char *font_name;
+} BuiltinDirRec, *BuiltinDirPtr;
+
+typedef struct _BuiltinAlias {
+ char *alias_name;
+ char *font_name;
+} BuiltinAliasRec, *BuiltinAliasPtr;
+
+extern const BuiltinFileRec builtin_files[];
+extern const int builtin_files_count;
+
+extern const BuiltinDirRec builtin_dir[];
+extern const int builtin_dir_count;
+
+extern const BuiltinAliasRec builtin_alias[];
+extern const int builtin_alias_count;
+
+extern FontFilePtr BuiltinFileOpen (char *);
+extern int BuiltinFileClose (BufFilePtr, int);
+extern int BuiltinReadDirectory (char *, FontDirectoryPtr *);
+extern void BuiltinRegisterFontFileFunctions (void);
+
+extern void BuiltinRegisterFpeFunctions (void);
diff --git a/libXfont/src/builtins/dir.c b/libXfont/src/builtins/dir.c
new file mode 100644
index 000000000..dd2ea1a86
--- /dev/null
+++ b/libXfont/src/builtins/dir.c
@@ -0,0 +1,217 @@
+/*
+ * Id: dir.c,v 1.2 1999/11/02 06:16:47 keithp Exp $
+ *
+ * Copyright 1999 SuSE, Inc.
+ *
+ * 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, and that the name of SuSE not be used in advertising or
+ * publicity pertaining to distribution of the software without specific,
+ * written prior permission. SuSE makes no representations about the
+ * suitability of this software for any purpose. It is provided "as is"
+ * without express or implied warranty.
+ *
+ * SuSE DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL SuSE
+ * 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.
+ *
+ * Author: Keith Packard, SuSE, Inc.
+ */
+/* $XFree86: xc/lib/font/builtins/dir.c,v 1.3 1999/12/30 02:29:49 robin Exp $ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+#include "builtin.h"
+
+static BuiltinDirPtr
+BuiltinDirsDup (const BuiltinDirPtr a_dirs,
+ int a_dirs_len)
+{
+ BuiltinDirPtr dirs=NULL ;
+ int i=0 ;
+
+ if (!a_dirs)
+ return NULL ;
+
+ dirs = xcalloc (a_dirs_len, sizeof (BuiltinDirRec)) ;
+ if (!dirs)
+ return NULL ;
+
+ for (i=0; i < a_dirs_len; i++) {
+ int len = strlen (a_dirs[i].file_name) ;
+ dirs[i].file_name = xcalloc (1, len+1) ;
+ memmove (dirs[i].file_name, a_dirs[i].file_name, len);
+ len = strlen (a_dirs[i].font_name) ;
+ dirs[i].font_name = xcalloc (1, len+1) ;
+ memmove (dirs[i].font_name, a_dirs[i].font_name, len);
+ }
+ return dirs ;
+}
+
+/**
+ * Copy a_save back into a_cur
+ * @param a_cur the instance of BuiltinDir to restore
+ * @param a_saved the saved instance of BuiltinDir to copy into a_cur
+ * @return 0 if went okay, 1 otherwise.
+ */
+static int
+BuiltinDirRestore (BuiltinDirPtr a_cur,
+ const BuiltinDirPtr a_saved)
+{
+ if (!a_cur)
+ return 1 ;
+ if (!a_saved)
+ return 0 ;
+
+ if (a_saved->font_name)
+ memmove (a_cur->font_name, a_saved->font_name, strlen (a_saved->font_name)) ;
+ return 0 ;
+}
+
+
+static int
+BuiltinDirsRestore (BuiltinDirPtr a_cur_tab,
+ const BuiltinDirPtr a_saved_tab,
+ int a_tab_len)
+{
+ int i=0 ;
+
+ if (!a_cur_tab)
+ return 1 ;
+ if (!a_saved_tab)
+ return 0 ;
+
+ for (i=0 ; i < a_tab_len; i++) {
+ if (BuiltinDirRestore (&a_cur_tab[i], &a_saved_tab[i]))
+ return 1 ;
+ }
+ return 0 ;
+}
+
+static BuiltinAliasPtr
+BuiltinAliasesDup (const BuiltinAliasPtr a_aliases,
+ int a_aliases_len)
+{
+ BuiltinAliasPtr aliases=NULL ;
+ int i=0 ;
+
+ if (!a_aliases)
+ return NULL ;
+
+ aliases = xcalloc (a_aliases_len, sizeof (BuiltinAliasRec)) ;
+ if (!aliases)
+ return NULL ;
+
+ for (i=0; i < a_aliases_len; i++) {
+ int len = strlen (a_aliases[i].font_name) ;
+ aliases[i].font_name = xcalloc (1, len+1) ;
+ memmove (aliases[i].font_name, a_aliases[i].font_name, len);
+ }
+ return aliases ;
+}
+
+/**
+ * Copy a_save back into a_cur
+ * @param a_cur the instance of BuiltinAlias to restore
+ * @param a_saved the saved instance of BuiltinAlias to copy into a_cur
+ * @return 0 if went okay, 1 otherwise.
+ */
+static int
+BuiltinAliasRestore (BuiltinAliasPtr a_cur,
+ const BuiltinAliasPtr a_save)
+{
+ if (!a_cur)
+ return 1 ;
+ if (!a_save)
+ return 0 ;
+ if (a_save->alias_name)
+ memmove (a_cur->alias_name, a_save->alias_name, strlen (a_save->alias_name)) ;
+ if (a_save->font_name)
+ memmove (a_cur->font_name, a_save->font_name, strlen (a_save->font_name)) ;
+ return 0 ;
+}
+
+static int
+BuiltinAliasesRestore (BuiltinAliasPtr a_cur_tab,
+ const BuiltinAliasPtr a_saved_tab,
+ int a_tab_len)
+{
+ int i=0 ;
+
+ if (!a_cur_tab)
+ return 1 ;
+ if (!a_saved_tab)
+ return 0 ;
+
+ for (i=0 ; i < a_tab_len; i++) {
+ if (BuiltinAliasRestore (&a_cur_tab[i], &a_saved_tab[i]))
+ return 1 ;
+ }
+ return 0 ;
+}
+
+int
+BuiltinReadDirectory (char *directory, FontDirectoryPtr *pdir)
+{
+ FontDirectoryPtr dir;
+ int i;
+
+ static BuiltinDirPtr saved_builtin_dir;
+ static BuiltinAliasPtr saved_builtin_alias;
+
+ dir = FontFileMakeDir ("", builtin_dir_count);
+
+ if (saved_builtin_dir)
+ {
+ BuiltinDirsRestore ((BuiltinDirPtr) builtin_dir,
+ saved_builtin_dir,
+ builtin_dir_count) ;
+ }
+ else
+ {
+ saved_builtin_dir = BuiltinDirsDup ((const BuiltinDirPtr) builtin_dir,
+ builtin_dir_count) ;
+ }
+
+ if (saved_builtin_alias)
+ {
+ BuiltinAliasesRestore ((BuiltinAliasPtr) builtin_alias,
+ saved_builtin_alias,
+ builtin_alias_count) ;
+ }
+ else
+ {
+ saved_builtin_alias = BuiltinAliasesDup ((const BuiltinAliasPtr) builtin_alias,
+ builtin_alias_count) ;
+ }
+
+ for (i = 0; i < builtin_dir_count; i++)
+ {
+ if (!FontFileAddFontFile (dir,
+ (char *) builtin_dir[i].font_name,
+ (char *) builtin_dir[i].file_name))
+ {
+ FontFileFreeDir (dir);
+ return BadFontPath;
+ }
+ }
+ for (i = 0; i < builtin_alias_count; i++)
+ {
+ if (!FontFileAddFontAlias (dir,
+ (char *) builtin_alias[i].alias_name,
+ (char *) builtin_alias[i].font_name))
+ {
+ FontFileFreeDir (dir);
+ return BadFontPath;
+ }
+ }
+ FontFileSortDir (dir);
+ *pdir = dir;
+ return Successful;
+}
diff --git a/libXfont/src/builtins/file.c b/libXfont/src/builtins/file.c
new file mode 100644
index 000000000..a46b0a65e
--- /dev/null
+++ b/libXfont/src/builtins/file.c
@@ -0,0 +1,133 @@
+/*
+ * Id: file.c,v 1.2 1999/11/02 06:16:47 keithp Exp $
+ *
+ * Copyright 1999 SuSE, Inc.
+ *
+ * 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, and that the name of SuSE not be used in advertising or
+ * publicity pertaining to distribution of the software without specific,
+ * written prior permission. SuSE makes no representations about the
+ * suitability of this software for any purpose. It is provided "as is"
+ * without express or implied warranty.
+ *
+ * SuSE DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL SuSE
+ * 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.
+ *
+ * Author: Keith Packard, SuSE, Inc.
+ */
+/* $XFree86: xc/lib/font/builtins/file.c,v 1.3 1999/12/30 02:29:49 robin Exp $ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+#include <string.h>
+#include "builtin.h"
+
+typedef struct _BuiltinIO {
+ int offset;
+ BuiltinFilePtr file;
+} BuiltinIORec, *BuiltinIOPtr;
+
+static int
+BuiltinFill (BufFilePtr f)
+{
+ int left, len;
+ BuiltinIOPtr io = ((BuiltinIOPtr) f->private);
+
+ left = io->file->len - io->offset;
+ if (left <= 0)
+ {
+ f->left = 0;
+ return BUFFILEEOF;
+ }
+ len = BUFFILESIZE;
+ if (len > left)
+ len = left;
+ memcpy (f->buffer, io->file->bits + io->offset, len);
+ io->offset += len;
+ f->left = len - 1;
+ f->bufp = f->buffer + 1;
+ return f->buffer[0];
+}
+
+static int
+BuiltinSkip (BufFilePtr f, int count)
+{
+ BuiltinIOPtr io = ((BuiltinIOPtr) f->private);
+ int curoff;
+ int fileoff;
+ int todo;
+
+ curoff = f->bufp - f->buffer;
+ fileoff = curoff + f->left;
+ if (curoff + count <= fileoff) {
+ f->bufp += count;
+ f->left -= count;
+ } else {
+ todo = count - (fileoff - curoff);
+ io->offset += todo;
+ if (io->offset > io->file->len)
+ io->offset = io->file->len;
+ if (io->offset < 0)
+ io->offset = 0;
+ f->left = 0;
+ }
+ return count;
+}
+
+static int
+BuiltinClose (BufFilePtr f, int unused)
+{
+ BuiltinIOPtr io = ((BuiltinIOPtr) f->private);
+
+ xfree (io);
+ return 1;
+}
+
+
+FontFilePtr
+BuiltinFileOpen (char *name)
+{
+ int i;
+ BuiltinIOPtr io;
+ BufFilePtr raw, cooked;
+
+ if (*name == '/') name++;
+ for (i = 0; i < builtin_files_count; i++)
+ if (!strcmp (name, builtin_files[i].name))
+ break;
+ if (i == builtin_files_count)
+ return NULL;
+ io = (BuiltinIOPtr) xalloc (sizeof (BuiltinIORec));
+ if (!io)
+ return NULL;
+ io->offset = 0;
+ io->file = (void *) &builtin_files[i];
+ raw = BufFileCreate ((char *) io, BuiltinFill, 0, BuiltinSkip, BuiltinClose);
+ if (!raw)
+ {
+ xfree (io);
+ return NULL;
+ }
+ if ((cooked = BufFilePushZIP (raw)))
+ raw = cooked;
+ else
+ {
+ raw->left += raw->bufp - raw->buffer;
+ raw->bufp = raw->buffer;
+ }
+ return (FontFilePtr) raw;
+}
+
+int
+BuiltinFileClose (FontFilePtr f, int unused)
+{
+ return BufFileClose ((BufFilePtr) f, TRUE);
+}
diff --git a/libXfont/src/builtins/fonts.c b/libXfont/src/builtins/fonts.c
new file mode 100644
index 000000000..ef5f5efc1
--- /dev/null
+++ b/libXfont/src/builtins/fonts.c
@@ -0,0 +1,1255 @@
+/*
+ * Id: fonts.c,v 1.2 1999/11/02 06:16:47 keithp Exp $
+ *
+ * Copyright 1999 SuSE, Inc.
+ *
+ * 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, and that the name of SuSE not be used in advertising or
+ * publicity pertaining to distribution of the software without specific,
+ * written prior permission. SuSE makes no representations about the
+ * suitability of this software for any purpose. It is provided "as is"
+ * without express or implied warranty.
+ *
+ * SuSE DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL SuSE
+ * 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.
+ *
+ * Author: Keith Packard, SuSE, Inc.
+ */
+/* $XFree86: xc/lib/font/builtins/fonts.c,v 1.3 1999/12/30 02:29:49 robin Exp $ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+#include "builtin.h"
+
+static const char file_cursor[] = {
+ '\037', '\213', '\010', '\010', '\143', '\117', '\054', '\100',
+ '\000', '\003', '\143', '\165', '\162', '\163', '\157', '\162',
+ '\056', '\160', '\143', '\146', '\000', '\355', '\233', '\177',
+ '\160', '\124', '\327', '\165', '\307', '\317', '\112', '\102',
+ '\022', '\130', '\040', '\021', '\300', '\226', '\023', '\031',
+ '\311', '\100', '\034', '\114', '\354', '\104', '\004', '\033',
+ '\013', '\233', '\040', '\141', '\040', '\006', '\327', '\001',
+ '\154', '\213', '\000', '\216', '\143', '\151', '\221', '\026',
+ '\244', '\146', '\365', '\203', '\325', '\352', '\027', '\010',
+ '\264', '\253', '\137', '\273', '\010', '\320', '\217', '\332',
+ '\155', '\035', '\217', '\123', '\323', '\044', '\323', '\361',
+ '\340', '\114', '\207', '\231', '\144', '\062', '\324', '\303',
+ '\324', '\212', '\235', '\232', '\046', '\045', '\305', '\323',
+ '\072', '\143', '\322', '\060', '\365', '\062', '\166', '\143',
+ '\246', '\166', '\221', '\360', '\057', '\224', '\262', '\150',
+ '\373', '\075', '\357', '\234', '\273', '\357', '\355', '\112',
+ '\313', '\217', '\244', '\371', '\057', '\232', '\371', '\274',
+ '\167', '\357', '\271', '\347', '\336', '\167', '\177', '\236',
+ '\173', '\356', '\173', '\053', '\327', '\316', '\252', '\306',
+ '\154', '\042', '\162', '\201', '\064', '\360', '\056', '\010',
+ '\153', '\230', '\251', '\006', '\136', '\044', '\146', '\160',
+ '\034', '\367', '\354', '\164', '\242', '\067', '\370', '\256',
+ '\351', '\147', '\027', '\021', '\235', '\101', '\142', '\221',
+ '\306', '\327', '\042', '\355', '\307', '\167', '\022', '\225',
+ '\151', '\274', '\021', '\227', '\361', '\045', '\104', '\001',
+ '\215', '\237', '\237', '\116', '\124', '\163', '\267', '\074',
+ '\320', '\224', '\277', '\371', '\076', '\011', '\043', '\311',
+ '\372', '\163', '\315', '\300', '\145', '\011', '\207', '\226',
+ '\103', '\353', '\136', '\226', '\334', '\217', '\313', '\152',
+ '\226', '\160', '\322', '\172', '\016', '\174', '\033', '\074',
+ '\316', '\201', '\215', '\240', '\322', '\004', '\352', '\070',
+ '\020', '\303', '\137', '\013', '\007', '\146', '\112', '\171',
+ '\101', '\260', '\146', '\323', '\346', '\355', '\217', '\155',
+ '\170', '\150', '\175', '\071', '\225', '\327', '\170', '\232',
+ '\074', '\105', '\013', '\166', '\171', '\333', '\033', '\153',
+ '\232', '\026', '\024', '\271', '\175', '\236', '\242', '\346',
+ '\172', '\117', '\175', '\125', '\163', '\335', '\016', '\217',
+ '\317', '\123', '\115', '\233', '\067', '\155', '\330', '\130',
+ '\136', '\361', '\370', '\206', '\047', '\326', '\321', '\327',
+ '\066', '\155', '\054', '\247', '\252', '\146', '\137', '\123',
+ '\203', '\217', '\266', '\256', '\263', '\162', '\077', '\266',
+ '\356', '\361', '\115', '\217', '\154', '\051', '\337', '\260',
+ '\151', '\243', '\043', '\130', '\261', '\315', '\031', '\331',
+ '\116', '\333', '\052', '\326', '\213', '\366', '\243', '\133',
+ '\126', '\257', '\255', '\330', '\272', '\141', '\155', '\271',
+ '\125', '\345', '\064', '\262', '\377', '\362', '\300', '\154',
+ '\255', '\353', '\305', '\030', '\267', '\053', '\026', '\263',
+ '\332', '\216', '\224', '\331', '\224', '\153', '\245', '\377',
+ '\076', '\177', '\074', '\106', '\317', '\321', '\236', '\360',
+ '\160', '\137', '\270', '\375', '\300', '\160', '\350', '\100',
+ '\123', '\160', '\070', '\060', '\340', '\353', '\032', '\016',
+ '\016', '\356', '\353', '\035', '\076', '\020', '\354', '\350',
+ '\033', '\356', '\357', '\262', '\103', '\110', '\350', '\356',
+ '\305', '\245', '\247', '\167', '\117', '\210', '\163', '\204',
+ '\221', '\043', '\060', '\060', '\174', '\070', '\330', '\071',
+ '\070', '\074', '\320', '\205', '\274', '\207', '\203', '\110',
+ '\035', '\350', '\102', '\352', '\341', '\040', '\122', '\007',
+ '\272', '\332', '\103', '\310', '\333', '\026', '\106', '\336',
+ '\266', '\320', '\160', '\070', '\214', '\120', '\070', '\214',
+ '\242', '\002', '\003', '\173', '\103', '\170', '\006', '\122',
+ '\103', '\041', '\113', '\206', '\032', '\164', '\037', '\336',
+ '\163', '\000', '\027', '\144', '\073', '\020', '\102', '\135',
+ '\254', '\113', '\110', '\152', '\025', '\017', '\205', '\035',
+ '\262', '\260', '\011', '\355', '\355', '\035', '\356', '\355',
+ '\335', '\323', '\067', '\334', '\327', '\207', '\113', '\157',
+ '\250', '\235', '\253', '\006', '\131', '\050', '\204', '\150',
+ '\070', '\354', '\103', '\213', '\006', '\371', '\062', '\024',
+ '\017', '\015', '\332', '\172', '\166', '\313', '\355', '\272',
+ '\240', '\011', '\135', '\207', '\271', '\251', '\207', '\367',
+ '\017', '\040', '\233', '\165', '\361', '\007', '\315', '\045',
+ '\060', '\210', '\332', '\007', '\206', '\120', '\173', '\124',
+ '\067', '\334', '\147', '\135', '\254', '\154', '\326', '\305',
+ '\052', '\264', '\315', '\352', '\227', '\060', '\364', '\072',
+ '\017', '\100', '\017', '\075', '\324', '\027', '\102', '\017',
+ '\205', '\302', '\201', '\176', '\074', '\243', '\363', '\240',
+ '\121', '\266', '\272', '\004', '\262', '\003', '\101', '\310',
+ '\372', '\273', '\132', '\203', '\010', '\265', '\164', '\111',
+ '\077', '\367', '\036', '\264', '\056', '\266', '\136', '\307',
+ '\301', '\341', '\340', '\341', '\216', '\103', '\050', '\257',
+ '\045', '\070', '\074', '\030', '\154', '\356', '\302', '\005',
+ '\175', '\160', '\250', '\007', '\265', '\077', '\324', '\203',
+ '\076', '\355', '\355', '\105', '\237', '\366', '\365', '\165',
+ '\240', '\345', '\341', '\275', '\334', '\362', '\166', '\036',
+ '\313', '\066', '\036', '\113', '\214', '\114', '\137', '\010',
+ '\345', '\205', '\302', '\170', '\106', '\050', '\204', '\147',
+ '\070', '\153', '\140', '\367', '\001', '\372', '\245', '\163',
+ '\000', '\011', '\201', '\241', '\175', '\075', '\303', '\203',
+ '\001', '\024', '\145', '\075', '\243', '\273', '\007', '\227',
+ '\236', '\336', '\340', '\020', '\102', '\150', '\171', '\117',
+ '\357', '\356', '\000', '\102', '\273', '\203', '\010', '\101',
+ '\257', '\163', '\010', '\172', '\126', '\216', '\120', '\330',
+ '\172', '\170', '\013', '\107', '\233', '\371', '\342', '\030',
+ '\337', '\176', '\056', '\236', '\057', '\255', '\350', '\335',
+ '\201', '\026', '\276', '\130', '\323', '\307', '\214', '\145',
+ '\237', '\065', '\334', '\241', '\075', '\241', '\041', '\204',
+ '\302', '\103', '\350', '\253', '\001', '\356', '\277', '\101',
+ '\351', '\077', '\015', '\331', '\263', '\023', '\063', '\054',
+ '\300', '\005', '\130', '\163', '\050', '\320', '\217', '\147',
+ '\004', '\017', '\242', '\006', '\001', '\251', '\013', '\372',
+ '\064', '\320', '\217', '\076', '\015', '\036', '\104', '\152',
+ '\327', '\041', '\244', '\166', '\015', '\240', '\345', '\201',
+ '\176', '\074', '\067', '\170', '\020', '\025', '\077', '\020',
+ '\262', '\056', '\373', '\172', '\372', '\103', '\241', '\216',
+ '\336', '\376', '\160', '\230', '\327', '\332', '\163', '\272',
+ '\046', '\112', '\100', '\033', '\070', '\006', '\306', '\100',
+ '\076', '\326', '\310', '\172', '\320', '\010', '\216', '\200',
+ '\021', '\360', '\056', '\050', '\100', '\246', '\047', '\301',
+ '\063', '\340', '\115', '\220', '\003', '\133', '\367', '\010',
+ '\350', '\001', '\077', '\003', '\037', '\200', '\002', '\330',
+ '\272', '\047', '\301', '\363', '\340', '\115', '\060', '\167',
+ '\032', '\164', '\300', '\041', '\160', '\012', '\344', '\144',
+ '\042', '\016', '\016', '\201', '\177', '\006', '\331', '\131',
+ '\260', '\211', '\040', '\000', '\116', '\200', '\050', '\050',
+ '\201', '\361', '\154', '\003', '\107', '\300', '\033', '\331',
+ '\142', '\370', '\112', '\100', '\043', '\070', '\006', '\076',
+ '\000', '\167', '\301', '\320', '\325', '\200', '\037', '\200',
+ '\067', '\101', '\316', '\115', '\050', '\007', '\364', '\200',
+ '\023', '\040', '\012', '\112', '\162', '\120', '\016', '\070',
+ '\016', '\306', '\101', '\011', '\354', '\135', '\033', '\070',
+ '\006', '\306', '\300', '\342', '\131', '\260', '\214', '\340',
+ '\010', '\210', '\200', '\374', '\134', '\242', '\155', '\140',
+ '\010', '\274', '\001', '\062', '\140', '\144', '\312', '\100',
+ '\033', '\070', '\016', '\306', '\101', '\011', '\214', '\122',
+ '\045', '\030', '\002', '\307', '\301', '\171', '\260', '\370',
+ '\063', '\250', '\013', '\170', '\021', '\234', '\007', '\105',
+ '\163', '\240', '\003', '\216', '\200', '\010', '\050', '\232',
+ '\213', '\070', '\010', '\203', '\343', '\340', '\143', '\160',
+ '\317', '\074', '\354', '\033', '\340', '\207', '\040', '\002',
+ '\012', '\156', '\046', '\052', '\007', '\317', '\200', '\067',
+ '\301', '\334', '\133', '\320', '\117', '\340', '\020', '\030',
+ '\271', '\205', '\007', '\205', '\150', '\045', '\350', '\000',
+ '\317', '\202', '\023', '\340', '\014', '\210', '\202', '\374',
+ '\133', '\221', '\006', '\332', '\300', '\161', '\360', '\061',
+ '\050', '\376', '\054', '\372', '\013', '\034', '\003', '\347',
+ '\301', '\342', '\317', '\241', '\216', '\340', '\105', '\160',
+ '\036', '\054', '\056', '\100', '\034', '\274', '\010', '\316',
+ '\202', '\271', '\267', '\141', '\314', '\101', '\017', '\070',
+ '\001', '\242', '\340', '\236', '\371', '\104', '\176', '\360',
+ '\103', '\360', '\001', '\130', '\124', '\210', '\375', '\010',
+ '\034', '\002', '\047', '\100', '\024', '\254', '\304', '\306',
+ '\126', '\015', '\236', '\001', '\247', '\100', '\316', '\355',
+ '\310', '\007', '\252', '\301', '\017', '\300', '\273', '\240',
+ '\140', '\001', '\321', '\217', '\320', '\167', '\137', '\102',
+ '\137', '\075', '\211', '\360', '\361', '\265', '\104', '\131',
+ '\230', '\164', '\271', '\053', '\211', '\012', '\127', '\021',
+ '\255', '\342', '\262', '\320', '\337', '\343', '\030', '\373',
+ '\261', '\164', '\201', '\303', '\054', '\343', '\064', '\326',
+ '\141', '\135', '\053', '\017', '\046', '\150', '\341', '\070',
+ '\121', '\151', '\224', '\250', '\163', '\202', '\150', '\242',
+ '\023', '\172', '\245', '\320', '\207', '\336', '\130', '\256',
+ '\300', '\141', '\226', '\161', '\032', '\353', '\260', '\056',
+ '\347', '\341', '\274', '\124', '\014', '\120', '\026', '\101',
+ '\147', '\104', '\363', '\360', '\163', '\106', '\360', '\274',
+ '\010', '\150', '\304', '\263', '\113', '\170', '\036', '\143',
+ '\276', '\317', '\002', '\131', '\146', '\137', '\212', '\000',
+ '\224', '\101', '\050', '\057', '\200', '\162', '\043', '\140',
+ '\274', '\124', '\236', '\303', '\375', '\020', '\321', '\262',
+ '\306', '\101', '\007', '\062', '\255', '\002', '\205', '\310',
+ '\210', '\151', '\145', '\371', '\006', '\061', '\135', '\153',
+ '\061', '\031', '\312', '\004', '\236', '\320', '\052', '\161',
+ '\070', '\226', '\076', '\231', '\066', '\135', '\237', '\023',
+ '\056', '\233', '\250', '\312', '\362', '\065', '\357', '\023',
+ '\123', '\224', '\353', '\174', '\146', '\361', '\024', '\145',
+ '\230', '\162', '\247', '\172', '\146', '\200', '\233', '\214',
+ '\373', '\354', '\114', '\222', '\235', '\067', '\137', '\033',
+ '\222', '\046', '\351', '\334', '\035', '\074', '\116', '\277',
+ '\313', '\222', '\364', '\070', '\350', '\207', '\130', '\226',
+ '\350', '\074', '\204', '\171', '\265', '\066', '\303', '\206',
+ '\323', '\326', '\315', '\115', '\204', '\145', '\116', '\035',
+ '\316', '\363', '\366', '\076', '\233', '\263', '\230', '\207',
+ '\261', '\116', '\033', '\043', '\167', '\312', '\130', '\307',
+ '\231', '\007', '\217', '\266', '\130', '\010', '\333', '\261',
+ '\020', '\145', '\056', '\104', '\235', '\027', '\242', '\275',
+ '\337', '\207', '\254', '\012', '\274', '\223', '\153', '\353',
+ '\060', '\261', '\122', '\001', '\142', '\213', '\121', '\164',
+ '\326', '\050', '\346', '\332', '\050', '\352', '\062', '\212',
+ '\001', '\034', '\105', '\173', '\106', '\241', '\070', '\132',
+ '\152', '\303', '\172', '\011', '\355', '\066', '\235', '\014',
+ '\062', '\226', '\302', '\256', '\201', '\074', '\120', '\004',
+ '\312', '\100', '\000', '\104', '\227', '\332', '\072', '\214',
+ '\171', '\256', '\145', '\164', '\101', '\316', '\045', '\314',
+ '\073', '\120', '\002', '\032', '\101', '\004', '\214', '\200',
+ '\250', '\003', '\326', '\113', '\176', '\156', '\031', '\115',
+ '\015', '\367', '\347', '\172', '\264', '\175', '\263', '\113',
+ '\306', '\253', '\314', '\314', '\207', '\102', '\141', '\304',
+ '\065', '\065', '\247', '\156', '\225', '\076', '\345', '\271',
+ '\074', '\226', '\045', '\363', '\200', '\345', '\316', '\076',
+ '\147', '\106', '\350', '\352', '\230', '\366', '\215', '\244',
+ '\137', '\235', '\344', '\366', '\160', '\331', '\354', '\157',
+ '\137', '\301', '\175', '\032', '\052', '\375', '\111', '\005',
+ '\321', '\274', '\315', '\104', '\277', '\332', '\112', '\264',
+ '\245', '\034', '\154', '\101', '\030', '\314', '\103', '\370',
+ '\023', '\310', '\246', '\041', '\355', '\012', '\164', '\134',
+ '\145', '\132', '\267', '\344', '\362', '\156', '\020', '\063',
+ '\104', '\146', '\175', '\104', '\025', '\263', '\156', '\226',
+ '\241', '\316', '\113', '\323', '\022', '\206', '\322', '\102',
+ '\207', '\221', '\306', '\135', '\102', '\064', '\135', '\230',
+ '\310', '\022', '\142', '\271', '\066', '\227', '\146', '\331',
+ '\372', '\206', '\210', '\313', '\266', '\173', '\363', '\141',
+ '\157', '\147', '\025', '\210', '\315', '\163', '\302', '\062',
+ '\116', '\063', '\366', '\222', '\363', '\260', '\335', '\162',
+ '\332', '\074', '\306', '\330', '\074', '\047', '\054', '\063',
+ '\351', '\306', '\146', '\106', '\364', '\171', '\277', '\305',
+ '\230', '\317', '\131', '\106', '\364', '\163', '\234', '\127',
+ '\332', '\301', '\154', '\330', '\351', '\167', '\060', '\137',
+ '\047', '\240', '\363', '\213', '\271', '\066', '\377', '\215',
+ '\275', '\352', '\137', '\356', '\021', '\173', '\154', '\306',
+ '\227', '\165', '\056', '\255', '\040', '\372', '\115', '\053',
+ '\321', '\377', '\340', '\204', '\161', '\245', '\001', '\166',
+ '\141', '\047', '\321', '\107', '\115', '\222', '\376', '\376',
+ '\275', '\066', '\227', '\161', '\226', '\171', '\277', '\231',
+ '\350', '\164', '\207', '\075', '\217', '\306', '\165', '\257',
+ '\315', '\254', '\204', '\237', '\277', '\215', '\350', '\303',
+ '\207', '\260', '\056', '\313', '\204', '\064', '\345', '\071',
+ '\310', '\277', '\201', '\061', '\177', '\013', '\174', '\163',
+ '\273', '\055', '\267', '\332', '\221', '\053', '\066', '\170',
+ '\042', '\046', '\044', '\217', '\347', '\325', '\344', '\234',
+ '\277', '\314', '\065', '\065', '\235', '\152', '\100', '\371',
+ '\236', '\112', '\207', '\327', '\106', '\062', '\123', '\315',
+ '\251', '\251', '\364', '\230', '\007', '\261', '\077', '\256',
+ '\173', '\224', '\350', '\141', '\234', '\011', '\313', '\321',
+ '\267', '\065', '\360', '\133', '\066', '\303', '\117', '\172',
+ '\145', '\102', '\312', '\347', '\073', '\307', '\131', '\316',
+ '\351', '\254', '\307', '\372', '\234', '\157', '\047', '\306',
+ '\253', '\356', '\067', '\104', '\173', '\321', '\337', '\055',
+ '\350', '\127', '\057', '\366', '\365', '\212', '\053', '\030',
+ '\347', '\011', '\261', '\337', '\174', '\347', '\070', '\313',
+ '\071', '\235', '\365', '\130', '\237', '\363', '\161', '\172',
+ '\052', '\270', '\275', '\127', '\113', '\117', '\145', '\067',
+ '\234', '\355', '\115', '\245', '\063', '\242', '\375', '\126',
+ '\231', '\056', '\355', '\132', '\017', '\137', '\156', '\355',
+ '\154', '\151', '\117', '\147', '\247', '\366', '\167', '\247',
+ '\304', '\131', '\316', '\351', '\254', '\307', '\372', '\246',
+ '\277', '\331', '\046', '\361', '\230', '\263', '\215', '\372',
+ '\127', '\314', '\273', '\223', '\273', '\345', '\231', '\235',
+ '\372', '\154', '\216', '\263', '\174', '\052', '\033', '\346',
+ '\334', '\003', '\223', '\367', '\074', '\347', '\276', '\310',
+ '\353', '\167', '\252', '\165', '\353', '\304', '\244', '\263',
+ '\056', '\307', '\135', '\331', '\211', '\270', '\225', '\144',
+ '\271', '\225', '\277', '\324', '\306', '\254', '\355', '\367',
+ '\126', '\044', '\142', '\344', '\116', '\135', '\143', '\227',
+ '\330', '\036', '\375', '\104', '\155', '\121', '\262', '\035',
+ '\142', '\331', '\117', '\034', '\076', '\202', '\261', '\115',
+ '\306', '\046', '\045', '\267', '\311', '\330', '\237', '\344',
+ '\266', '\261', '\056', '\347', '\341', '\064', '\153', '\363',
+ '\110', '\341', '\073', '\261', '\357', '\136', '\006', '\212',
+ '\240', '\237', '\007', '\262', '\371', '\175', '\210', '\276',
+ '\277', '\140', '\073', '\156', '\275', '\176', '\340', '\212',
+ '\354', '\207', '\156', '\251', '\370', '\112', '\154', '\173',
+ '\046', '\162', '\005', '\266', '\101', '\074', '\106', '\307',
+ '\221', '\367', '\171', '\060', '\200', '\114', '\041', '\227',
+ '\354', '\315', '\256', '\024', '\317', '\266', '\034', '\053',
+ '\370', '\360', '\001', '\354', '\161', '\145', '\372', '\176',
+ '\205', '\337', '\011', '\360', '\161', '\101', '\335', '\224',
+ '\304', '\147', '\257', '\262', '\237', '\315', '\004', '\330',
+ '\347', '\343', '\147', '\147', '\312', '\073', '\030', '\076',
+ '\003', '\025', '\150', '\261', '\354', '\363', '\245', '\153',
+ '\177', '\014', '\243', '\300', '\357', '\140', '\016', '\316',
+ '\304', '\372', '\313', '\232', '\145', '\217', '\051', '\207',
+ '\131', '\306', '\151', '\303', '\111', '\143', '\372', '\321',
+ '\062', '\261', '\163', '\245', '\010', '\277', '\215', '\347',
+ '\216', '\176', '\125', '\340', '\060', '\313', '\070', '\215',
+ '\165', '\214', '\376', '\105', '\074', '\354', '\062', '\373',
+ '\213', '\070', '\243', '\114', '\107', '\131', '\267', '\362',
+ '\332', '\045', '\307', '\037', '\107', '\356', '\100', '\273',
+ '\140', '\227', '\163', '\120', '\306', '\070', '\362', '\217',
+ '\055', '\204', '\175', '\106', '\236', '\113', '\271', '\272',
+ '\237', '\103', '\247', '\224', '\347', '\112', '\261', '\370',
+ '\173', '\226', '\351', '\322', '\100', '\016', '\354', '\100',
+ '\001', '\046', '\103', '\024', '\341', '\161', '\060', '\066',
+ '\212', '\166', '\237', '\224', '\075', '\232', '\367', '\017',
+ '\366', '\343', '\070', '\374', '\063', '\074', '\373', '\365',
+ '\174', '\273', '\136', '\034', '\146', '\031', '\247', '\261',
+ '\016', '\353', '\162', '\330', '\332', '\267', '\325', '\137',
+ '\346', '\071', '\160', '\036', '\347', '\223', '\263', '\017',
+ '\114', '\266', '\171', '\054', '\343', '\264', '\061', '\035',
+ '\143', '\263', '\337', '\323', '\174', '\351', '\150', '\327',
+ '\051', '\354', '\023', '\063', '\245', '\357', '\072', '\321',
+ '\366', '\122', '\220', '\311', '\203', '\240', '\173', '\133',
+ '\036', '\045', '\322', '\146', '\372', '\002', '\244', '\073',
+ '\237', '\125', '\072', '\031', '\336', '\223', '\170', '\355',
+ '\363', '\270', '\226', '\220', '\275', '\207', '\063', '\074',
+ '\077', '\347', '\140', '\314', '\267', '\302', '\256', '\314',
+ '\301', '\144', '\371', '\167', '\334', '\013', '\127', '\112',
+ '\037', '\345', '\275', '\053', '\014', '\175', '\014', '\370',
+ '\216', '\364', '\060', '\372', '\240', '\007', '\025', '\350',
+ '\050', '\224', '\374', '\227', '\221', '\377', '\022', '\333',
+ '\014', '\356', '\177', '\246', '\324', '\366', '\073', '\330',
+ '\107', '\033', '\143', '\142', '\172', '\177', '\317', '\336',
+ '\237', '\070', '\277', '\345', '\107', '\317', '\227', '\065',
+ '\063', '\222', '\156', '\367', '\077', '\267', '\367', '\177',
+ '\265', '\314', '\053', '\346', '\034', '\204', '\064', '\230',
+ '\173', '\302', '\120', '\023', '\216', '\204', '\224', '\103',
+ '\072', '\111', '\013', '\165', '\356', '\146', '\331', '\171',
+ '\047', '\222', '\355', '\223', '\372', '\340', '\061', '\336',
+ '\307', '\264', '\333', '\346', '\253', '\355', '\163', '\241',
+ '\355', '\373', '\321', '\256', '\154', '\264', '\213', '\137',
+ '\156', '\132', '\167', '\354', '\355', '\331', '\330', '\363',
+ '\213', '\127', '\243', '\154', '\054', '\246', '\062', '\234',
+ '\143', '\003', '\274', '\230', '\246', '\311', '\142', '\212',
+ '\333', '\113', '\265', '\035', '\023', '\272', '\206', '\271',
+ '\135', '\326', '\071', '\250', '\123', '\347', '\026', '\356',
+ '\221', '\122', '\131', '\243', '\274', '\306', '\314', '\001',
+ '\212', '\333', '\376', '\072', '\374', '\211', '\356', '\112',
+ '\361', '\323', '\234', '\244', '\103', '\226', '\211', '\171',
+ '\233', '\303', '\147', '\131', '\064', '\262', '\070', '\123',
+ '\354', '\075', '\333', '\153', '\316', '\067', '\121', '\052',
+ '\066', '\235', '\363', '\246', '\053', '\153', '\334', '\260',
+ '\021', '\215', '\230', '\106', '\030', '\334', '\002', '\364',
+ '\111', '\311', '\254', '\044', '\137', '\025', '\165', '\171',
+ '\351', '\050', '\174', '\305', '\137', '\311', '\175', '\332',
+ '\033', '\104', '\067', '\035', '\111', '\175', '\067', '\172',
+ '\174', '\377', '\103', '\375', '\107', '\313', '\267', '\050',
+ '\024', '\333', '\370', '\273', '\057', '\310', '\132', '\147',
+ '\173', '\176', '\332', '\341', '\063', '\161', '\230', '\145',
+ '\234', '\306', '\072', '\121', '\355', '\123', '\247', '\017',
+ '\167', '\335', '\317', '\352', '\264', '\175', '\072', '\227',
+ '\332', '\256', '\054', '\131', '\106', '\074', '\125', '\254',
+ '\261', '\357', '\124', '\163', '\300', '\161', '\270', '\003',
+ '\144', '\216', '\042', '\225', '\312', '\325', '\362', '\304',
+ '\034', '\173', '\045', '\313', '\370', '\030', '\362', '\221',
+ '\332', '\016', '\143', '\023', '\314', '\131', '\252', '\033',
+ '\254', '\321', '\071', '\073', '\207', '\327', '\112', '\251',
+ '\334', '\027', '\252', '\274', '\333', '\241', '\153', '\316',
+ '\133', '\271', '\210', '\014', '\202', '\323', '\050', '\153',
+ '\224', '\022', '\333', '\306', '\161', '\226', '\163', '\072',
+ '\353', '\231', '\074', '\351', '\051', '\060', '\365', '\114',
+ '\225', '\236', '\233', '\202', '\344', '\275', '\075', '\225',
+ '\236', '\013', '\215', '\235', '\170', '\105', '\130', '\360',
+ '\075', '\242', '\357', '\035', '\115', '\204', '\145', '\046',
+ '\075', '\031', '\053', '\257', '\261', '\025', '\277', '\007',
+ '\234', '\067', '\125', '\273', '\222', '\333', '\237', '\252',
+ '\376', '\251', '\332', '\173', '\255', '\202', '\115', '\271',
+ '\327', '\052', '\070', '\271', '\134', '\313', '\347', '\312',
+ '\025', '\337', '\215', '\277', '\063', '\274', '\172', '\216',
+ '\150', '\321', '\277', '\141', '\257', '\347', '\367', '\156',
+ '\260', '\013', '\105', '\151', '\222', '\306', '\167', '\266',
+ '\265', '\354', '\357', '\055', '\236', '\001', '\133', '\305',
+ '\357', '\206', '\242', '\366', '\171', '\210', '\355', '\314',
+ '\153', '\260', '\115', '\357', '\275', '\243', '\176', '\373',
+ '\333', '\142', '\127', '\043', '\131', '\211', '\076', '\041',
+ '\353', '\355', '\057', '\025', '\337', '\227', '\111', '\036',
+ '\257', '\045', '\107', '\023', '\371', '\143', '\217', '\127',
+ '\304', '\261', '\316', '\170', '\235', '\360', '\032', '\167',
+ '\025', '\021', '\375', '\322', '\153', '\343', '\252', '\024',
+ '\062', '\141', '\313', '\362', '\063', '\165', '\117', '\120',
+ '\077', '\324', '\072', '\027', '\152', '\076', '\313', '\166',
+ '\244', '\260', '\001', '\321', '\121', '\373', '\375', '\031',
+ '\347', '\147', '\077', '\146', '\266', '\256', '\363', '\307',
+ '\300', '\123', '\240', '\207', '\344', '\333', '\025', '\357',
+ '\177', '\171', '\240', '\330', '\364', '\177', '\206', '\354',
+ '\107', '\226', '\001', '\300', '\363', '\331', '\201', '\162',
+ '\256', '\177', '\164', '\043', '\105', '\135', '\302', '\170',
+ '\272', '\356', '\115', '\272', '\377', '\107', '\162', '\325',
+ '\326', '\027', '\252', '\341', '\340', '\115', '\246', '\040',
+ '\161', '\137', '\073', '\225', '\043', '\070', '\353', '\167',
+ '\016', '\376', '\375', '\071', '\330', '\360', '\127', '\261',
+ '\257', '\026', '\314', '\322', '\263', '\057', '\316', '\175',
+ '\271', '\035', '\322', '\077', '\316', '\167', '\200', '\334',
+ '\166', '\143', '\117', '\131', '\166', '\021', '\106', '\344',
+ '\042', '\346', '\301', '\107', '\060', '\102', '\243', '\053',
+ '\344', '\074', '\314', '\371', '\047', '\116', '\112', '\137',
+ '\160', '\031', '\311', '\076', '\261', '\231', '\277', '\251',
+ '\316', '\354', '\123', '\371', '\300', '\116', '\337', '\330',
+ '\320', '\241', '\375', '\161', '\022', '\317', '\353', '\126',
+ '\077', '\365', '\165', '\175', '\277', '\302', '\343', '\305',
+ '\276', '\306', '\142', '\345', '\002', '\360', '\252', '\214',
+ '\375', '\227', '\161', '\355', '\307', '\011', '\335', '\107',
+ '\007', '\301', '\013', '\340', '\077', '\035', '\276', '\366',
+ '\170', '\222', '\136', '\124', '\145', '\330', '\352', '\344',
+ '\354', '\245', '\363', '\141', '\314', '\350', '\151', '\175',
+ '\142', '\032', '\077', '\003', '\016', '\221', '\370', '\012',
+ '\231', '\012', '\257', '\337', '\200', '\372', '\136', '\021',
+ '\035', '\077', '\036', '\107', '\353', '\054', '\340', '\130',
+ '\333', '\054', '\073', '\001', '\126', '\246', '\313', '\060',
+ '\316', '\327', '\162', '\114', '\147', '\225', '\201', '\100',
+ '\261', '\116', '\252', '\257', '\040', '\317', '\175', '\162',
+ '\347', '\170', '\100', '\323', '\223', '\073', '\166', '\204',
+ '\271', '\210', '\164', '\336', '\060', '\056', '\045', '\316',
+ '\131', '\216', '\263', '\234', '\323', '\107', '\234', '\235',
+ '\174', '\055', '\033', '\164', '\203', '\306', '\175', '\222',
+ '\255', '\113', '\101', '\262', '\255', '\070', '\232', '\304',
+ '\037', '\333', '\126', '\360', '\372', '\166', '\055', '\260',
+ '\211', '\055', '\224', '\367', '\060', '\116', '\056', '\102',
+ '\147', '\166', '\221', '\115', '\262', '\115', '\310', '\302',
+ '\244', '\213', '\215', '\332', '\264', '\136', '\020', '\056',
+ '\305', '\154', '\132', '\043', '\211', '\171', '\002', '\072',
+ '\267', '\370', '\133', '\017', '\163', '\214', '\111', '\227',
+ '\363', '\030', '\163', '\102', '\277', '\315', '\374', '\043',
+ '\203', '\176', '\052', '\064', '\007', '\044', '\375', '\156',
+ '\063', '\142', '\316', '\122', '\271', '\372', '\036', '\134',
+ '\141', '\277', '\060', '\376', '\216', '\074', '\246', '\357',
+ '\140', '\012', '\345', '\154', '\011', '\167', '\363', '\272',
+ '\141', '\073', '\264', '\112', '\314', '\212', '\165', '\276',
+ '\353', '\270', '\116', '\054', '\277', '\305', '\045', '\353',
+ '\243', '\303', '\261', '\016', '\331', '\337', '\145', '\137',
+ '\223', '\373', '\074', '\267', '\115', '\356', '\034', '\147',
+ '\071', '\373', '\237', '\354', '\117', '\046', '\217', '\045',
+ '\307', '\131', '\316', '\351', '\331', '\272', '\056', '\330',
+ '\347', '\312', '\325', '\173', '\216', '\326', '\255', '\130',
+ '\237', '\023', '\157', '\257', '\336', '\071', '\136', '\242',
+ '\351', '\226', '\242', '\236', '\263', '\330', '\150', '\130',
+ '\367', '\174', '\262', '\013', '\056', '\320', '\161', '\355',
+ '\244', '\370', '\373', '\120', '\113', '\247', '\100', '\322',
+ '\263', '\065', '\270', '\112', '\373', '\346', '\106', '\372',
+ '\062', '\117', '\353', '\147', '\354', '\230', '\351', '\243',
+ '\353', '\355', '\323', '\033', '\171', '\166', '\362', '\270',
+ '\135', '\357', '\163', '\247', '\032', '\067', '\353', '\120',
+ '\317', '\233', '\032', '\357', '\065', '\173', '\061', '\117',
+ '\301', '\020', '\010', '\047', '\161', '\010', '\014', '\200',
+ '\127', '\100', '\076', '\157', '\200', '\306', '\210', '\071',
+ '\053', '\215', '\076', '\255', '\004', '\215', '\240', '\055',
+ '\211', '\016', '\260', '\077', '\046', '\357', '\222', '\366',
+ '\103', '\267', '\170', '\077', '\131', '\357', '\035', '\330',
+ '\134', '\271', '\034', '\360', '\231', '\175', '\166', '\232',
+ '\275', '\056', '\363', '\026', '\310', '\231', '\234', '\160',
+ '\106', '\267', '\214', '\077', '\006', '\172', '\244', '\224',
+ '\022', '\336', '\057', '\361', '\262', '\341', '\363', '\272',
+ '\205', '\163', '\155', '\216', '\312', '\231', '\174', '\114',
+ '\215', '\370', '\110', '\314', '\046', '\203', '\317', '\147',
+ '\031', '\102', '\136', '\232', '\160', '\356', '\234', '\274',
+ '\257', '\345', '\275', '\220', '\341', '\060', '\313', '\114',
+ '\272', '\321', '\347', '\274', '\231', '\230', '\127', '\071',
+ '\071', '\022', '\147', '\337', '\202', '\367', '\116', '\336',
+ '\067', '\077', '\175', '\100', '\375', '\052', '\344', '\377',
+ '\264', '\120', '\144', '\234', '\226', '\237', '\046', '\172',
+ '\234', '\207', '\363', '\362', '\006', '\302', '\266', '\341',
+ '\056', '\334', '\377', '\006', '\367', '\233', '\063', '\305',
+ '\067', '\300', '\366', '\115', '\070', '\266', '\320', '\347',
+ '\223', '\356', '\137', '\320', '\064', '\206', '\365', '\270',
+ '\357', '\363', '\161', '\306', '\357', '\120', '\366', '\317',
+ '\244', '\370', '\373', '\211', '\353', '\201', '\237', '\355',
+ '\174', '\337', '\132', '\224', '\146', '\363', '\174', '\201',
+ '\234', '\005', '\171', '\135', '\032', '\337', '\161', '\021',
+ '\316', '\255', '\163', '\347', '\312', '\172', '\346', '\167',
+ '\312', '\234', '\337', '\274', '\167', '\344', '\063', '\045',
+ '\303', '\347', '\313', '\022', '\314', '\213', '\027', '\060',
+ '\271', '\322', '\043', '\230', '\122', '\035', '\122', '\026',
+ '\177', '\367', '\340', '\167', '\243', '\313', '\227', '\213',
+ '\377', '\311', '\147', '\113', '\316', '\307', '\276', '\016',
+ '\237', '\057', '\271', '\114', '\076', '\247', '\166', '\127',
+ '\312', '\371', '\223', '\357', '\346', '\334', '\152', '\316',
+ '\237', '\043', '\111', '\357', '\050', '\127', '\316', '\227',
+ '\162', '\370', '\254', '\372', '\032', '\306', '\250', '\352',
+ '\035', '\271', '\233', '\263', '\053', '\247', '\133', '\176',
+ '\154', '\172', '\352', '\357', '\070', '\154', '\063', '\123',
+ '\245', '\245', '\174', '\027', '\353', '\260', '\135', '\251',
+ '\164', '\314', '\226', '\271', '\112', '\327', '\244', '\365',
+ '\275', '\042', '\327', '\366', '\101', '\212', '\215', '\217',
+ '\310', '\357', '\327', '\170', '\001', '\263', '\361', '\050',
+ '\222', '\171', '\134', '\250', '\113', '\151', '\102', '\337',
+ '\223', '\106', '\325', '\316', '\133', '\066', '\137', '\333',
+ '\077', '\306', '\176', '\035', '\373', '\202', '\150', '\147',
+ '\204', '\035', '\230', '\010', '\131', '\016', '\214', '\071',
+ '\003', '\073', '\267', '\156', '\376', '\046', '\127', '\105',
+ '\362', '\215', '\216', '\277', '\325', '\131', '\337', '\354',
+ '\062', '\344', '\033', '\136', '\374', '\154', '\023', '\113',
+ '\204', '\353', '\356', '\374', '\046', '\147', '\175', '\243',
+ '\313', '\322', '\157', '\166', '\005', '\372', '\015', '\257',
+ '\330', '\161', '\346', '\321', '\347', '\072', '\035', '\300',
+ '\250', '\176', '\233', '\053', '\323', '\157', '\165', '\171',
+ '\372', '\355', '\056', '\303', '\361', '\255', '\156', '\322',
+ '\167', '\276', '\261', '\304', '\157', '\162', '\043', '\372',
+ '\255', '\256', '\121', '\277', '\335', '\361', '\067', '\274',
+ '\034', '\375', '\126', '\147', '\175', '\257', '\053', '\024',
+ '\110', '\307', '\214', '\273', '\201', '\277', '\311', '\361',
+ '\267', '\071', '\376', '\106', '\227', '\162', '\334', '\073',
+ '\047', '\217', '\143', '\362', '\373', '\157', '\236', '\263',
+ '\051', '\347', '\200', '\266', '\167', '\204', '\256', '\361',
+ '\235', '\056', '\251', '\175', '\327', '\372', '\136', '\227',
+ '\055', '\115', '\111', '\060', '\251', '\255', '\064', '\331',
+ '\336', '\177', '\213', '\344', '\147', '\150', '\033', '\110',
+ '\176', '\234', '\146', '\060', '\357', '\344', '\222', '\367',
+ '\002', '\247', '\315', '\177', '\071', '\111', '\376', '\226',
+ '\162', '\322', '\361', '\056', '\342', '\232', '\147', '\341',
+ '\353', '\074', '\323', '\033', '\302', '\074', '\317', '\161',
+ '\366', '\374', '\071', '\174', '\332', '\017', '\247', '\313',
+ '\357', '\124', '\326', '\344', '\247', '\030', '\037', '\265',
+ '\107', '\001', '\204', '\317', '\267', '\020', '\135', '\176',
+ '\233', '\350', '\112', '\251', '\356', '\371', '\352', '\223',
+ '\235', '\156', '\237', '\142', '\134', '\262', '\022', '\011',
+ '\134', '\217', '\137', '\153', '\374', '\337', '\353', '\364',
+ '\143', '\015', '\146', '\177', '\060', '\347', '\250', '\076',
+ '\264', '\245', '\033', '\363', '\071', '\210', '\011', '\370',
+ '\323', '\163', '\302', '\355', '\010', '\317', '\051', '\026',
+ '\133', '\037', '\235', '\042', '\217', '\341', '\132', '\347',
+ '\117', '\363', '\316', '\325', '\231', '\247', '\325', '\061',
+ '\027', '\256', '\207', '\002', '\235', '\107', '\243', '\216',
+ '\161', '\067', '\373', '\377', '\325', '\160', '\372', '\014',
+ '\234', '\127', '\176', '\107', '\370', '\035', '\062', '\177',
+ '\056', '\110', '\322', '\341', '\100', '\114', '\303', '\146',
+ '\226', '\205', '\047', '\115', '\247', '\031', '\164', '\023',
+ '\066', '\246', '\231', '\160', '\050', '\162', '\255', '\337',
+ '\023', '\176', '\206', '\346', '\300', '\143', '\231', '\107',
+ '\067', '\323', '\055', '\160', '\304', '\156', '\245', '\317',
+ '\322', '\347', '\120', '\233', '\333', '\340', '\074', '\024',
+ '\302', '\340', '\335', '\116', '\013', '\150', '\041', '\066',
+ '\366', '\317', '\323', '\035', '\330', '\337', '\026', '\323',
+ '\235', '\264', '\204', '\276', '\110', '\167', '\321', '\335',
+ '\364', '\045', '\372', '\062', '\014', '\304', '\122', '\034',
+ '\202', '\226', '\321', '\075', '\164', '\057', '\055', '\247',
+ '\373', '\120', '\243', '\025', '\164', '\077', '\075', '\000',
+ '\247', '\341', '\253', '\130', '\015', '\245', '\230', '\055',
+ '\253', '\351', '\101', '\132', '\103', '\153', '\151', '\035',
+ '\175', '\215', '\036', '\242', '\365', '\130', '\017', '\017',
+ '\323', '\237', '\321', '\043', '\364', '\165', '\332', '\110',
+ '\233', '\150', '\063', '\075', '\212', '\023', '\372', '\343',
+ '\124', '\116', '\133', '\350', '\033', '\264', '\225', '\266',
+ '\321', '\166', '\172', '\202', '\276', '\111', '\117', '\142',
+ '\375', '\074', '\105', '\025', '\124', '\111', '\156', '\332',
+ '\001', '\333', '\130', '\115', '\036', '\332', '\111', '\273',
+ '\250', '\206', '\152', '\351', '\317', '\261', '\256', '\274',
+ '\124', '\107', '\365', '\324', '\200', '\223', '\341', '\156',
+ '\362', '\121', '\023', '\371', '\251', '\231', '\132', '\320',
+ '\177', '\155', '\324', '\116', '\173', '\150', '\057', '\172',
+ '\145', '\037', '\355', '\307', '\232', '\014', '\120', '\220',
+ '\272', '\250', '\033', '\247', '\377', '\136', '\352', '\243',
+ '\020', '\205', '\351', '\000', '\365', '\323', '\101', '\234',
+ '\022', '\017', '\323', '\000', '\015', '\322', '\020', '\015',
+ '\323', '\137', '\320', '\323', '\364', '\014', '\375', '\045',
+ '\375', '\025', '\375', '\065', '\075', '\153', '\365', '\234',
+ '\371', '\175', '\330', '\242', '\264', '\077', '\361', '\047',
+ '\260', '\037', '\052', '\377', '\337', '\345', '\076', '\350',
+ '\022', '\322', '\310', '\376', '\075', '\042', '\377', '\316',
+ '\231', '\177', '\362', '\206', '\355', '\315', '\162', '\245',
+ '\127', '\200', '\115', '\044', '\357', '\260', '\174', '\152',
+ '\043', '\370', '\135', '\142', '\077', '\170', '\026', '\274',
+ '\004', '\136', '\003', '\157', '\221', '\154', '\271', '\374',
+ '\116', '\144', '\246', '\113', '\176', '\307', '\270', '\030',
+ '\054', '\003', '\153', '\300', '\106', '\360', '\024', '\360',
+ '\200', '\335', '\240', '\025', '\164', '\201', '\303', '\340',
+ '\273', '\340', '\373', '\340', '\357', '\301', '\011', '\227',
+ '\274', '\163', '\376', '\065', '\070', '\017', '\076', '\005',
+ '\323', '\121', '\301', '\231', '\340', '\146', '\160', '\033',
+ '\270', '\023', '\054', '\117', '\223', '\075', '\274', '\034',
+ '\170', '\300', '\156', '\320', '\005', '\016', '\203', '\357',
+ '\202', '\277', '\003', '\077', '\006', '\057', '\203', '\177',
+ '\002', '\277', '\004', '\377', '\001', '\042', '\340', '\175',
+ '\160', '\021', '\104', '\101', '\032', '\154', '\373', '\114',
+ '\060', '\207', '\337', '\273', '\200', '\205', '\340', '\356',
+ '\164', '\371', '\035', '\332', '\172', '\360', '\050', '\250',
+ '\000', '\265', '\240', '\015', '\004', '\323', '\345', '\175',
+ '\370', '\163', '\340', '\050', '\370', '\021', '\370', '\051',
+ '\370', '\005', '\070', '\003', '\316', '\202', '\377', '\002',
+ '\037', '\202', '\014', '\354', '\151', '\063', '\300', '\274',
+ '\014', '\371', '\155', '\346', '\142', '\360', '\145', '\360',
+ '\200', '\176', '\067', '\175', '\030', '\154', '\007', '\165',
+ '\240', '\025', '\364', '\201', '\141', '\360', '\267', '\340',
+ '\045', '\360', '\062', '\170', '\035', '\274', '\005', '\042',
+ '\340', '\002', '\270', '\004', '\246', '\361', '\267', '\063',
+ '\160', '\007', '\050', '\001', '\233', '\300', '\267', '\100',
+ '\043', '\350', '\004', '\117', '\203', '\027', '\300', '\061',
+ '\360', '\052', '\370', '\065', '\070', '\007', '\056', '\200',
+ '\117', '\200', '\213', '\177', '\373', '\011', '\346', '\202',
+ '\333', '\300', '\027', '\063', '\305', '\057', '\277', '\037',
+ '\254', '\006', '\137', '\007', '\345', '\374', '\035', '\010',
+ '\064', '\200', '\156', '\360', '\064', '\170', '\021', '\374',
+ '\003', '\070', '\015', '\316', '\200', '\337', '\202', '\013',
+ '\340', '\062', '\277', '\350', '\302', '\236', '\065', '\003',
+ '\314', '\001', '\267', '\203', '\045', '\354', '\267', '\203',
+ '\325', '\140', '\023', '\330', '\002', '\052', '\301', '\116',
+ '\260', '\033', '\154', '\253', '\320', '\337', '\256', '\233',
+ '\100', '\105', '\235', '\273', '\351', '\333', '\344', '\366',
+ '\371', '\032', '\132', '\345', '\052', '\202', '\035', '\356',
+ '\046', '\117', '\165', '\205', '\010', '\252', '\033', '\132',
+ '\353', '\047', '\011', '\046', '\253', '\065', '\067', '\046',
+ '\105', '\125', '\245', '\301', '\355', '\267', '\056', '\046',
+ '\272', '\253', '\241', '\251', '\326', '\337', '\036', '\017',
+ '\030', '\261', '\337', '\337', '\120', '\127', '\341', '\365',
+ '\354', '\364', '\127', '\124', '\065', '\370', '\352', '\075',
+ '\276', '\051', '\104', '\011', '\252', '\276', '\332', '\135',
+ '\065', '\311', '\272', '\116', '\131', '\202', '\162', '\123',
+ '\155', '\265', '\307', '\031', '\116', '\110', '\364', '\173',
+ '\074', '\216', '\240', '\111', '\152', '\253', '\150', '\152',
+ '\254', '\365', '\271', '\275', '\216', '\240', '\044', '\125',
+ '\171', '\352', '\375', '\050', '\276', '\321', '\357', '\163',
+ '\004', '\065', '\251', '\326', '\127', '\345', '\365', '\350',
+ '\115', '\105', '\336', '\206', '\052', '\275', '\252', '\240',
+ '\141', '\347', '\116', '\176', '\112', '\363', '\056', '\107',
+ '\120', '\223', '\174', '\015', '\115', '\115', '\162', '\165',
+ '\010', '\052', '\174', '\236', '\026', '\217', '\257', '\311',
+ '\223', '\030', '\163', '\050', '\324', '\270', '\153', '\175',
+ '\166', '\110', '\022', '\252', '\153', '\335', '\165', '\015',
+ '\365', '\325', '\025', '\122', '\144', '\102', '\114', '\025',
+ '\032', '\374', '\114', '\074', '\202', '\126', '\352', '\315',
+ '\210', '\232', '\167', '\240', '\015', '\062', '\061', '\234',
+ '\021', '\115', '\366', '\271', '\061', '\054', '\136', '\267',
+ '\157', '\227', '\307', '\031', '\166', '\046', '\066', '\325',
+ '\271', '\275', '\136', '\147', '\070', '\236', '\330', '\210',
+ '\111', '\142', '\075', '\057', '\036', '\224', '\044', '\117',
+ '\133', '\125', '\215', '\273', '\036', '\045', '\232', '\200',
+ '\210', '\167', '\172', '\075', '\315', '\076', '\271', '\212',
+ '\140', '\127', '\303', '\016', '\124', '\307', '\147', '\356',
+ '\052', '\154', '\256', '\333', '\321', '\056', '\127', '\021',
+ '\240', '\204', '\352', '\245', '\162', '\265', '\005', '\137',
+ '\221', '\253', '\012', '\074', '\156', '\237', '\137', '\256',
+ '\042', '\250', '\255', '\152', '\250', '\267', '\056', '\032',
+ '\365', '\041', '\044', '\075', '\150', '\007', '\045', '\311',
+ '\232', '\225', '\074', '\005', '\114', '\300', '\041', '\266',
+ '\046', '\133', '\074', '\344', '\110', '\340', '\211', '\146',
+ '\002', '\266', '\170', '\107', '\063', '\246', '\136', '\275',
+ '\043', '\250', '\111', '\336', '\012', '\164', '\001', '\146',
+ '\223', '\011', '\250', '\330', '\147', '\304', '\076', '\247',
+ '\270', '\316', '\135', '\317', '\150', '\244', '\266', '\272',
+ '\332', '\353', '\321', '\162', '\235', '\021', '\115', '\156',
+ '\150', '\306', '\154', '\262', '\256', '\042', '\150', '\364',
+ '\324', '\127', '\325', '\172', '\365', '\246', '\042', '\314',
+ '\167', '\277', '\107', '\157', '\052', '\362', '\066', '\067',
+ '\131', '\027', '\211', '\356', '\156', '\366', '\064', '\371',
+ '\153', '\121', '\246', '\114', '\221', '\304', '\250', '\250',
+ '\310', '\162', '\344', '\136', '\212', '\207', '\234', '\011',
+ '\126', '\077', '\331', '\101', '\147', '\022', '\367', '\124',
+ '\074', '\344', '\110', '\320', '\066', '\071', '\302', '\232',
+ '\350', '\367', '\126', '\170', '\141', '\120', '\342', '\001',
+ '\021', '\067', '\271', '\153', '\275', '\226', '\375', '\061',
+ '\001', '\025', '\357', '\020', '\023', '\046', '\065', '\117',
+ '\210', '\305', '\025', '\152', '\052', '\022', '\126', '\300',
+ '\044', '\111', '\134', '\321', '\032', '\320', '\270', '\222',
+ '\035', '\213', '\053', '\110', '\073', '\342', '\032', '\216',
+ '\150', '\134', '\005', '\266', '\062', '\236', '\156', '\302',
+ '\361', '\304', '\226', '\111', '\065', '\151', '\231', '\252',
+ '\046', '\065', '\350', '\016', '\114', '\013', '\275', '\253',
+ '\260', '\166', '\117', '\155', '\375', '\056', '\275', '\251',
+ '\250', '\021', '\135', '\355', '\323', '\233', '\021', '\371',
+ '\334', '\355', '\125', '\230', '\100', '\046', '\240', '\142',
+ '\277', '\333', '\147', '\135', '\044', '\352', '\347', '\365',
+ '\355', '\327', '\233', '\212', '\144', '\155', '\370', '\035',
+ '\353', '\302', '\337', '\320', '\350', '\354', '\221', '\304',
+ '\150', '\222', '\212', '\332', '\356', '\244', '\270', '\255',
+ '\224', '\140', '\341', '\223', '\005', '\266', '\232', '\065',
+ '\215', '\114', '\300', '\026', '\363', '\024', '\322', '\273',
+ '\012', '\175', '\036', '\271', '\110', '\264', '\331', '\254',
+ '\257', '\346', '\204', '\365', '\005', '\373', '\341', '\363',
+ '\170', '\275', '\356', '\170', '\100', '\305', '\146', '\331',
+ '\065', '\047', '\054', '\273', '\126', '\267', '\277', '\252',
+ '\106', '\256', '\042', '\150', '\303', '\176', '\120', '\047',
+ '\127', '\021', '\320', '\215', '\377', '\217', '\327', '\377',
+ '\001', '\226', '\047', '\030', '\162', '\200', '\067', '\000',
+ '\000',
+
+};
+
+static const char file_6x13[] = {
+ '\037', '\213', '\010', '\010', '\126', '\121', '\054', '\100',
+ '\000', '\003', '\066', '\170', '\061', '\063', '\055', '\111',
+ '\123', '\117', '\070', '\070', '\065', '\071', '\055', '\061',
+ '\056', '\160', '\143', '\146', '\000', '\355', '\234', '\177',
+ '\170', '\024', '\307', '\171', '\307', '\277', '\002', '\001',
+ '\002', '\013', '\020', '\106', '\004', '\141', '\203', '\045',
+ '\333', '\330', '\306', '\066', '\262', '\045', '\014', '\030',
+ '\073', '\330', '\346', '\054', '\035', '\240', '\104', '\110',
+ '\030', '\111', '\061', '\070', '\151', '\345', '\343', '\156',
+ '\045', '\155', '\270', '\037', '\362', '\375', '\300', '\222',
+ '\215', '\101', '\010', '\044', '\204', '\114', '\012', '\051',
+ '\216', '\103', '\034', '\222', '\100', '\203', '\123', '\334',
+ '\342', '\032', '\327', '\264', '\265', '\023', '\307', '\165',
+ '\152', '\047', '\301', '\055', '\165', '\150', '\202', '\133',
+ '\352', '\322', '\230', '\076', '\365', '\037', '\364', '\251',
+ '\363', '\074', '\116', '\037', '\047', '\161', '\373', '\270',
+ '\245', '\337', '\331', '\335', '\071', '\215', '\206', '\335',
+ '\273', '\225', '\340', '\111', '\237', '\247', '\017', '\003',
+ '\237', '\331', '\331', '\335', '\171', '\147', '\346', '\175',
+ '\347', '\335', '\231', '\331', '\071', '\335', '\025', '\264',
+ '\205', '\073', '\047', '\002', '\050', '\040', '\143', '\110',
+ '\007', '\243', '\175', '\116', '\172', '\014', '\057', '\106',
+ '\170', '\304', '\130', '\240', '\120', '\236', '\063', '\021',
+ '\341', '\171', '\221', '\223', '\347', '\154', '\025', '\160',
+ '\174', '\002', '\120', '\242', '\334', '\077', '\274', '\004',
+ '\250', '\160', '\356', '\227', '\060', '\052', '\276', '\007',
+ '\130', '\346', '\234', '\157', '\247', '\354', '\354', '\373',
+ '\200', '\036', '\347', '\174', '\037', '\053', '\077', '\160',
+ '\277', '\335', '\000', '\131', '\337', '\222', '\172', '\373',
+ '\336', '\247', '\140', '\207', '\202', '\053', '\031', '\115',
+ '\027', '\211', '\253', '\141', '\227', '\134', '\060', '\237',
+ '\321', '\002', '\221', '\270', '\227', '\121', '\120', '\044',
+ '\076', '\313', '\150', '\225', '\110', '\174', '\236', '\221',
+ '\051', '\022', '\135', '\214', '\272', '\205', '\374', '\144',
+ '\121', '\257', '\110', '\210', '\053', '\273', '\105', '\102',
+ '\144', '\336', '\057', '\023', '\317', '\211', '\314', '\057',
+ '\062', '\172', '\111', '\134', '\131', '\112', '\176', '\040',
+ '\256', '\374', '\224', '\321', '\273', '\042', '\361', '\357',
+ '\214', '\176', '\041', '\022', '\277', '\141', '\064', '\107',
+ '\030', '\112', '\030', '\154', '\236', '\110', '\214', '\047',
+ '\325', '\114', '\024', '\054', '\146', '\264', '\121', '\134',
+ '\231', '\104', '\236', '\020', '\211', '\166', '\062', '\040',
+ '\363', '\000', '\173', '\231', '\134', '\336', '\330', '\320',
+ '\334', '\020', '\130', '\025', '\154', '\135', '\023', '\134',
+ '\121', '\327', '\324', '\274', '\146', '\235', '\270', '\324',
+ '\322', '\120', '\313', '\304', '\052', '\063', '\025', '\306',
+ '\362', '\300', '\252', '\272', '\372', '\165', '\255', '\042',
+ '\013', '\226', '\233', '\135', '\106', '\004', '\017', '\006',
+ '\353', '\126', '\254', '\154', '\266', '\257', '\254', '\062',
+ '\042', '\146', '\046', '\206', '\246', '\372', '\100', '\103',
+ '\063', '\326', '\240', '\051', '\330', '\374', '\140', '\135',
+ '\155', '\363', '\112', '\373', '\146', '\223', '\021', '\063',
+ '\153', '\022', '\361', '\210', '\021', '\117', '\121', '\054',
+ '\120', '\133', '\333', '\332', '\324', '\274', '\256', '\076',
+ '\150', '\337', '\304', '\352', '\272', '\265', '\301', '\372',
+ '\326', '\246', '\272', '\207', '\202', '\130', '\335', '\130',
+ '\327', '\320', '\154', '\047', '\327', '\004', '\233', '\032',
+ '\353', '\133', '\232', '\353', '\032', '\033', '\132', '\327',
+ '\252', '\047', '\353', '\320', '\264', '\072', '\120', '\123',
+ '\327', '\260', '\002', '\065', '\010', '\174', '\056', '\270',
+ '\046', '\260', '\042', '\330', '\152', '\125', '\205', '\232',
+ '\225', '\201', '\065', '\254', '\167', '\250', '\375', '\165',
+ '\115', '\215', '\113', '\226', '\054', '\272', '\053', '\173',
+ '\043', '\330', '\120', '\323', '\130', '\053', '\044', '\253',
+ '\121', '\323', '\270', '\172', '\335', '\032', '\321', '\172',
+ '\254', '\316', '\254', '\217', '\232', '\341', '\212', '\110',
+ '\042', '\026', '\062', '\343', '\025', '\155', '\211', '\170',
+ '\372', '\266', '\212', '\212', '\246', '\216', '\120', '\322',
+ '\250', '\010', '\305', '\043', '\025', '\106', '\374', '\213',
+ '\211', '\356', '\333', '\120', '\023', '\130', '\335', '\272',
+ '\322', '\122', '\027', '\153', '\145', '\102', '\030', '\014',
+ '\225', '\302', '\066', '\225', '\226', '\075', '\052', '\155',
+ '\033', '\124', '\256', '\251', '\034', '\246', '\157', '\145',
+ '\145', '\365', '\035', '\225', '\325', '\013', '\252', '\052',
+ '\357', '\134', '\044', '\376', '\327', '\124', '\056', '\256',
+ '\252', '\164', '\132', '\126', '\131', '\355', '\330', '\120',
+ '\121', '\020', '\017', '\264', '\004', '\152', '\035', '\215',
+ '\054', '\237', '\053', '\260', '\002', '\160', '\205', '\343',
+ '\223', '\166', '\030', '\317', '\177', '\127', '\070', '\347',
+ '\152', '\132', '\234', '\235', '\077', '\377', '\353', '\363',
+ '\042', '\357', '\360', '\353', '\136', '\101', '\324', '\361',
+ '\036', '\172', '\372', '\373', '\237', '\354', '\275', '\034',
+ '\135', '\216', '\056', '\107', '\227', '\243', '\113', '\033',
+ '\071', '\343', '\326', '\173', '\316', '\170', '\263', '\120',
+ '\314', '\343', '\316', '\014', '\167', '\222', '\024', '\162',
+ '\374', '\131', '\102', '\242', '\344', '\000', '\071', '\105',
+ '\212', '\050', '\260', '\224', '\164', '\222', '\103', '\344',
+ '\264', '\230', '\247', '\071', '\067', '\057', '\043', '\151',
+ '\162', '\230', '\234', '\041', '\045', '\234', '\317', '\153',
+ '\111', '\027', '\071', '\102', '\316', '\222', '\322', '\161',
+ '\300', '\112', '\262', '\211', '\034', '\045', '\357', '\223',
+ '\062', '\116', '\163', '\365', '\244', '\207', '\034', '\043',
+ '\347', '\310', '\154', '\256', '\013', '\126', '\223', '\355',
+ '\344', '\145', '\362', '\001', '\251', '\340', '\302', '\241',
+ '\231', '\014', '\220', '\127', '\311', '\207', '\144', '\056',
+ '\347', '\323', '\265', '\144', '\027', '\171', '\235', '\174',
+ '\104', '\346', '\161', '\042', '\375', '\002', '\331', '\103',
+ '\336', '\044', '\037', '\223', '\371', '\034', '\240', '\037',
+ '\046', '\117', '\221', '\343', '\344', '\023', '\122', '\125',
+ '\314', '\065', '\003', '\331', '\107', '\116', '\024', '\333',
+ '\223', '\375', '\102', '\322', '\101', '\366', '\223', '\223',
+ '\244', '\160', '\012', '\365', '\047', '\121', '\162', '\200',
+ '\234', '\042', '\105', '\123', '\251', '\077', '\351', '\044',
+ '\207', '\310', '\151', '\122', '\314', '\105', '\314', '\062',
+ '\222', '\046', '\207', '\311', '\031', '\122', '\062', '\215',
+ '\372', '\223', '\056', '\162', '\204', '\234', '\045', '\245',
+ '\134', '\217', '\254', '\044', '\233', '\310', '\121', '\362',
+ '\076', '\051', '\343', '\372', '\244', '\236', '\364', '\220',
+ '\143', '\344', '\034', '\231', '\135', '\112', '\375', '\311',
+ '\166', '\362', '\062', '\371', '\200', '\124', '\314', '\240',
+ '\376', '\144', '\200', '\274', '\112', '\076', '\044', '\163',
+ '\271', '\320', '\131', '\113', '\166', '\221', '\327', '\311',
+ '\107', '\144', '\336', '\114', '\352', '\117', '\366', '\220',
+ '\067', '\311', '\307', '\144', '\176', '\031', '\365', '\047',
+ '\117', '\221', '\343', '\344', '\023', '\122', '\065', '\213',
+ '\372', '\223', '\175', '\344', '\004', '\301', '\125', '\324',
+ '\237', '\164', '\220', '\375', '\344', '\044', '\051', '\344',
+ '\262', '\151', '\011', '\211', '\222', '\003', '\344', '\024',
+ '\051', '\232', '\115', '\375', '\111', '\047', '\071', '\104',
+ '\116', '\223', '\342', '\071', '\324', '\237', '\244', '\311',
+ '\141', '\162', '\206', '\224', '\134', '\103', '\375', '\111',
+ '\027', '\071', '\102', '\316', '\222', '\322', '\162', '\352',
+ '\117', '\066', '\221', '\243', '\344', '\175', '\122', '\306',
+ '\145', '\131', '\075', '\351', '\041', '\307', '\310', '\071',
+ '\062', '\373', '\132', '\352', '\117', '\266', '\223', '\227',
+ '\311', '\007', '\244', '\342', '\072', '\352', '\117', '\006',
+ '\310', '\253', '\344', '\103', '\062', '\367', '\172', '\352',
+ '\117', '\166', '\221', '\327', '\311', '\107', '\144', '\336',
+ '\134', '\352', '\117', '\366', '\220', '\067', '\311', '\307',
+ '\144', '\376', '\015', '\324', '\237', '\074', '\105', '\216',
+ '\223', '\117', '\110', '\325', '\215', '\324', '\237', '\354',
+ '\043', '\047', '\010', '\156', '\242', '\376', '\244', '\203',
+ '\354', '\047', '\047', '\111', '\341', '\074', '\352', '\117',
+ '\242', '\344', '\000', '\071', '\105', '\212', '\156', '\246',
+ '\376', '\244', '\223', '\034', '\042', '\247', '\111', '\361',
+ '\055', '\324', '\237', '\244', '\311', '\141', '\162', '\206',
+ '\224', '\334', '\112', '\375', '\111', '\027', '\071', '\102',
+ '\316', '\222', '\122', '\256', '\076', '\127', '\222', '\115',
+ '\344', '\050', '\171', '\237', '\224', '\125', '\002', '\115',
+ '\364', '\307', '\357', '\260', '\357', '\352', '\231', '\336',
+ '\367', '\320', '\320', '\374', '\077', '\303', '\071', '\116',
+ '\363', '\070', '\316', '\200', '\167', '\020', '\353', '\156',
+ '\272', '\053', '\312', '\235', '\143', '\241', '\113', '\036',
+ '\041', '\177', '\313', '\010', '\217', '\062', '\214', '\163',
+ '\230', '\240', '\244', '\351', '\012', '\326', '\372', '\136',
+ '\242', '\007', '\221', '\127', '\254', '\154', '\307', '\072',
+ '\307', '\071', '\116', '\273', '\212', '\235', '\243', '\133',
+ '\033', '\307', '\073', '\171', '\345', '\212', '\130', '\344',
+ '\055', '\125', '\216', '\245', '\056', '\062', '\005', '\012',
+ '\023', '\234', '\166', '\345', '\253', '\107', '\334', '\273',
+ '\322', '\241', '\330', '\345', '\276', '\127', '\220', '\345',
+ '\225', '\153', '\145', '\227', '\173', '\344', '\027', '\257',
+ '\000', '\142', '\275', '\070', '\331', '\111', '\027', '\152',
+ '\314', '\166', '\221', '\031', '\247', '\060', '\306', '\301',
+ '\313', '\326', '\172', '\171', '\222', '\011', '\043', '\320',
+ '\111', '\206', '\011', '\071', '\312', '\363', '\012', '\113',
+ '\163', '\310', '\170', '\261', '\064', '\107', '\171', '\136',
+ '\062', '\367', '\345', '\271', '\167', '\061', '\341', '\377',
+ '\203', '\174', '\056', '\133', '\217', '\264', '\177', '\162',
+ '\371', '\301', '\245', '\354', '\203', '\134', '\355', '\036',
+ '\015', '\152', '\340', '\224', '\227', '\035', '\113', '\306',
+ '\073', '\347', '\042', '\170', '\075', '\247', '\042', '\210',
+ '\161', '\112', '\214', '\005', '\045', '\316', '\161', '\254',
+ '\017', '\031', '\031', '\104', '\236', '\111', '\056', '\344',
+ '\012', '\045', '\030', '\032', '\107', '\312', '\235', '\266',
+ '\272', '\005', '\071', '\126', '\311', '\261', '\140', '\202',
+ '\222', '\026', '\327', '\047', '\373', '\150', '\337', '\110',
+ '\306', '\270', '\221', '\204', '\174', '\375', '\341', '\066',
+ '\166', '\370', '\265', '\217', '\227', '\134', '\271', '\166',
+ '\364', '\052', '\107', '\324', '\315', '\145', '\110', '\166',
+ '\054', '\025', '\363', '\242', '\234', '\103', '\246', '\172',
+ '\264', '\115', '\330', '\163', '\206', '\123', '\146', '\221',
+ '\223', '\147', '\214', '\163', '\056', '\256', '\117', '\364',
+ '\250', '\153', '\014', '\206', '\217', '\331', '\342', '\070',
+ '\313', '\311', '\377', '\051', '\227', '\374', '\176', '\306',
+ '\126', '\065', '\310', '\266', '\310', '\366', '\350', '\310',
+ '\173', '\352', '\334', '\240', '\137', '\327', '\121', '\313',
+ '\323', '\333', '\046', '\164', '\235', '\342', '\034', '\375',
+ '\266', '\121', '\325', '\113', '\237', '\037', '\107', '\032',
+ '\344', '\334', '\235', '\157', '\317', '\304', '\317', '\263',
+ '\231', '\053', '\210', '\072', '\334', '\326', '\113', '\045',
+ '\016', '\252', '\255', '\244', '\255', '\345', '\132', '\303',
+ '\255', '\054', '\341', '\047', '\323', '\134', '\230', '\344',
+ '\122', '\207', '\224', '\021', '\343', '\323', '\070', '\270',
+ '\077', '\103', '\156', '\372', '\115', '\121', '\312', '\225',
+ '\155', '\224', '\355', '\053', '\360', '\220', '\051', '\327',
+ '\362', '\116', '\121', '\164', '\234', '\346', '\234', '\353',
+ '\101', '\352', '\136', '\214', '\241', '\347', '\154', '\242',
+ '\123', '\226', '\327', '\232', '\117', '\216', '\143', '\002',
+ '\061', '\056', '\115', '\367', '\121', '\217', '\324', '\107',
+ '\312', '\115', '\305', '\160', '\333', '\271', '\311', '\250',
+ '\372', '\170', '\075', '\033', '\136', '\365', '\250', '\345',
+ '\346', '\253', '\107', '\317', '\163', '\215', '\017', '\175',
+ '\144', '\160', '\363', '\055', '\057', '\177', '\313', '\165',
+ '\337', '\353', '\131', '\160', '\353', '\173', '\371', '\314',
+ '\027', '\071', '\367', '\163', '\205', '\162', '\217', '\264',
+ '\036', '\334', '\312', '\325', '\353', '\325', '\203', '\227',
+ '\217', '\346', '\232', '\027', '\124', '\031', '\061', '\166',
+ '\316', '\160', '\230', '\354', '\324', '\161', '\215', '\213',
+ '\214', '\333', '\063', '\127', '\256', '\235', '\353', '\101',
+ '\370', '\327', '\225', '\012', '\123', '\264', '\363', '\251',
+ '\071', '\332', '\126', '\340', '\202', '\227', '\037', '\350',
+ '\365', '\350', '\270', '\325', '\243', '\076', '\077', '\362',
+ '\131', '\120', '\317', '\275', '\236', '\355', '\134', '\062',
+ '\271', '\372', '\107', '\315', '\063', '\013', '\271', '\237',
+ '\005', '\175', '\114', '\323', '\355', '\354', '\146', '\153',
+ '\351', '\313', '\136', '\270', '\325', '\243', '\277', '\353',
+ '\250', '\210', '\361', '\147', '\174', '\216', '\266', '\211',
+ '\373', '\142', '\054', '\035', '\353', '\034', '\047', '\346',
+ '\150', '\233', '\133', '\137', '\346', '\263', '\265', '\054',
+ '\113', '\174', '\302', '\044', '\375', '\063', '\237', '\015',
+ '\304', '\265', '\351', '\016', '\122', '\146', '\026', '\206',
+ '\333', '\133', '\017', '\372', '\270', '\243', '\343', '\345',
+ '\157', '\152', '\236', '\221', '\370', '\201', '\033', '\162',
+ '\015', '\240', '\217', '\043', '\156', '\365', '\344', '\263',
+ '\265', '\356', '\157', '\176', '\346', '\037', '\165', '\015',
+ '\341', '\147', '\315', '\217', '\034', '\272', '\214', '\304',
+ '\257', '\325', '\365', '\251', '\337', '\172', '\146', '\150',
+ '\270', '\255', '\111', '\365', '\362', '\013', '\225', '\164',
+ '\056', '\337', '\321', '\145', '\362', '\331', '\300', '\155',
+ '\156', '\124', '\327', '\056', '\272', '\137', '\117', '\201',
+ '\373', '\232', '\122', '\107', '\267', '\235', '\354', '\113',
+ '\165', '\015', '\052', '\353', '\224', '\175', '\253', '\327',
+ '\343', '\365', '\134', '\253', '\350', '\365', '\250', '\143',
+ '\374', '\245', '\014', '\252', '\035', '\364', '\265', '\363',
+ '\150', '\202', '\364', '\151', '\061', '\117', '\311', '\071',
+ '\314', '\155', '\355', '\257', '\217', '\325', '\272', '\057',
+ '\271', '\315', '\013', '\172', '\075', '\352', '\263', '\344',
+ '\345', '\327', '\045', '\012', '\262', '\115', '\372', '\132',
+ '\306', '\117', '\075', '\162', '\176', '\361', '\252', '\107',
+ '\177', '\077', '\235', '\212', '\013', '\175', '\307', '\117',
+ '\075', '\372', '\032', '\113', '\257', '\117', '\265', '\233',
+ '\134', '\133', '\346', '\033', '\173', '\105', '\220', '\317',
+ '\310', '\170', '\370', '\233', '\177', '\104', '\220', '\276',
+ '\120', '\014', '\367', '\071', '\110', '\237', '\207', '\324',
+ '\266', '\171', '\315', '\101', '\172', '\160', '\153', '\217',
+ '\237', '\266', '\311', '\040', '\366', '\025', '\365', '\161',
+ '\047', '\337', '\063', '\062', '\022', '\273', '\311', '\340',
+ '\066', '\107', '\344', '\153', '\133', '\276', '\271', '\310',
+ '\055', '\350', '\076', '\252', '\256', '\265', '\275', '\326',
+ '\262', '\122', '\237', '\174', '\363', '\234', '\233', '\076',
+ '\302', '\376', '\105', '\171', '\364', '\361', '\362', '\151',
+ '\077', '\373', '\306', '\272', '\315', '\274', '\306', '\003',
+ '\057', '\031', '\165', '\314', '\367', '\043', '\223', '\157',
+ '\376', '\321', '\145', '\324', '\371', '\304', '\317', '\370',
+ '\352', '\246', '\113', '\276', '\367', '\040', '\371', '\256',
+ '\230', '\353', '\375', '\264', '\014', '\027', '\372', '\376',
+ '\130', '\227', '\153', '\145', '\232', '\334', '\110', '\367',
+ '\004', '\275', '\312', '\164', '\253', '\133', '\015', '\162',
+ '\117', '\310', '\153', '\357', '\347', '\122', '\005', '\365',
+ '\335', '\310', '\357', '\172', '\107', '\216', '\023', '\242',
+ '\175', '\162', '\377', '\111', '\256', '\333', '\274', '\374',
+ '\346', '\142', '\366', '\023', '\145', '\137', '\113', '\337',
+ '\224', '\317', '\222', '\127', '\136', '\325', '\217', '\325',
+ '\275', '\316', '\134', '\372', '\350', '\372', '\346', '\262',
+ '\201', '\252', '\213', '\376', '\231', '\116', '\011', '\334',
+ '\237', '\323', '\321', '\354', '\075', '\112', '\075', '\205',
+ '\155', '\305', '\332', '\177', '\072', '\206', '\336', '\001',
+ '\162', '\371', '\277', '\276', '\046', '\220', '\163', '\256',
+ '\237', '\175', '\253', '\122', '\247', '\235', '\262', '\137',
+ '\047', '\301', '\375', '\363', '\057', '\267', '\040', '\327',
+ '\200', '\371', '\366', '\000', '\364', '\266', '\346', '\273',
+ '\057', '\164', '\230', '\011', '\133', '\367', '\253', '\225',
+ '\164', '\276', '\061', '\140', '\244', '\341', '\267', '\361',
+ '\371', '\234', '\334', '\247', '\225', '\143', '\223', '\237',
+ '\317', '\314', '\244', '\214', '\134', '\357', '\352', '\143',
+ '\205', '\133', '\220', '\343', '\337', '\305', '\004', '\267',
+ '\271', '\104', '\330', '\136', '\237', '\357', '\256', '\161',
+ '\256', '\253', '\210', '\161', '\272', '\024', '\336', '\237',
+ '\237', '\352', '\341', '\122', '\175', '\126', '\240', '\352',
+ '\055', '\354', '\065', '\026', '\303', '\307', '\034', '\077',
+ '\301', '\153', '\217', '\316', '\217', '\117', '\251', '\317',
+ '\214', '\372', '\054', '\351', '\301', '\255', '\155', '\342',
+ '\271', '\051', '\163', '\344', '\146', '\343', '\302', '\347',
+ '\310', '\115', '\246', '\310', '\311', '\057', '\337', '\275',
+ '\364', '\317', '\166', '\165', '\337', '\021', '\351', '\053',
+ '\363', '\324', '\003', '\134', '\070', '\016', '\312', '\171',
+ '\324', '\153', '\055', '\066', '\106', '\223', '\121', '\337',
+ '\057', '\325', '\075', '\033', '\065', '\024', '\215', '\102',
+ '\106', '\076', '\243', '\043', '\221', '\221', '\375', '\060',
+ '\022', '\231', '\111', '\243', '\220', '\221', '\371', '\364',
+ '\365', '\115', '\056', '\031', '\021', '\256', '\302', '\360',
+ '\317', '\337', '\305', '\134', '\250', '\376', '\315', '\303',
+ '\034', '\027', '\031', '\077', '\173', '\203', '\352', '\376',
+ '\255', '\332', '\077', '\352', '\336', '\235', '\272', '\106',
+ '\326', '\375', '\273', '\150', '\024', '\062', '\152', '\377',
+ '\370', '\225', '\121', '\155', '\355', '\127', '\106', '\325',
+ '\307', '\153', '\277', '\117', '\367', '\321', '\242', '\121',
+ '\310', '\250', '\372', '\370', '\225', '\121', '\365', '\361',
+ '\053', '\003', '\134', '\270', '\167', '\073', '\023', '\271',
+ '\367', '\156', '\125', '\277', '\226', '\276', '\045', '\367',
+ '\373', '\274', '\366', '\371', '\164', '\273', '\371', '\331',
+ '\257', '\322', '\355', '\346', '\107', '\106', '\267', '\233',
+ '\037', '\031', '\125', '\037', '\277', '\062', '\272', '\255',
+ '\375', '\310', '\350', '\101', '\175', '\057', '\361', '\172',
+ '\047', '\051', '\161', '\312', '\221', '\173', '\250', '\352',
+ '\173', '\217', '\334', '\147', '\025', '\367', '\325', '\171',
+ '\121', '\265', '\265', '\133', '\273', '\362', '\331', '\332',
+ '\257', '\214', '\152', '\153', '\277', '\062', '\252', '\335',
+ '\056', '\246', '\155', '\156', '\373', '\203', '\172', '\160',
+ '\333', '\163', '\312', '\367', '\156', '\056', '\336', '\223',
+ '\345', '\236', '\207', '\034', '\007', '\325', '\275', '\136',
+ '\267', '\367', '\005', '\335', '\267', '\375', '\354', '\213',
+ '\351', '\276', '\355', '\107', '\106', '\367', '\155', '\077',
+ '\062', '\272', '\157', '\373', '\221', '\321', '\175', '\073',
+ '\237', '\214', '\154', '\127', '\361', '\010', '\144', '\364',
+ '\040', '\377', '\136', '\101', '\034', '\345', '\173', '\135',
+ '\276', '\367', '\026', '\257', '\275', '\101', '\165', '\376',
+ '\001', '\334', '\307', '\236', '\174', '\373', '\174', '\156',
+ '\143', '\217', '\337', '\275', '\301', '\221', '\310', '\270',
+ '\215', '\043', '\371', '\144', '\124', '\175', '\374', '\356',
+ '\363', '\025', '\215', '\102', '\106', '\325', '\307', '\257',
+ '\214', '\252', '\217', '\037', '\031', '\371', '\034', '\313',
+ '\375', '\051', '\277', '\373', '\157', '\252', '\137', '\373',
+ '\335', '\347', '\313', '\067', '\007', '\371', '\365', '\203',
+ '\174', '\062', '\371', '\346', '\240', '\174', '\372', '\370',
+ '\225', '\311', '\067', '\007', '\171', '\315', '\077', '\156',
+ '\357', '\212', '\136', '\143', '\250', '\032', '\324', '\271',
+ '\110', '\235', '\203', '\364', '\371', '\107', '\204', '\134',
+ '\163', '\220', '\237', '\061', '\321', '\257', '\114', '\256',
+ '\071', '\310', '\317', '\370', '\166', '\261', '\155', '\313',
+ '\267', '\067', '\350', '\265', '\207', '\077', '\035', '\103',
+ '\237', '\365', '\253', '\266', '\363', '\152', '\233', '\133',
+ '\075', '\316', '\167', '\250', '\372', '\372', '\167', '\366',
+ '\060', '\332', '\261', '\331', '\376', '\362', '\203', '\163',
+ '\252', '\106', '\133', '\031', '\075', '\316', '\324', '\300',
+ '\026', '\345', '\306', '\266', '\376', '\047', '\067', '\061',
+ '\352', '\353', '\355', '\355', '\267', '\043', '\236', '\312',
+ '\157', '\117', '\154', '\144', '\064', '\320', '\315', '\250',
+ '\117', '\134', '\353', '\335', '\302', '\150', '\213', '\225',
+ '\245', '\127', '\210', '\131', '\131', '\304', '\015', '\212',
+ '\155', '\263', '\253', '\264', '\112', '\266', '\242', '\176',
+ '\121', '\174', '\277', '\135', '\121', '\357', '\166', '\121',
+ '\100', '\017', '\057', '\061', '\037', '\233', '\261', '\275',
+ '\177', '\347', '\143', '\172', '\063', '\170', '\152', '\335',
+ '\175', '\214', '\167', '\007', '\267', '\132', '\221', '\270',
+ '\261', '\311', '\322', '\210', '\247', '\275', '\342', '\264',
+ '\157', '\223', '\114', '\135', '\240', '\233', '\217', '\210',
+ '\262', '\073', '\266', '\132', '\221', '\274', '\326', '\277',
+ '\171', '\364', '\105', '\371', '\316', '\074', '\262', '\346',
+ '\146', '\065', '\037', '\112', '\011', '\133', '\365', '\154',
+ '\245', '\021', '\007', '\273', '\244', '\141', '\355', '\326',
+ '\273', '\245', '\172', '\245', '\354', '\100', '\117', '\017',
+ '\243', '\336', '\141', '\315', '\355', '\327', '\242', '\336',
+ '\154', '\224', '\275', '\066', '\340', '\226', '\257', '\147',
+ '\130', '\276', '\301', '\255', '\126', '\067', '\132', '\051',
+ '\273', '\175', '\331', '\256', '\025', '\247', '\331', '\136',
+ '\335', '\341', '\364', '\376', '\066', '\333', '\365', '\006',
+ '\055', '\215', '\204', '\012', '\203', '\326', '\215', '\315',
+ '\062', '\113', '\237', '\350', '\337', '\276', '\115', '\331',
+ '\033', '\135', '\212', '\237', '\156', '\353', '\037', '\174',
+ '\334', '\212', '\262', '\352', '\367', '\016', '\271', '\024',
+ '\243', '\236', '\136', '\073', '\213', '\132', '\336', '\140',
+ '\317', '\260', '\150', '\147', '\317', '\205', '\327', '\334',
+ '\262', '\354', '\354', '\165', '\273', '\053', '\332', '\354',
+ '\104', '\331', '\123', '\177', '\205', '\132', '\316', '\157',
+ '\131', '\050', '\117', '\275', '\071', '\243', '\301', '\341',
+ '\035', '\340', '\356', '\211', '\166', '\244', '\366', '\264',
+ '\217', '\342', '\255', '\307', '\157', '\207', '\247', '\167',
+ '\132', '\217', '\263', '\125', '\245', '\374', '\016', '\025',
+ '\160', '\136', '\031', '\317', '\306', '\140', '\054', '\107',
+ '\302', '\161', '\234', '\261', '\047', '\160', '\124', '\234',
+ '\310', '\321', '\352', '\012', '\216', '\302', '\223', '\071',
+ '\042', '\115', '\345', '\350', '\064', '\215', '\243', '\361',
+ '\164', '\316', '\146', '\063', '\070', '\132', '\315', '\104',
+ '\031', '\307', '\255', '\253', '\160', '\065', '\146', '\143',
+ '\016', '\127', '\203', '\345', '\250', '\300', '\265', '\270',
+ '\016', '\327', '\143', '\056', '\156', '\300', '\215', '\270',
+ '\011', '\363', '\160', '\063', '\156', '\301', '\255', '\230',
+ '\217', '\112', '\334', '\206', '\333', '\121', '\205', '\152',
+ '\054', '\300', '\035', '\130', '\210', '\105', '\130', '\214',
+ '\073', '\261', '\004', '\167', '\341', '\156', '\174', '\032',
+ '\113', '\161', '\017', '\356', '\305', '\175', '\130', '\206',
+ '\000', '\356', '\107', '\015', '\152', '\021', '\304', '\162',
+ '\254', '\300', '\112', '\324', '\341', '\063', '\370', '\054',
+ '\352', '\261', '\012', '\015', '\150', '\304', '\152', '\074',
+ '\040', '\276', '\006', '\214', '\146', '\264', '\340', '\163',
+ '\170', '\020', '\153', '\261', '\016', '\017', '\341', '\363',
+ '\370', '\002', '\176', '\007', '\277', '\213', '\126', '\074',
+ '\214', '\020', '\326', '\043', '\214', '\010', '\014', '\264',
+ '\241', '\035', '\035', '\060', '\361', '\105', '\154', '\100',
+ '\024', '\061', '\304', '\221', '\100', '\047', '\036', '\101',
+ '\022', '\051', '\244', '\221', '\301', '\106', '\074', '\212',
+ '\056', '\164', '\343', '\061', '\074', '\216', '\115', '\170',
+ '\002', '\233', '\161', '\376', '\242', '\303', '\026', '\364',
+ '\140', '\053', '\172', '\261', '\015', '\333', '\321', '\207',
+ '\176', '\354', '\300', '\000', '\166', '\142', '\020', '\117',
+ '\142', '\027', '\276', '\204', '\337', '\303', '\156', '\354',
+ '\301', '\227', '\361', '\373', '\330', '\213', '\247', '\360',
+ '\025', '\074', '\215', '\257', '\142', '\037', '\276', '\206',
+ '\147', '\360', '\165', '\354', '\307', '\067', '\360', '\115',
+ '\174', '\013', '\007', '\160', '\020', '\177', '\200', '\157',
+ '\343', '\020', '\236', '\305', '\167', '\360', '\207', '\070',
+ '\214', '\347', '\360', '\107', '\370', '\143', '\034', '\301',
+ '\363', '\370', '\023', '\274', '\200', '\243', '\170', '\021',
+ '\177', '\212', '\227', '\160', '\014', '\177', '\206', '\077',
+ '\307', '\137', '\340', '\145', '\274', '\202', '\357', '\342',
+ '\173', '\170', '\025', '\337', '\307', '\153', '\370', '\113',
+ '\274', '\216', '\037', '\340', '\257', '\360', '\006', '\336',
+ '\304', '\017', '\361', '\043', '\374', '\030', '\307', '\361',
+ '\026', '\376', '\032', '\177', '\203', '\023', '\370', '\133',
+ '\274', '\215', '\237', '\340', '\044', '\376', '\016', '\077',
+ '\305', '\317', '\160', '\012', '\357', '\340', '\357', '\361',
+ '\017', '\070', '\215', '\177', '\304', '\273', '\370', '\047',
+ '\234', '\301', '\077', '\343', '\347', '\030', '\372', '\116',
+ '\335', '\331', '\202', '\313', '\134', '\346', '\062', '\377',
+ '\027', '\250', '\337', '\153', '\225', '\337', '\025', '\023',
+ '\173', '\271', '\327', '\301', '\376', '\056', '\233', '\370',
+ '\021', '\210', '\273', '\111', '\000', '\366', '\217', '\071',
+ '\064', '\021', '\361', '\013', '\020', '\021', '\022', '\043',
+ '\033', '\311', '\026', '\062', '\100', '\366', '\300', '\376',
+ '\155', '\213', '\203', '\260', '\177', '\364', '\341', '\105',
+ '\362', '\135', '\362', '\006', '\071', '\101', '\336', '\041',
+ '\342', '\271', '\077', '\107', '\176', '\105', '\076', '\026',
+ '\163', '\000', '\333', '\060', '\211', '\314', '\042', '\345',
+ '\344', '\106', '\162', '\073', '\271', '\233', '\004', '\110',
+ '\035', '\151', '\042', '\255', '\304', '\044', '\351', '\002',
+ '\373', '\367', '\037', '\172', '\013', '\354', '\237', '\177',
+ '\330', '\115', '\236', '\046', '\373', '\311', '\101', '\362',
+ '\054', '\171', '\216', '\274', '\100', '\216', '\221', '\127',
+ '\310', '\367', '\311', '\033', '\344', '\055', '\362', '\166',
+ '\201', '\375', '\375', '\334', '\237', '\223', '\177', '\045',
+ '\377', '\106', '\176', '\111', '\376', '\213', '\374', '\067',
+ '\071', '\117', '\012', '\150', '\224', '\261', '\144', '\034',
+ '\231', '\100', '\046', '\222', '\053', '\310', '\144', '\062',
+ '\225', '\114', '\043', '\323', '\311', '\014', '\062', '\223',
+ '\314', '\042', '\127', '\223', '\071', '\244', '\234', '\134',
+ '\113', '\256', '\047', '\067', '\220', '\233', '\310', '\315',
+ '\344', '\126', '\122', '\111', '\156', '\047', '\325', '\344',
+ '\036', '\262', '\202', '\064', '\223', '\207', '\311', '\006',
+ '\362', '\010', '\111', '\221', '\014', '\171', '\224', '\164',
+ '\223', '\307', '\311', '\023', '\144', '\013', '\331', '\112',
+ '\266', '\221', '\076', '\262', '\203', '\354', '\044', '\117',
+ '\222', '\057', '\221', '\335', '\344', '\313', '\144', '\057',
+ '\371', '\012', '\371', '\052', '\371', '\032', '\371', '\072',
+ '\371', '\006', '\371', '\026', '\071', '\110', '\276', '\115',
+ '\236', '\045', '\057', '\220', '\227', '\310', '\153', '\344',
+ '\055', '\362', '\023', '\362', '\056', '\171', '\217', '\234',
+ '\043', '\277', '\044', '\277', '\042', '\347', '\205', '\015',
+ '\304', '\367', '\224', '\311', '\125', '\344', '\106', '\262',
+ '\220', '\334', '\107', '\226', '\223', '\007', '\310', '\132',
+ '\322', '\112', '\114', '\222', '\041', '\333', '\310', '\116',
+ '\262', '\213', '\074', '\115', '\236', '\045', '\317', '\223',
+ '\127', '\310', '\217', '\310', '\073', '\344', '\054', '\071',
+ '\107', '\176', '\115', '\306', '\362', '\145', '\150', '\022',
+ '\231', '\106', '\346', '\220', '\271', '\344', '\066', '\262',
+ '\220', '\334', '\111', '\226', '\221', '\025', '\244', '\201',
+ '\074', '\124', '\150', '\377', '\006', '\312', '\006', '\222',
+ '\044', '\233', '\311', '\000', '\331', '\105', '\366', '\222',
+ '\147', '\310', '\101', '\362', '\074', '\071', '\106', '\136',
+ '\043', '\077', '\046', '\157', '\223', '\167', '\310', '\031',
+ '\162', '\216', '\374', '\007', '\371', '\117', '\162', '\136',
+ '\324', '\075', '\216', '\165', '\213', '\357', '\130', '\223',
+ '\271', '\344', '\126', '\262', '\210', '\174', '\232', '\334',
+ '\113', '\126', '\220', '\006', '\322', '\102', '\102', '\144',
+ '\003', '\111', '\222', '\156', '\322', '\107', '\166', '\223',
+ '\275', '\344', '\031', '\162', '\220', '\034', '\046', '\307',
+ '\310', '\367', '\310', '\017', '\311', '\011', '\362', '\063',
+ '\362', '\056', '\371', '\027', '\362', '\013', '\362', '\033',
+ '\362', '\077', '\244', '\160', '\074', '\337', '\277', '\110',
+ '\304', '\150', '\013', '\145', '\242', '\351', '\160', '\107',
+ '\050', '\211', '\114', '\334', '\134', '\260', '\250', '\146',
+ '\061', '\122', '\035', '\241', '\210', '\141', '\235', '\055',
+ '\254', '\272', '\313', '\071', '\326', '\070', '\307', '\132',
+ '\347', '\030', '\240', '\144', '\173', '\322', '\060', '\320',
+ '\031', '\315', '\244', '\142', '\146', '\074', '\223', '\262',
+ '\157', '\054', '\130', '\350', '\144', '\270', '\037', '\115',
+ '\313', '\253', '\026', '\126', '\061', '\210', '\304', '\035',
+ '\062', '\121', '\055', '\023', '\013', '\144', '\142', '\221',
+ '\225', '\020', '\102', '\167', '\334', '\037', '\160', '\216',
+ '\102', '\330', '\312', '\051', '\157', '\324', '\070', '\307',
+ '\132', '\041', '\261', '\104', '\212', '\336', '\045', '\023',
+ '\167', '\312', '\304', '\142', '\047', '\121', '\155', '\327',
+ '\023', '\065', '\122', '\051', '\343', '\221', '\114', '\050',
+ '\012', '\266', '\065', '\224', '\066', '\222', '\366', '\111',
+ '\247', '\211', '\170', '\042', '\155', '\247', '\123', '\274',
+ '\032', '\065', '\343', '\355', '\350', '\064', '\222', '\146',
+ '\042', '\022', '\066', '\342', '\042', '\133', '\004', '\251',
+ '\316', '\120', '\330', '\200', '\321', '\025', '\216', '\206',
+ '\142', '\170', '\044', '\303', '\354', '\221', '\365', '\121',
+ '\304', '\063', '\261', '\365', '\106', '\062', '\145', '\266',
+ '\307', '\021', '\111', '\104', '\243', '\064', '\032', '\305',
+ '\204', '\014', '\102', '\061', '\246', '\122', '\241', '\170',
+ '\304', '\316', '\234', '\142', '\221', '\121', '\132', '\047',
+ '\224', '\064', '\342', '\121', '\243', '\055', '\155', '\247',
+ '\222', '\146', '\173', '\007', '\263', '\212', '\072', '\315',
+ '\324', '\006', '\313', '\166', '\010', '\047', '\142', '\261',
+ '\020', '\072', '\272', '\073', '\073', '\214', '\270', '\323',
+ '\010', '\244', '\242', '\241', '\124', '\007', '\036', '\063',
+ '\222', '\011', '\044', '\342', '\006', '\322', '\217', '\046',
+ '\220', '\356', '\020', '\326', '\156', '\113', '\144', '\222',
+ '\150', '\063', '\067', '\032', '\110', '\231', '\135', '\110',
+ '\031', '\033', '\051', '\143', '\130', '\205', '\306', '\115',
+ '\146', '\014', '\047', '\242', '\211', '\070', '\057', '\307',
+ '\114', '\073', '\045', '\364', '\307', '\060', '\003', '\260',
+ '\165', '\106', '\052', '\155', '\362', '\136', '\050', '\075',
+ '\252', '\205', '\350', '\372', '\144', '\050', '\274', '\301',
+ '\110', '\133', '\072', '\255', '\147', '\322', '\156', '\252',
+ '\163', '\125', '\352', '\027', '\066', '\315', '\260', '\231',
+ '\014', '\147', '\142', '\354', '\266', '\010', '\315', '\022',
+ '\116', '\044', '\015', '\266', '\040', '\304', '\166', '\217',
+ '\146', '\361', '\052', '\112', '\067', '\234', '\032', '\223',
+ '\366', '\231', '\122', '\123', '\332', '\214', '\322', '\135',
+ '\325', '\376', '\212', '\044', '\036', '\215', '\303', '\352',
+ '\225', '\154', '\357', '\206', '\063', '\111', '\332', '\077',
+ '\334', '\215', '\156', '\132', '\154', '\175', '\062', '\261',
+ '\301', '\210', '\213', '\262', '\122', '\106', '\330', '\062',
+ '\106', '\304', '\144', '\247', '\247', '\114', '\321', '\033',
+ '\235', '\335', '\166', '\331', '\211', '\144', '\244', '\215',
+ '\206', '\264', '\354', '\332', '\236', '\061', '\243', '\121',
+ '\043', '\226', '\260', '\325', '\216', '\046', '\332', '\315',
+ '\160', '\050', '\112', '\027', '\222', '\335', '\226', '\064',
+ '\332', '\315', '\224', '\355', '\067', '\261', '\120', '\070',
+ '\051', '\012', '\324', '\237', '\016', '\366', '\141', '\052',
+ '\143', '\165', '\157', '\322', '\356', '\313', '\354', '\131',
+ '\050', '\234', '\111', '\033', '\210', '\145', '\204', '\213',
+ '\204', '\150', '\244', '\316', '\016', '\335', '\027', '\303',
+ '\106', '\204', '\365', '\207', '\204', '\057', '\144', '\245',
+ '\330', '\274', '\030', '\325', '\317', '\104', '\207', '\265',
+ '\317', '\151', '\172', '\134', '\364', '\171', '\122', '\164',
+ '\067', '\223', '\035', '\241', '\150', '\233', '\135', '\245',
+ '\163', '\061', '\225', '\165', '\002', '\313', '\120', '\001',
+ '\273', '\143', '\002', '\166', '\073', '\002', '\166', '\307',
+ '\265', '\105', '\215', '\056', '\004', '\154', '\323', '\006',
+ '\262', '\326', '\011', '\044', '\205', '\055', '\003', '\101',
+ '\324', '\310', '\046', '\005', '\155', '\341', '\240', '\055',
+ '\034', '\124', '\204', '\203', '\131', '\251', '\072', '\073',
+ '\117', '\235', '\235', '\247', '\116', '\311', '\123', '\227',
+ '\315', '\023', '\114', '\167', '\240', '\301', '\256', '\256',
+ '\321', '\316', '\336', '\150', '\147', '\157', '\124', '\262',
+ '\067', '\072', '\031', '\262', '\122', '\061', '\016', '\135',
+ '\146', '\147', '\264', '\033', '\215', '\266', '\033', '\266',
+ '\330', '\242', '\055', '\266', '\150', '\213', '\042', '\332',
+ '\222', '\225', '\131', '\147', '\337', '\154', '\356', '\110',
+ '\044', '\343', '\150', '\067', '\222', '\061', '\076', '\263',
+ '\353', '\243', '\051', '\204', '\034', '\377', '\264', '\157',
+ '\207', '\024', '\331', '\220', '\135', '\155', '\050', '\133',
+ '\104', '\310', '\062', '\103', '\210', '\317', '\233', '\064',
+ '\203', '\141', '\013', '\033', '\266', '\260', '\241', '\010',
+ '\033', '\131', '\051', '\323', '\316', '\143', '\332', '\171',
+ '\114', '\045', '\217', '\231', '\315', '\143', '\320', '\014',
+ '\161', '\273', '\272', '\204', '\235', '\075', '\141', '\147',
+ '\117', '\050', '\331', '\023', '\116', '\206', '\254', '\124',
+ '\304', '\334', '\150', '\212', '\013', '\266', '\021', '\062',
+ '\266', '\140', '\306', '\026', '\314', '\050', '\202', '\231',
+ '\254', '\104', '\267', '\175', '\063', '\155', '\031', '\241',
+ '\073', '\173', '\371', '\322', '\375', '\156', '\322', '\377',
+ '\002', '\174', '\155', '\142', '\140', '\200', '\114', '\000',
+ '\000',
+
+};
+
+static char name_6x13[] = "-misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-1";
+static char name_cursor[] = "cursor";
+
+const BuiltinFileRec builtin_files[] = {
+ { "6x13.builtin", sizeof file_6x13, file_6x13, },
+ { "cursor.builtin", sizeof file_cursor, file_cursor, }
+};
+
+const int builtin_files_count = sizeof (builtin_files) / sizeof (builtin_files[0]);
+
+const BuiltinDirRec builtin_dir[] = {
+ { "6x13.builtin", name_6x13, },
+ { "cursor.builtin", name_cursor, }
+};
+
+const int builtin_dir_count = sizeof (builtin_dir) / sizeof (builtin_dir[0]);
+
+static char alias_fixed[] = "fixed";
+static char alias_6x13[] = "6x13";
+static char alias_6x13_100[] = "-misc-fixed-medium-r-semicondensed--13-100-100-100-c-60-iso8859-1";
+
+const BuiltinAliasRec builtin_alias[] = {
+ { alias_fixed, name_6x13, },
+ { alias_6x13, name_6x13, },
+ { alias_6x13_100, name_6x13, }
+};
+
+const int builtin_alias_count = sizeof (builtin_alias) / sizeof (builtin_alias[0]);
diff --git a/libXfont/src/builtins/fpe.c b/libXfont/src/builtins/fpe.c
new file mode 100644
index 000000000..5fce45ba7
--- /dev/null
+++ b/libXfont/src/builtins/fpe.c
@@ -0,0 +1,95 @@
+/* $XdotOrg: $ */
+/*
+ * Id: fpe.c,v 1.2 1999/11/02 06:16:48 keithp Exp $
+ *
+ * Copyright 1999 SuSE, Inc.
+ *
+ * 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, and that the name of SuSE not be used in advertising or
+ * publicity pertaining to distribution of the software without specific,
+ * written prior permission. SuSE makes no representations about the
+ * suitability of this software for any purpose. It is provided "as is"
+ * without express or implied warranty.
+ *
+ * SuSE DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL SuSE
+ * 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.
+ *
+ * Author: Keith Packard, SuSE, Inc.
+ */
+/* $XFree86: xc/lib/font/builtins/fpe.c,v 1.3 1999/12/30 02:29:51 robin Exp $ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+#include <X11/fonts/fntfilst.h>
+#include "builtin.h"
+
+static int font_file_type;
+
+static const char builtin_fonts[] = "built-ins";
+
+static int
+BuiltinNameCheck (char *name)
+{
+ return (strcmp (name, builtin_fonts) == 0);
+}
+
+static int
+BuiltinInitFPE (FontPathElementPtr fpe)
+{
+ int status;
+ FontDirectoryPtr dir;
+
+ status = BuiltinReadDirectory (fpe->name, &dir);
+
+ if (status == Successful)
+ fpe->private = (pointer) dir;
+ return status;
+}
+
+/* ARGSUSED */
+static int
+BuiltinResetFPE (FontPathElementPtr fpe)
+{
+ FontDirectoryPtr dir;
+
+ dir = (FontDirectoryPtr) fpe->private;
+ /* builtins can't change! */
+ return Successful;
+}
+
+static int
+BuiltinFreeFPE (FontPathElementPtr fpe)
+{
+ FontFileFreeDir ((FontDirectoryPtr) fpe->private);
+ return Successful;
+}
+
+void
+BuiltinRegisterFpeFunctions(void)
+{
+ BuiltinRegisterFontFileFunctions ();
+
+ font_file_type = RegisterFPEFunctions(BuiltinNameCheck,
+ BuiltinInitFPE,
+ BuiltinFreeFPE,
+ BuiltinResetFPE,
+ FontFileOpenFont,
+ FontFileCloseFont,
+ FontFileListFonts,
+ FontFileStartListFontsWithInfo,
+ FontFileListNextFontWithInfo,
+ (WakeupFpeFunc) 0,
+ (ClientDiedFunc) 0,
+ (LoadGlyphsFunc) 0,
+ (StartLaFunc) 0,
+ (NextLaFunc) 0,
+ (SetPathFunc) 0);
+}
diff --git a/libXfont/src/builtins/render.c b/libXfont/src/builtins/render.c
new file mode 100644
index 000000000..871665f89
--- /dev/null
+++ b/libXfont/src/builtins/render.c
@@ -0,0 +1,136 @@
+/* $XdotOrg: $ */
+/*
+ * Id: render.c,v 1.2 1999/11/02 06:16:48 keithp Exp $
+ *
+ * Copyright 1999 SuSE, Inc.
+ *
+ * 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, and that the name of SuSE not be used in advertising or
+ * publicity pertaining to distribution of the software without specific,
+ * written prior permission. SuSE makes no representations about the
+ * suitability of this software for any purpose. It is provided "as is"
+ * without express or implied warranty.
+ *
+ * SuSE DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL SuSE
+ * 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.
+ *
+ * Author: Keith Packard, SuSE, Inc.
+ */
+/* $XFree86: xc/lib/font/builtins/render.c,v 1.3 1999/12/30 02:29:51 robin Exp $ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+#include <X11/fonts/fntfilst.h>
+#include <X11/fonts/fontutil.h>
+#include <X11/fonts/pcf.h>
+#include "builtin.h"
+
+static int
+BuiltinOpenBitmap (FontPathElementPtr fpe, FontPtr *ppFont, int flags,
+ FontEntryPtr entry, char *fileName, fsBitmapFormat format,
+ fsBitmapFormatMask fmask, FontPtr unused)
+{
+ FontFilePtr file;
+ FontPtr pFont;
+ int ret;
+ int bit,
+ byte,
+ glyph,
+ scan,
+ image;
+
+ file = BuiltinFileOpen (fileName);
+ if (!file)
+ return BadFontName;
+ pFont = (FontPtr) xalloc(sizeof(FontRec));
+ if (!pFont) {
+ BuiltinFileClose (file, 0);
+ return AllocError;
+ }
+ /* set up default values */
+ FontDefaultFormat(&bit, &byte, &glyph, &scan);
+ /* get any changes made from above */
+ ret = CheckFSFormat(format, fmask, &bit, &byte, &scan, &glyph, &image);
+
+ /* Fill in font record. Data format filled in by reader. */
+ pFont->refcnt = 0;
+ pFont->maxPrivate = -1;
+ pFont->devPrivates = (pointer *) 0;
+
+ ret = pcfReadFont (pFont, file, bit, byte, glyph, scan);
+
+ BuiltinFileClose (file, 0);
+ if (ret != Successful)
+ xfree(pFont);
+ else
+ *ppFont = pFont;
+ return ret;
+}
+
+static int
+BuiltinGetInfoBitmap (FontPathElementPtr fpe, FontInfoPtr pFontInfo,
+ FontEntryPtr entry, char *fileName)
+{
+ FontFilePtr file;
+ int ret;
+
+ file = BuiltinFileOpen (fileName);
+ if (!file)
+ return BadFontName;
+ ret = pcfReadFontInfo (pFontInfo, file);
+ BuiltinFileClose (file, 0);
+ return ret;
+}
+
+static int
+BuiltinOpenScalable (FontPathElementPtr fpe,
+ FontPtr *pFont,
+ int flags,
+ FontEntryPtr entry,
+ char *fileName,
+ FontScalablePtr vals,
+ fsBitmapFormat format,
+ fsBitmapFormatMask fmask,
+ FontPtr non_cachable_font) /* We don't do licensing */
+{
+ return BadFontName;
+}
+
+static int
+BuiltinGetInfoScalable (FontPathElementPtr fpe,
+ FontInfoPtr pFontInfo,
+ FontEntryPtr entry,
+ FontNamePtr fontName,
+ char *fileName,
+ FontScalablePtr vals)
+{
+ return BadFontName;
+}
+
+static FontRendererRec renderers[] = {
+ { ".builtin", 8,
+ BuiltinOpenBitmap,
+ BuiltinOpenScalable,
+ BuiltinGetInfoBitmap,
+ BuiltinGetInfoScalable,
+ 0 }
+};
+
+#define numRenderers (sizeof renderers / sizeof renderers[0])
+
+void
+BuiltinRegisterFontFileFunctions(void)
+{
+ int i;
+ for (i = 0; i < numRenderers; i++)
+ FontFileRegisterRenderer ((FontRendererRec *) &renderers[i]);
+}
+